イメージへのパッチ適用
Oracleは、My Oracle Support (MOS)で最新のバンドル・パッチおよび推奨個別パッチを適用したOracle SOA Suiteイメージを定期的にリリースしています。ただし、新しいバンドル・パッチおよび個別パッチを使用してイメージを作成する必要がある場合は、WebLogic Image Toolを使用してこれらのイメージを構築できます。
Oracle SOA Suiteパッチへのアクセス権がある場合は、バンドル・パッチおよび個別パッチを使用して既存のOracle SOA Suiteイメージにパッチを適用できます。WebLogic Image Toolを使用してOracle SOA Suiteイメージにパッチを適用することをお薦めします。
推奨事項:
パッチが適用されたOracle SOA Suiteイメージの適用
パッチが適用されたイメージでOracle SOA Suiteドメインを更新するには、まず、パッチが適用されたイメージがプルまたは作成され、Kubernetesクラスタのノードで使用可能であることを確認します。パッチが適用されたイメージが使用可能になったら、次のステップに従って、パッチが適用されたイメージでOracle SOA Suiteドメインを更新できます:
すべてのサーバーの停止
ノート:
次のステップは、ダウンタイムなしのパッチ適用以外の場合にのみ適用されます。ダウンタイムなしのパッチ適用の場合は、「インストール後の要件に対応」に進んでください。パッチを適用する前に、ドメイン内のすべてのサーバーを停止します:
- domain.yaml構成ファイルで、spec.serverStartPolicyフィールド値をNeverに更新します。
- 更新されたdomain.yamlファイルを適用して、ドメインを停止します(すべてのサーバーを停止します):
kubectl apply -f domain.yaml
インストール後の要件に対応
パッチが適用されたOracle SOA Suiteイメージのパッチにインストール後のステップがある場合は、次のステップに従います:
- ドメイン・ホーム・アクセスを使用したKubernetesポッドの作成
- インストール後のステップの実行
ドメイン・ホーム・アクセスを使用したKubernetesポッドの作成
- Oracle SOA Suiteドメインのドメイン・ホーム永続ボリューム要求の詳細を取得します。たとえば、ネームスペースsoansで永続ボリューム要求の詳細をリストするには:
kubectl get pvc -n soans
永続ボリューム要求がsoainfra-domain-pvcであることを示す出力例:
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE soainfra-domain-pvc Bound soainfra-domain-pv 10Gi RWX soainfra-domain-storage-class xxd
- ドメイン・ホームの永続ボリューム要求を使用して、YAML soapostinstall.yamlを作成します。
たとえば、サンプル出力に従ってsoainfra-domain-pvcを使用します:
ノート:
次のサンプルYAMLで、soasuite:14.1.2.0-XXXXXX
をパッチ適用済イメージに置き換えます:apiVersion: v1 kind: Pod metadata: labels: run: soapostinstall name: soapostinstall namespace: soans spec: containers: - image: soasuite:14.1.2.0-XXXXXX name: soapostinstall command: ["/bin/bash", "-c", "sleep infinity"] imagePullPolicy: IfNotPresent volumeMounts: - name: soainfra-domain-storage-volume mountPath: /u01/oracle/user_projects volumes: - name: soainfra-domain-storage-volume persistentVolumeClaim: claimName: soainfra-domain-pvc
- YAMLを適用してKubernetesポッドを作成します:
kubectl apply -f soapostinstall.yaml
インストール後のステップの実行
ドメイン・ホームでインストール後のステップを実行する必要がある場合:
- soapostinstallポッドでbashシェルを起動します:
kubectl exec -it -n soans soapostinstall -- bash
これにより、実行中のsoapostinstallポッドにbashシェルが開きます:
[oracle@soapostinstall oracle]$
- soapostinstallポッドのbashシェルを使用して、ドメイン・ホームで必要なステップを実行します。
- インストール後のステップが正常に完了したら、soapostinstallポッドを削除できます:
kubectl delete -f soapostinstall.yaml
パッチ適用されたイメージの適用
インストール後の必要なステップが完了したら、ドメインを起動します:
- domain.yaml構成ファイルで、パッチが適用されたイメージでイメージ・フィールドの値を更新します。次に例を示します:
image: soasuite:14.1.2.0-XXXXXX
- ダウンタイムなしのパッチ適用以外の場合、domain.yamlでspec.serverStartPolicyフィールド値をIfNeededに更新します。
- 更新された
domain.yaml
構成ファイルを適用して、ドメインを起動します。kubectl apply -f domain.yaml
ノート:
ダウンタイムなしのパッチ適用以外の場合、domain.yamlでspec.serverStartPolicyフィールド値をIfNeededに更新します。 - パッチが適用されたイメージでドメインが更新されていることを確認します:
kubectl describe domain <domainUID> -n <domain-namespace>|grep "Image:"
サンプル出力:
kubectl describe domain soainfra -n soans |grep "Image:" Image: soasuite:14.1.2.0-XXXXXXX