Skip to content

Commit a61d2fa

Browse files
committed
Merge branch 'develop' of https://github.com/oracle/weblogic-kubernetes-operator into pmackin-OWLS-71966
2 parents 1c0c39b + a9b271a commit a61d2fa

File tree

442 files changed

+15858
-12488
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

442 files changed

+15858
-12488
lines changed

build-tools/pom.xml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<project>
2-
<modelVersion>4.0.0</modelVersion>
3-
<groupId>oracle.kubernetes</groupId>
4-
<artifactId>build-tools</artifactId>
5-
<version>1.0</version>
6-
<name>Build Tools</name>
2+
<modelVersion>4.0.0</modelVersion>
3+
<groupId>oracle.kubernetes</groupId>
4+
<artifactId>build-tools</artifactId>
5+
<version>1.0</version>
6+
<name>Build Tools</name>
77
</project>

buildtime-reports/pom.xml

Lines changed: 3 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<project xmlns="http://maven.apache.org/POM/4.0.0"
3-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2+
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xmlns="http://maven.apache.org/POM/4.0.0"
44
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
55
<modelVersion>4.0.0</modelVersion>
66

@@ -19,26 +19,6 @@
1919
<plugin>
2020
<groupId>org.apache.maven.plugins</groupId>
2121
<artifactId>maven-enforcer-plugin</artifactId>
22-
<version>${maven-enforcer-plugin-version}</version>
23-
<executions>
24-
<execution>
25-
<id>enforce-maven</id>
26-
<goals>
27-
<goal>enforce</goal>
28-
</goals>
29-
<configuration>
30-
<rules>
31-
<requireMavenVersion>
32-
<version>${maven.version.range}</version>
33-
</requireMavenVersion>
34-
<requireJavaVersion>
35-
<version>${java.version.range}</version>
36-
</requireJavaVersion>
37-
<requirePluginVersions></requirePluginVersions>
38-
</rules>
39-
</configuration>
40-
</execution>
41-
</executions>
4222
</plugin>
4323
</plugins>
4424
</build>
@@ -48,7 +28,7 @@
4828
<id>reports</id>
4929
<activation>
5030
<property>
51-
<name>!no-reports</name>
31+
<name>!no-reports</name>
5232
</property>
5333
</activation>
5434
<build>

docs-source/content/developerguide/building.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,7 @@ $ mvn clean install
1616

1717
This will compile the source files, build JAR files containing the compiled classes and libraries needed to run the operator, and will also execute all of the unit tests.
1818

19-
Contributions must conform to [coding and formatting standards]({{< relref "/developerguide/coding-standards.md" >}}). To automatically update local code to conform to formatting standards, issue the following command:
20-
21-
```
22-
$ mvn fmt:format
23-
```
19+
Contributions must conform to [coding and formatting standards]({{< relref "/developerguide/coding-standards.md" >}}).
2420

2521
#### Building Javadoc
2622

