Releases: oracle/weblogic-kubernetes-operator
Releases · oracle/weblogic-kubernetes-operator
Operator 4.0.4
- Resolved an issue related to the
logHomeLayoutfield during schema conversion from "v8" to "v9" Domains.- Operator 4.0 introduced the
logHomeLayoutfield to control the organization of WebLogic Server instance log files. - The default value for
logHomeLayoutisByServers; however, the operator 3.4 behavior was consistent with the value ofFlat. - Therefore, schema conversion from "v8" to "v9" Domains now explicitly selects a
logHomeLayoutvalue ofFlat.
- Operator 4.0 introduced the
- Resolved an issue during uninstall where the validating webhook was leaving behind a ValidatingWebhookConfiguration resource. This resource is now deleted.
Operator 4.0.3
- The Helm chart now excludes the operator's webhook from running in an Istio mesh.
- Communication from the operator to WebLogic Server instances or to the WebLogic Monitoring Exporter sidecar use the service name and namespace rather than IP addresses to be more compatible with Istio strict mutual TLS mode.
- Resolved an issue where the
Completedstatus condition would be set to true too early during the scale down of a cluster to 0 replicas. - The Model in Image sample now uses "v9" style auxiliary images.
- The coordination between the periodic listing of Domain and Cluster resources and the processing of watch notifications has been improved to increase operator efficiency.
Operator 4.0.2
- The Helm chart now supports configuring tolerations for the operator's deployment.
- Domain resource schema now supports
.spec.maxClusterUnavailable, which is the default value for the maximum number of cluster members that can be temporarily unavailable, such as during a roll. - Resolved an issue that would prevent Model in Image domains from working correctly when Secured Production Mode is enabled.
- Pods created for WebLogic Server instances that are members of a WebLogic cluster will now include the label
weblogic.clusterObservedGenerationspecifying themetadata.generationof the Cluster resource. This is similar to the already existingweblogic.domainObservedGenerationlabel that specifies the observed generation of the Domain resource. - Schema conversion from "v8" to "v9" Domains now uses shorter name prefixes when converting "v8" style auxiliary images.
- The Helm chart specifies a more compatible
securityContextfor the operator's deployment when thekubernetesPlatformvalue is "OpenShift". - The Node Manager instance running within the Pod created for each WebLogic Server instance now supports additional configuration for how often to restart WebLogic before the Pod's liveness probe fails and the Pod is recreated.
- Samples and utility scripts now support the environment variables
KUBERNETES_CLI, which defaults tokubectl, andWLSIMG_BUILDER, which defaults todocker, to make it easier to use these samples and scripts on platforms that use binaries with different names. - Resolved an issue where a "v8" Domain that used auxiliary images and also configured
logHomecould be converted to a "v9" Domain that was invalid. - Resolved an issue where Domains that had a
.spec.domainUidthat was different from the value of.metadata.namewould not start.
Operator 4.0.1
- Resolved an issue where introspection would fail because the function
wlsVersionEarlierThanwas missing.
Operator 4.0.0
Major Themes
-
Auxiliary Image simplification:
- The usage of Model in Image auxiliary images has been substantially simplified.
- In most cases, customers now need only specify the name of the auxiliary image.
-
New Cluster resource:
- The operator now provides a new custom resource, Cluster, which configures a specific WebLogic cluster and provides status information for that cluster.
- This resource can be used with Kubernetes Horizontal Pod Autoscaling (HPA) or similar technologies to scale WebLogic clusters.
-
Status and Events updates:
- The Conditions and Events generated about Domain and Cluster resources have been significantly updated.
- The operator more clearly communicates when the domain or individual clusters have reached the intended state or significant availability for your application workloads.
- Failures are distinguished between those that require customer intervention and those that are potentially temporary and will be retried.
-
Retry updates:
- The operator handling of retries after a failure have been significantly updated.
- Customers can now tune retry intervals and limits, or disable retries, on a per domain basis.
- The time of the first failure, last retry, and the expected time of the next retry can now be easily inferred from Domain resource
.status.
-
Istio compatibility:
- Domain configurations are always compatible with Istio and other service mesh products.
- Customers are no longer required to enable this support.
Upgrade Notes
-
This release introduces a new API version for the Domain resource,
weblogic.oracle/v9.- The previous API version,
weblogic.oracle/v8introduced with Operator 3.0.0 is deprecated, but is still supported.
- The previous API version,
-
This release also introduces a new custom resource, the
weblogic.oracle/v1Cluster resource.- This Cluster resource configures a specific WebLogic cluster and allows customers to scale that cluster using the Kubernetes Horizontal Pod Autoscaling (HPA) or similar technologies.
- The Cluster resource
.specschema is similar to and replaces the formerweblogic.oracle/v8Domain resource.spec.clusters[*]content. - The Cluster resource
.statusschema mirrors the content of the Domain resource.status.clusters[*]content.
-
This release simplifies upgrading the operator.
- The operator added a schema conversion webhook.
- This webhook automates the upgrade of
weblogic.oracle/v8Domain resources toweblogic.oracle/v9. - Customers do not need to take any action to begin using the latest Domain schema; however, the team recommends starting with "v9" Domain resources for any new projects.
- This webhook automates the upgrade of
- Customers who install a single WebLogic Kubernetes Operator per Kubernetes cluster (most common use case) can upgrade directly from any 3.x operator release to 4.0.0. The Helm chart for 4.0.0 will automatically install the schema conversion webhook.
- For those customers who install more than one WebLogic Kubernetes Operator in a single Kubernetes cluster:
- You must upgrade every operator to at least version 3.4.1 before upgrading any operator to 4.0.0.
- As the 4.0.0 Helm chart now also installs a singleton schema conversion webhook that is shared by all 4.0.0 operators in the cluster, you will want to use the
webhookOnlyHelm chart option to install this webhook in its own namespace prior to installing any of the 4.0.0 operators, and also use thepreserveWebhookHelm chart option with each operator to prevent an operator uninstall from uninstalling the shared webhook.
- The operator provides a utility that can be used to convert existing "v8" Domain YAML files to "v9".
- Several [Helm chart default values have been changed]({{< ref "#changes-to-operator-helm-chart-configuration-values" >}}). Customers who upgrade their 3.x installations using the
--reuse-valuesoption during the Helm upgrade will continue to use the values from their original installation.
- The operator added a schema conversion webhook.
Changes to domain schema
-
Model in Image auxiliary image related.
- Added
.spec.configuration.model.auxiliaryImagesfor simplified configuration of auxiliary images. - Added several additional advanced settings related to auxiliary images including
.spec.configuration.model.auxiliaryImageVolumeMountPath,.spec.configuration.model.auxiliaryImageVolumeMedium, and.spec.configuration.model.auxiliaryImageVolumeSizeLimit. - Removed
.spec.serverPod.auxiliaryImagesand.spec.auxiliaryImageVolumesas part of the simplification effort.
- Added
-
Cluster changes.
- Moved content under
.spec.clusters[*]to the new Cluster resource.spec. - Modified
.spec.clusters[*]to be a list of Cluster resource names. - Removed
allowReplicasBelowMinDynClusterSizefield from.spec.and.spec.clusters[*]as cluster minimums must now be configured through autoscaling.
- Moved content under
-
Retry and failure tuning related.
- Added
.spec.failureRetryIntervalSecondsand.spec.failureRetryLimitMinutesfor configuration of failure retry timing. - Added
.spec.serverPod.maxReadyWaitTimeSecondsfor configuring maximum time before considering servers as stalled during startup.
- Added
-
Condition status updates.
- Added or updated Conditions to clearly reflect the current state of the domain:
- The
Completedcondition is set toTruewhen no failures are detected, plus all expected pods areready, at their target image(s),restartVersion, andintrospectVersion. - The
Availablecondition is set toTruewhen a sufficient number of pods areready. This condition can beTrueeven whenCompletedisFalse, aFailedcondition is reported, or a cluster has up tocluster.spec.maxUnavailablepods that are notready. - The
Failedcondition is set toTrueand its.messagefield is updated when there is a failure.
- The
- Added
.status.conditions[*].severityto describe the severity of conditions that represent failures or warnings. - Added fields
.status.initialFailureTimeand.status.lastFailureTimeto enable measuring how long aFailurecondition has been reported. - Removed condition
ServersReady. Instead useAvailableorCompleted. - Removed condition
Progressing. Instead:- Check
CompletedisTrueto see when a Domain is fully up-to-date and running. - Check whether
AvailableorCompletedexist to verify that the operator has noticed the Domain resource. - If
FailedisTrue, then check its.messageand.severityto see if retries have stopped.
- Check
- Added or updated Conditions to clearly reflect the current state of the domain:
-
General status updates.
- Added
.status.observedGenerationfor comparison to.metadata.generation; if the two values match, then the status correctly reflects the status of the latest updates to the Domain resource. - Renamed
.status.lastIntrospectJobProcessedUidto.status.failedIntrospectionUid. - Added
.status.serverStatus[*].podReadyand.status.serverStatus[*].podPhasewith additional information about the pod associated with each WebLogic Server instance.
- Added
-
Miscellaneous changes.
- Added
.spec.logHomeLayoutfor configuring the directory layout for WebLogic Server logs. - Added
.spec.serverPod.shutdown.waitForAllSessionsto enhance the configuration of server shutdown options. - Removed
.spec.configuration.istioas this section is no longer required. - Removed previously deprecated fields
.spec.domainHomeInImage,.spec.configOverrides, and.spec.configOverrideSecrets.
These have been replaced with.spec.domainHomeSourceType,.spec.configuration.overridesConfigMap, and.spec.configuration.secrets. - Removed
serverStartStatefield from.spec,.spec.adminServer,.spec.managedServers[*], andspec.clusters[*]as this field is no longer needed. - Default change for
.spec.adminServer.adminChannelPortForwardingEnabledtotrue. It previously defaulted tofalse.
- Added
Changes to operator Helm chart configuration values
-
Changed defaults for configuration values.
- The default for
domainNamespaceSelectionStrategyis nowLabelSelector. It was previouslyList. - The default for
domainNamespaceLabelSelectoris nowweblogic-operator=enabled. It was previously unspecified. - The default for
enableClusterRoleBindingis nowtrue; however, this value is ignored ifdomainNamespaceSelectionStrategyisDedicated. It was previouslyfalse.
- The default for
-
Removed configuration value.
- The previously deprecated value
dedicatedhas been removed. Set thedomainNamespaceSelectionStrategytoDedicatedinstead.
- The previously deprecated value
-
New configuration values.
- Added value
createLogStashConfigMap, defaulttrue, that configures how an optional Logstash container for the operator is configured. - Added value
webhookOnly, defaultfalse, that specifies if this Helm release will install only the schema conversion webhook. - Added value
operatorOnly, defaultfalse, that specifies if this Helm release will install only the operator. - Added value `preserveWeb...
- Added value
Operator 3.4.4
- Support added to specify resource requests and limits for Monitoring Exporter sidecar containers.
- Resolved an issue that prevented the generation of the
RollCompletedevent. - Updated scaling and lifecycle scripts to work correctly when used in a cluster with the upcoming WebLogic Kubernetes Operator 4.0 release.
- Updated several dependencies, including SnakeYAML and the Oracle Linux base for the container image.
Operator 3.4.3
Operator 3.4.2
- Updated several dependencies, including the Oracle Linux base for the container image.
- Updated the default WebLogic Monitoring Exporter injection to version 2.0.7.
Operator 3.4.1
Operator 3.4.0
- Certified support for Kubernetes 1.22.5+ and 1.23.4+.
- Support for injecting Fluentd sidecar containers for WebLogic Server pods and the introspector.
- Resolved an issue where operator Services caused warnings in the Kiali console because of missing protocol designations (#2957)
- Updated multiple dependencies, including updating the default WebLogic Monitoring Exporter injection to version 2.0.5.
- Resolved issue #2794 related to restarting evicted pods (#2979).