This document provides guidelines for upgrading WLS and FMW/JRF infrastructure domains to a higher, major version.
In general, the process for upgrading WLS and FMW/JRF infrastructure domains in Kubernetes is similar to upgrading domains on premises. For a thorough understanding, we suggest that you read the Fusion Middleware Upgrade Guide.
Before the upgrade, you must do the following:
If your domain home source type is Domain on Persistent Volume (DoPV), then back up the domain home.
If your domain type is JRF
:
Back up the JRF database.
Back up the OPSS wallet file, this allows you to reuse the same JRF database schemas if you need to recreate the domain.
The operator provides a helper script, the OPSS wallet utility, for extracting the wallet file and storing it in a Kubernetes walletFileSecret
. In addition, you should save the wallet file in a safely backed-up location, outside of Kubernetes. For example, the following command saves the OPSS wallet for the sample-domain1
domain in the sample-ns
namespace to a file named ewallet.p12
in the /tmp
directory and also stores it in the wallet secret named sample-domain1-opss-walletfile-secret
.
$ opss-wallet.sh -n sample-ns -d sample-domain1 -s -r -wf /tmp/ewallet.p12 -ws sample-domain1-opss-walletfile-secret
Make sure nothing else is accessing the database.
Do not delete the domain resource.
According to My Oracle Support Doc ID 2752458.1, if you are using an FMW/JRF domain and upgrading from 12.2.1.3 to 12.2.1.4, then before upgrading, you do not need to run the Upgrade Assistant or Reconfiguration Wizard, but we recommend moving the domain to a persistent volume. See Move MII/JRF domains to PV.
To upgrade WLS and FMW/JRF infrastructure domains, use the following procedure.
Shut down the domain by patching the domain and/or cluster spec serverStartPolicy
to Never
. For example:
$ kubectl -n sample-domain1-ns patch domain sample-domain1 --type=json -p='[ {"op": "replace", "path": "/spec/serverStartPolicy", "value": "Never"}]'
After the shutdown completes, upgrade the base image in the domain resource YAML file and redeploy the domain.
You can patch the domain resource YAML file, update the base image and change serverStartPolicy
to IfNeeded
again, as follows:
$ kubectl -n sample-domain1-ns patch domain sample-domain1 --type=json -p='[ {"op": "replace", "path": "/spec/serverStartPolicy", "value": "IfNeeded"}, {"op": "replace", "path":"/spec/image", "value":"<New WebLogic or Fusion Middleware base image>"]'