docs-source/content/quickstart/get-images.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ and accept the license agreement for the [WebLogic Server image](https://hub.doc
1919
1. Pull the operator image:
2020

2121
```bash
22-
$ docker pull oracle/weblogic-kubernetes-operator:2.2.0
22+
$ docker pull oracle/weblogic-kubernetes-operator:2.2.1
2323
```
2424

2525
1. Pull the Traefik load balancer image:

docs-source/content/quickstart/install.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ $ helm install stable/traefik \
5757
$ helm install kubernetes/charts/weblogic-operator \
5858
--name sample-weblogic-operator \
5959
--namespace sample-weblogic-operator-ns \
60-
--set image=oracle/weblogic-kubernetes-operator:2.2.0 \
60+
--set image=oracle/weblogic-kubernetes-operator:2.2.1 \
6161
--set serviceAccount=sample-weblogic-operator-sa \
6262
--set "domainNamespaces={}" \
6363
--wait

docs-source/content/userguide/introduction/architecture.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ The operator is packaged in a [Docker image](https://hub.docker.com/r/oracle/web
1818

1919
```
2020
$ docker login
21-
$ docker pull oracle/weblogic-kubernetes-operator:2.2.0
21+
$ docker pull oracle/weblogic-kubernetes-operator:2.2.1
2222
```
2323

2424
For more details on acquiring the operator image and prerequisites for installing the operator, consult the [Quick Start guide]({{< relref "/quickstart/_index.md" >}}).

docs-source/content/userguide/managing-domains/configoverrides/_index.md

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -336,7 +336,12 @@ spec:
336336
---
337337
### Debugging
338338
339-
Incorrectly formatted override files may be accepted without warnings or errors and will not prevent WebLogic pods from booting. So, it is important to make sure that the template files are correct in a QA environment, otherwise your WebLogic Servers may start even though critically required overrides are failing to take effect.
339+
Incorrectly formatted override files may be accepted without warnings or errors and may not prevent WebLogic pods from booting. So, it is important to make sure that the template files are correct in a QA environment, otherwise your WebLogic Servers may start even though critically required overrides are failing to take effect.
340+
341+
On WebLogic Servers that support the `weblogic.SituationalConfig.failBootOnError` system property ( Note: It is not supported in WebLogic Server 12.2.1.3.0 ),
342+
by default the WebLogic server will fail to boot if any situational configuration files are invalid,
343+
or if it encounters an error while loading situational configuration files.
344+
By setting the `FAIL_BOOT_ON_SITUATIONAL_CONFIG_ERROR` environment variable in the Kubernetes containers for the WebLogic Servers to `false`, you can start up the WebLogic Servers even with incorrectly formatted override files.
340345
341346
* Make sure you've followed each step in the [Step-by-step guide](#step-by-step-guide).
342347
@@ -363,9 +368,17 @@ Incorrectly formatted override files may be accepted without warnings or errors
363368
...
364369
```
365370
* Look in your `DOMAIN_HOME/optconfig` directory.
366-
* This directory, or a subdirectory within this directory, should contain each of your custom situational configuration files.
367-
* If it doesn't, then this likely indicates your domain resource `configOverrides` was not set to match your custom override configuration map name, or that your custom override configuration map does not contain your override files.
368-
371+
* This directory, or a subdirectory within this directory, should contain each of your custom situational configuration files.
372+
* If it doesn't, then this likely indicates your domain resource `configOverrides` was not set to match your custom override configuration map name, or that your custom override configuration map does not contain your override files.
373+
374+
* If the Administration Server pod does start but fails to reach ready state or tries to restart:
375+
* Check for this message ` WebLogic server failed to start due to missing or invalid situational configuration files` in the Administration Server pod's `kubectl log`
376+
* This suggests that the Administration Server failure to start may have been caused by errors found in a configuration override file.
377+
* Lines containing the String `situational` may be found in the Administration Server pod log to provide more hints.
378+
* For example:
379+
* `<Jun 20, 2019 3:48:45 AM GMT> <Warning> <Management> <BEA-141323> <The situational config file has an invalid format, it is being ignored: XMLSituationalConfigFile[/shared/domains/domain1/optconfig/jdbc/testDS-0527-jdbc-situational-config.xml] because org.xml.sax.SAXParseException; lineNumber: 8; columnNumber: 3; The element type "jdbc:jdbc-driver-params" must be terminated by the matching end-tag "</jdbc:jdbc-driver-params>".`
380+
* The warning message suggests a syntax error is found in the provided configuration override file for the testDS JDBC datasource.
381+
369382
* If you'd like to verify that the situational configuration is taking effect in the WebLogic MBean tree, then one way to do this is to compare the `server config` and `domain config` MBean tree values.
370383
* The `domain config` value should reflect the original value in your domain home configuration.
371384
* The `server config` value should reflect the overridden value.

docs-source/content/userguide/managing-domains/domain-lifecycle/restarting.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ d. Update the `image` property of the domain resource specifying the new image n
161161
```
162162
domain:
163163
spec:
164-
image: oracle/weblogic-updated:2.2
164+
image: oracle/weblogic-updated:2.2.1
165165
```
166166
e. The operator will now initiate a rolling restart, which will apply the updated image, for all the server pods in the domain.
167167

docs-source/content/userguide/managing-domains/domain-resource.md

Lines changed: 66 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@ pre = "<b> </b>"
88

99

1010

11-
Use this document to set up and configure your own [domain resource](https://github.com/oracle/weblogic-kubernetes-operator/blob/master/docs/domains/Domain.md) which can be used to configure your WLS domain. Then, you can use the domain resource to start the Kubernetes artifacts of the corresponding domain.
11+
Use this document to set up and configure your own [domain resource](https://github.com/oracle/weblogic-kubernetes-operator/blob/master/docs/domains/Domain.md) which can be used to configure the operation of your WebLogic domain. The domain resource does not replace the traditional configuration of WebLogic domains found in the domain configuration files, but instead cooperates with those files to describe the Kubernetes artifacts of the corresponding domain. For instance, the WebLogic domain configuration will still specify deployed applications, data sources, and most other details about the domain while the domain resource will specify the number of cluster members currently running or the persistent volumes that will be mounted into the containers running WebLogic Server instances.
12+
13+
Many of the samples accompanying the operator project include scripts to generate an initial domain resource from a set of simplified inputs; however, the domain resource is the actual source of truth for how the WebLogic operator will manage each WebLogic domain. You are encouraged to either start with the domain resource YAML files generated by the various samples or create domain resources manually or by using other tools based on the schema referenced here or this documentation.
1214

1315
Swagger documentation is available [here](https://oracle.github.io/weblogic-kubernetes-operator/swagger/index.html).
1416

@@ -41,3 +43,66 @@ To confirm that the domain resource was created, use this command:
4143
```
4244
$ kubectl describe domain [domain name] -n [namespace]
4345
```
46+
47+
#### Domain resource overview
48+
49+
The domain resource, like all [Kubernetes objects](https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/), is described by three sections: `metadata`, `spec`, and `status`.
50+
51+
The `metadata` section names the domain resource and its namespace. The name of the domain resource is the default value for the "domain UID" which is used by the operator to distinguish domains running in the Kubernetes cluster that may have the same domain name. The domain resource name is required to be unique in the namespace and the domain UID should be unique across the cluster. The domain UID, domain resource name, and domain name (from the WebLogic domain configuration) may all be different.
52+
53+
The `spec` section describes the intended running state of the domain, including intended runtime state of server instances, number of cluster members started, and details about Kubernetes pod or service generation, such as resource constraints, scheduling requirements, or volume mounts.
54+
55+
The `status` section is updated by the operator and describes the actual running state of the domain, including WebLogic Server instance runtime states and current health.
56+
57+
#### Domain resource spec elements
58+
59+
The domain resource `spec` section contains elements for configuring the domain operation and sub-sections specific to the Administration Server, specific clusters or specific Managed Servers.
60+
61+
Elements related to domain identification, Docker image, and domain home:
62+
* `domainUID`: The domain unique identifier. Must be unique across the Kubernetes cluster. Not required. Defaults to the value of `metadata.name`.
63+
* `image`: The WebLogic Docker image. Required when `domainHomeInImage` is true; otherwise, defaults to "container-registry.oracle.com/middleware/weblogic:12.2.1.3".
64+
* `imagePullPolicy`: The image pull policy for the WebLogic Docker image. Legal values are `Always`, `Never` and `IfNotPresent`. Defaults to `Always` if image ends in ":latest", `IfNotPresent` otherwise.
65+
* `imagePullSecrets`: A list of image pull secrets for the WebLogic Docker image.
66+
* `domainHome`: The folder for the WebLogic Domain. Not required. Defaults to "/shared/domains/domains/domainUID" if `domainHomeInImage` is false. Defaults to "/u01/oracle/user_projects/domains/" if `domainHomeInImage` is true.
67+
* `domainHomeInImage`: True if this domain's home is defined in the Docker image for the domain. Defaults to true.
68+
69+
Elements related to logging:
70+
* `includeServerOutInPodLog`: If true (the default), the server ".out" file will be included in the pod's stdout.
71+
* `logHome`: The in-pod name of the directory in which to store the domain, Node Manager, server logs, and server ".out" files.
72+
* `logHomeEnabled`: Specifies whether the log home folder is enabled. Not required. Defaults to true if `domainHomeInImage` is false. Defaults to false if `domainHomeInImage` is true.
73+
74+
Elements related to security:
75+
* `webLogicCredentialsSecret`: The name of a pre-created Kubernetes secret, in the domain resource's namespace, that holds the user name and password needed to boot WebLogic Server under the 'username' and 'password' fields.
76+
77+
Elements related to domain [startup and shutdown](domain-lifecycle/startup.md):
78+
* `serverStartPolicy`: The strategy for deciding whether to start a server. Legal values are `ADMIN_ONLY`, `NEVER`, or `IF_NEEDED`.
79+
* `serverStartState`: The state in which the server is to be started. Use `ADMIN` if server should start in the admin state. Defaults to `RUNNING`.
80+
* `restartVersion`: If present, every time this value is updated, the operator will restart the required servers.
81+
* `replicas`: The number of Managed Servers to run in any cluster that does not specify a `replicas` count.
82+
83+
Elements related to overriding WebLogic domain configuration:
84+
* `configOverrides`: The name of the config map for optional WebLogic configuration overrides.
85+
* `configOverrideSecrets`: A list of names of the secrets for optional WebLogic configuration overrides.
86+
87+
Elements related to Kubernetes pod and service generation:
88+
* `serverPod`: Configuration affecting server pods.
89+
* `serverService`: Customization affecting ClusterIP Kubernetes services for WebLogic Server instances.
90+
91+
Sub-sections related to the Administration Server, specific clusters or specific Managed Servers:
92+
* `adminServer`: Configuration for the Administration Server.
93+
* `clusters`: Configuration for specific clusters.
94+
* `managedServers`: Configuration for specific Managed Servers.
95+
96+
The elements `serverStartPolicy`, `serverStartState`, `serverPod` and `serverService` are repeated under `adminServer` and under each entry of `clusters` or `managedServers`. The values directly under `spec` set the defaults for the entire domain. The values under a specific entry under `clusters` set the defaults for cluster members of that cluster. The values under `adminServer` or an entry under `managedServers` set the values for that specific server. Values from the domain scope and values from the cluster (for cluster members) are merged with or overridden by the setting for the specific server depending on the element. See the [startup and shutdown](domain-lifecycle/startup.md) documentation for details about `serverStartPolicy` combination.
97+
98+
### Pod generation
99+
100+
The operator creates a pod for each running WebLogic Server instance. This pod will have a container based on the Docker image specified by the `image` field. Additional pod or container content can be specified using the elements under `serverPod`. This includes Kubernetes labels and annotations, additional volumes on the pod or volume mounts on the container, [resource requirements](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/) or [security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/).
101+
102+
Prior to creating a pod, the operator replaces variable references allowing the pod content to be templates. The format of these variable references is `$(VARIABLE_NAME)` where *VARIABLE_NAME* is one of the variable names available in the container for the WebLogic Server instance. The default set of environment variables includes:
103+
* DOMAIN_NAME: The WebLogic domain name
104+
* DOMAIN_UID: The domain unique identifier
105+
* DOMAIN_HOME: The domain home location as a file system path within the container
106+
* SERVER_NAME: The WebLogic Server name
107+
* CLUSTER_NAME: The WebLogic cluster name, if this is a cluster member
108+
* LOG_HOME: The WebLogic log location as a file system path within the container

docs-source/content/userguide/managing-operators/using-the-operator/using-helm.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ javaLoggingLevel: "FINE"
101101

102102
Specifies the Docker image containing the operator code.
103103

104-
Defaults to `weblogic-kubernetes-operator:2.2.0`.
104+
Defaults to `weblogic-kubernetes-operator:2.2.1`.
105105

106106
Example:
107107
```
@@ -119,7 +119,7 @@ image: "Always"
119119
```
120120

121121
##### `imagePullSecrets`
122-
Contains an optional list of Kubernetes secrets, in the operator's namepace, that are needed to access the registry containing the operator Docker image. You are responsible for creating the secret. If no secrets are required, then omit this property.
122+
Contains an optional list of Kubernetes secrets, in the operator's namespace, that are needed to access the registry containing the operator Docker image. You are responsible for creating the secret. If no secrets are required, then omit this property.
123123

124124
Example:
125125
```

0 commit comments

Comments
 (0)