Skip to content

Commit

Permalink
Operator 3.2.3
Browse files Browse the repository at this point in the history
  • Loading branch information
rjeberhard committed May 21, 2021
1 parent a087e79 commit f37c709
Show file tree
Hide file tree
Showing 53 changed files with 981 additions and 196 deletions.
2 changes: 1 addition & 1 deletion documentation/3.2/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Oracle WebLogic Server Kubernetes Operator Documentation
# WebLogic Kubernetes Operator Documentation

***
For information on updating and contributing to the operator
Expand Down
10 changes: 5 additions & 5 deletions documentation/3.2/content/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
### Oracle WebLogic Server Kubernetes Operator
### WebLogic Kubernetes Operator

The WebLogic Server Kubernetes Operator (the “operator”) supports running your WebLogic Server and Fusion Middleware Infrastructure domains on Kubernetes, an industry standard, cloud neutral deployment platform. It lets you encapsulate your entire WebLogic Server installation and layered applications into a portable set of cloud neutral images and simple resource description files. You can run them on any on-premises or public cloud that supports Kubernetes where you've deployed the operator.
The WebLogic Kubernetes Operator (the “operator”) supports running your WebLogic Server and Fusion Middleware Infrastructure domains on Kubernetes, an industry standard, cloud neutral deployment platform. It lets you encapsulate your entire WebLogic Server installation and layered applications into a portable set of cloud neutral images and simple resource description files. You can run them on any on-premises or public cloud that supports Kubernetes where you've deployed the operator.

Furthermore, the operator is well suited to CI/CD processes. You can easily inject changes when moving between environments, such as from test to production. For example, you can externally inject database URLs and credentials during deployment or you can inject arbitrary changes to most WebLogic configurations.

Expand All @@ -11,7 +11,7 @@ You can:
* Supply WebLogic domain configuration using:
* _Domain in PV_: Locates WebLogic domain homes in a Kubernetes PersistentVolume (PV). This PV can reside in an NFS file system or other Kubernetes volume types.
* _Domain in Image_: Includes a WebLogic domain home in a container image.
* _Model in Image_: Includes [WebLogic Server Deploy Tooling](https://oracle.github.io/weblogic-deploy-tooling/) models and archives in a container image.
* _Model in Image_: Includes [WebLogic Deploy Tooling](https://oracle.github.io/weblogic-deploy-tooling/) models and archives in a container image.
* Configure deployment of WebLogic domains as a Kubernetes resource (using a Kubernetes custom resource definition).
* Override certain aspects of the WebLogic domain configuration; for example, use a different database password for different deployments.
* Start and stop servers and clusters in the domain based on declarative startup parameters and desired states.
Expand All @@ -30,8 +30,8 @@ using the operator to deploy and run a WebLogic domain container-packaged web ap
***
#### Current production release

The [current release of the operator](https://github.com/oracle/weblogic-kubernetes-operator/releases) is 3.2.2.
This release was published on April 27, 2021. See the operator prerequisites and supported environments [here]({{< relref "/userguide/introduction/introduction#operator-prerequisites" >}}).
The [current release of the operator](https://github.com/oracle/weblogic-kubernetes-operator/releases) is 3.2.3.
This release was published on May 21, 2021. See the operator prerequisites and supported environments [here]({{< relref "/userguide/introduction/introduction#operator-prerequisites" >}}).

***

Expand Down
2 changes: 1 addition & 1 deletion documentation/3.2/content/developerguide/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ If you want to submit a pull request to fix a bug or enhance an existing feature

If you have any questions about a possible submission, feel free to open an issue too.

#### Contributing to the Oracle WebLogic Server Kubernetes Operator repository
#### Contributing to the WebLogic Kubernetes Operator repository

Pull requests can be made under The Oracle Contributor Agreement (OCA), which is available at [https://www.oracle.com/technetwork/community/oca-486395.html](https://www.oracle.com/technetwork/community/oca-486395.html).

Expand Down
3 changes: 1 addition & 2 deletions documentation/3.2/content/faq/namespace-management.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,10 +45,9 @@ elkIntegrationEnabled: false
externalDebugHttpPort: 30999
externalRestEnabled: false
externalRestHttpsPort: 31001
image: ghcr.io/oracle/weblogic-kubernetes-operator:3.2.2
image: ghcr.io/oracle/weblogic-kubernetes-operator:3.2.3
imagePullPolicy: IfNotPresent
internalDebugHttpPort: 30999
istioEnabled: false
javaLoggingLevel: INFO
logStashImage: logstash:6.6.0
remoteDebugNodePortEnabled: false
Expand Down
10 changes: 5 additions & 5 deletions documentation/3.2/content/faq/newbie.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ draft: false
weight: 1
description: "Answers to commonly asked newcomer questions."
---
#### What is the WebLogic Server Kubernetes Operator, how can I get started with it, where is its documentation?
#### What is the WebLogic Kubernetes Operator, how can I get started with it, where is its documentation?

It's all [here]({{< relref "/_index.md" >}}).

#### How much does it cost?

The WebLogic Server Kubernetes Operator (the “operator”) is open source and free.
The WebLogic Kubernetes Operator (the “operator”) is open source and free.

WebLogic Server is not open source. Licensing is required for each running WebLogic Server instance, just as with any deployment of WebLogic Server. Licensing is free for a single developer desktop development environment.

Expand All @@ -36,7 +36,7 @@ When using the operator, each deployed domain is specified by a domain resource

Multiple deployments of the same domain are supported by specifying a unique `domain-uid` string for each deployed domain and specifying a different domain resource. The `domain-uid` is in turn used by the operator as the name-prefix and/or label for the domain's Kubernetes resources that the operator deploys for you. The WebLogic configuration of a domain's deployments optionally can by customized by specifying configuration overrides in the domain resource -- which, for example, is useful for overriding the configuration of a data source URL, user name, or password.

The operator does not specify how a WebLogic domain home configuration is created. You can use WLST, REST, or a very convenient new tool called [WebLogic Server Deploy Tooling](https://oracle.github.io/weblogic-deploy-tooling/) (WDT). WDT allows you to compactly specify WebLogic configuration and deployments (including JMS, data sources, applications, authenticators, and such) using a YAML file and a ZIP file (which include the binaries). The operator [samples]({{< relref "/samples/simple/_index.md" >}}) show how to create domains using WLST and using WDT.
The operator does not specify how a WebLogic domain home configuration is created. You can use WLST, REST, or a very convenient new tool called [WebLogic Deploy Tooling](https://oracle.github.io/weblogic-deploy-tooling/) (WDT). WDT allows you to compactly specify WebLogic configuration and deployments (including JMS, data sources, applications, authenticators, and such) using a YAML file and a ZIP file (which include the binaries). The operator [samples]({{< relref "/samples/simple/_index.md" >}}) show how to create domains using WLST and using WDT.


**Q:** Is the Administration Server required? Node Manager?
Expand All @@ -62,7 +62,7 @@ For an example, see the Quick Start, [Install the operator and ingress controlle

* _Access the WebLogic Server Administration Console_: This can be done through a load balancer; see the [Model in Image]({{< relref "/samples/simple/domains/model-in-image/_index.md" >}}) sample. Or, this can be done through a Kubernetes NodePort service; run `$ kubectl explain domain.spec.adminServer.adminService.channels`.

* _Access the WebLogic Server Remote Console_: This can be done using a load balancer or Kubernetes NodePort service; see [Use the Remote Console]({{< relref "/userguide/managing-domains/accessing-the-domain/admin-console.md" >}}).
* _Access the WebLogic Remote Console_: This can be done using a load balancer or Kubernetes NodePort service; see [Use the Remote Console]({{< relref "/userguide/managing-domains/accessing-the-domain/admin-console.md" >}}).


**Q:** Are clusters supported on Kubernetes using both multicast and unicast?
Expand Down Expand Up @@ -114,7 +114,7 @@ For more information, see the [Domain life cycle]({{< relref "/userguide/managin

**Q:** Patching: rolling upgrades, handling of one-off-patches and overlays, CPUs, and such.

**A:** For relevant information, see [Apply patched images to a running domain]({{< relref "/userguide/base-images/#apply-patched-images-to-a-running-domain" >}}), [Rolling restarts]({{< relref "/userguide/managing-domains/domain-lifecycle/restarting#overview" >}}), and [CI/CD considerations]({{< relref "/userguide/cicd/_index.md" >}}).
**A:** For relevant information, see [Patch WebLogic Server images]({{< relref "/userguide/base-images/#patch-weblogic-server-images" >}}), [Rolling restarts]({{< relref "/userguide/managing-domains/domain-lifecycle/restarting#overview" >}}), and [CI/CD considerations]({{< relref "/userguide/cicd/_index.md" >}}).

***

Expand Down
2 changes: 1 addition & 1 deletion documentation/3.2/content/faq/node-heating.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ weight: 5
description: "The operator creates a Pod for each WebLogic Server instance that is started. The Kubernetes Scheduler then selects a Node for each Pod. Because the default scheduling algorithm gives substantial weight to selecting a Node where the necessary container images have already been pulled, this often results in Kubernetes running many of the Pods for WebLogic Server instances on the same Node while other Nodes are not fairly utilized. This is commonly known as the Node heating problem."
---

The WebLogic Server Kubernetes Operator creates a Pod for each WebLogic Server instance that is started. The [Kubernetes Scheduler](https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/) then selects a Node for each Pod. Because the default scheduling algorithm gives substantial weight to selecting a Node where the necessary container images have already been pulled, this often results in Kubernetes running many of the Pods for WebLogic Server instances on the same Node while other Nodes are not fairly utilized. This is commonly known as the "Node heating problem."
The WebLogic Kubernetes Operator creates a Pod for each WebLogic Server instance that is started. The [Kubernetes Scheduler](https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/) then selects a Node for each Pod. Because the default scheduling algorithm gives substantial weight to selecting a Node where the necessary container images have already been pulled, this often results in Kubernetes running many of the Pods for WebLogic Server instances on the same Node while other Nodes are not fairly utilized. This is commonly known as the "Node heating problem."

One solution is to ensure that all necessary container images are available on worker Nodes as part of node provisioning. When the necessary container images are available on each worker Node, the Kubernetes Scheduler will instead select a Node based on other factors such as available CPU and memory or a simple round-robin.

Expand Down
2 changes: 2 additions & 0 deletions documentation/3.2/content/faq/samplepage.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,5 @@ proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
### And also this

{{< youtube B5UmY2xAJnk >}}

## Update to draft page to trigger publish job, take 5
17 changes: 17 additions & 0 deletions documentation/3.2/content/quickstart/cleanup.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,3 +73,20 @@ weight: 7
```shell
$ kubectl delete namespace traefik
```

#### Delete the generated image.

1. When no longer needed, delete the generated image by using the `docker rmi` command.
Use the following command to delete an image tagged with `domain-home-in-image:12.2.1.4`:

```shell
$ docker rmi domain-home-in-image:12.2.1.4
```

#### Delete the tools directory.

1. When no longer needed, delete the directory where WebLogic Deploy Tool and WebLogic Image Tool are installed.

```shell
$ rm -rf /tmp/dhii-sample/tools/
```
12 changes: 11 additions & 1 deletion documentation/3.2/content/quickstart/create-domain.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,14 @@ weight: 6
with the value specified by the `-d` flag. For example, the command above would create a secret named
`sample-domain1-weblogic-credentials`.

1. Create a new image with a domain home by running the [create-domain](http://github.com/oracle/weblogic-kubernetes-operator/blob/main/kubernetes/samples/scripts/create-weblogic-domain/domain-home-in-image/create-domain.sh) script. First, copy the sample [create-domain-inputs.yaml](http://github.com/oracle/weblogic-kubernetes-operator/blob/main/kubernetes/samples/scripts/create-weblogic-domain/domain-home-in-image/create-domain-inputs.yaml) file and update your copy with:
1. Create a new image with a domain home, plus create a domain resource that the operator will use to deploy the image, by running the [create-domain](http://github.com/oracle/weblogic-kubernetes-operator/blob/main/kubernetes/samples/scripts/create-weblogic-domain/domain-home-in-image/create-domain.sh) script.

The script's behavior is controlled by an inputs file plus command-line options. The script downloads the [WebLogic Image Tool](https://oracle.github.io/weblogic-image-tool/) and [WebLogic Deploy Tool](https://oracle.github.io/weblogic-deploy-tooling/) and uses these tools to create a new image with a domain home. The script also creates a domain resource YAML file that references the image, and, if the `-e` option is specified, deploys the domain resource to Kubernetes. For a detailed understanding of the steps that the `create-domain.sh` script performs for you, see the bulleted items under [Use the script to create a domain]({{< relref "/samples/simple/domains/domain-home-in-image/#use-the-script-to-create-a-domain" >}})
{{% notice note %}} The `create-domain.sh` script and its inputs file are for demonstration purposes _only_; its contents and the domain resource file that it generates for you might change without notice. In production, we strongly recommend that you use the WebLogic Image Tool and WebLogic Deploy Tooling (when applicable), and directly work with domain resource files instead.
{{% /notice%}}
First, copy the sample [create-domain-inputs.yaml](http://github.com/oracle/weblogic-kubernetes-operator/blob/main/kubernetes/samples/scripts/create-weblogic-domain/domain-home-in-image/create-domain-inputs.yaml) file and update your copy with:
* `domainUID`: `sample-domain1`
* `image`: Leave empty unless you need to tag the new image that the script builds to a different name.
For example if you are using a remote cluster that will need to pull the image from a container registry,
Expand All @@ -44,6 +51,9 @@ weight: 6
respectively, as you provided when creating the Kubernetes Secret in Step 2.
{{% /notice %}}
For the detailed steps that the `create-domain.sh` script performs, see [Domain Home In Image]({{< relref "/samples/simple/domains/domain-home-in-image/_index.md" >}}).
1. Confirm that the operator started the servers for the domain:
a. Use `kubectl` to show that the Domain was created:
Expand Down
2 changes: 1 addition & 1 deletion documentation/3.2/content/quickstart/get-images.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ weight: 3
1. Pull the operator image:

```shell
$ docker pull ghcr.io/oracle/weblogic-kubernetes-operator:3.2.2
$ docker pull ghcr.io/oracle/weblogic-kubernetes-operator:3.2.3
```

1. Pull the Traefik ingress controller image:
Expand Down
2 changes: 1 addition & 1 deletion documentation/3.2/content/quickstart/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ $ helm install traefik-operator traefik/traefik \
```shell
$ helm install sample-weblogic-operator kubernetes/charts/weblogic-operator \
--namespace sample-weblogic-operator-ns \
--set image=ghcr.io/oracle/weblogic-kubernetes-operator:3.2.2 \
--set image=ghcr.io/oracle/weblogic-kubernetes-operator:3.2.3 \
--set serviceAccount=sample-weblogic-operator-sa \
--set "enableClusterRoleBinding=true" \
--set "domainNamespaceSelectionStrategy=LabelSelector" \
Expand Down
2 changes: 1 addition & 1 deletion documentation/3.2/content/quickstart/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ draft: false
weight: 1
---

Use this Quick Start guide to create a WebLogic Server deployment in a Kubernetes cluster with the Oracle WebLogic Server Kubernetes Operator. Please note that this walk-through is for demonstration purposes only, not for use in production.
Use this Quick Start guide to create a WebLogic Server deployment in a Kubernetes cluster with the WebLogic Kubernetes Operator. Please note that this walk-through is for demonstration purposes only, not for use in production.
These instructions assume that you are already familiar with Kubernetes. If you need more detailed instructions, please
refer to the [User guide]({{< relref "/userguide/_index.md" >}}).

Expand Down
2 changes: 1 addition & 1 deletion documentation/3.2/content/quickstart/prerequisites.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ The operator uses Helm to create and deploy the necessary resources and then run
You should clone this repository to your local machine so that you have access to the
various sample files mentioned throughout this guide:
```shell
$ git clone --branch v3.2.2 https://github.com/oracle/weblogic-kubernetes-operator
$ git clone --branch v3.2.3 https://github.com/oracle/weblogic-kubernetes-operator
```
12 changes: 12 additions & 0 deletions documentation/3.2/content/release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ draft: false

| Date | Version | Introduces backward incompatibilities? | Change |
| --- | --- | --- | --- |
| May 21, 2021 | v3.2.3 | no | Resolved several issues, including an issue related to preserving the operator-generated internal certificate, corrected the monitoring exporter integration to include the Administration Server, enhanced the model-in-image support to not require the use of configuration overrides, and updated the domain-home-in-image samples to support the WebLogic Image Tool. |
| April 27, 2021 | v3.2.2 | no | Resolved a set of issues with many related to reducing the operator's network utilization. |
| April 5, 2021 | v3.2.1 | no | Updated several dependencies, including the Oracle Linux base for the container image. |
| March 31, 2021 | v3.2.0 | no | Online updates for dynamic changes for Model in Image, injection of the WebLogic Monitoring Exporter, other features, and a significant number of additional fixes. |
Expand Down Expand Up @@ -39,6 +40,17 @@ draft: false

### Change log

#### Operator 3.2.3

* Resolved an issue related to preserving the operator-generated internal certificate ([#2374](https://github.com/oracle/weblogic-kubernetes-operator/pull/2374)).
* Corrected the monitoring exporter integration to include the Administration Server ([#2365](https://github.com/oracle/weblogic-kubernetes-operator/pull/2365)).
* Enhanced the model-in-image support to not require the use of configuration overrides ([#2344](https://github.com/oracle/weblogic-kubernetes-operator/pull/2344)).
* Resolved an issue related to model-in-image domains performing a rolling restart when there had been no change to the model ([#2348](https://github.com/oracle/weblogic-kubernetes-operator/pull/2348)).
* Resolved an issue related to RCU schema password updates ([#2357](https://github.com/oracle/weblogic-kubernetes-operator/pull/2357)).
* Resolved an issue related to namespace starting and stopping events ([#2345](https://github.com/oracle/weblogic-kubernetes-operator/pull/2345)).
* Added support for several new events related to rolling restarts ([#2364](https://github.com/oracle/weblogic-kubernetes-operator/pull/2364)).
* Added support for customer-defined labels and annotations on the operator's pod ([#2370](https://github.com/oracle/weblogic-kubernetes-operator/pull/2370)).

#### Operator 3.2.2

* Resolved an issue where the operator would retry Kubernetes API requests that timed out without a backoff causing increased network utilization ([#2300](https://github.com/oracle/weblogic-kubernetes-operator/pull/2300)).
Expand Down
Loading

0 comments on commit f37c709

Please sign in to comment.