16.1.1 コンテナ・イメージへのパッチ適用

この項の手順では、新しいOIGコンテナ・イメージを使用した既存の14.1.2.1.0 Oracle Identity Governance (OIG)デプロイメントへのパッチ適用またはアップグレードについて説明します。

ノート:

管理者は、次のことに注意する必要があります:
  • Oracle Container Registryまたは独自のコンテナ・レジストリを使用していない場合は、まずKubernetesクラスタ内のすべてのノードに新しいコンテナ・イメージをロードする必要があります。
  • Kubernetes Horizontal Pod Autoscaler (HPA)が有効になっている場合は、次のステップを実行する前にHPAを無効にする必要があります。「HPAの削除」を参照してください。
次のオプションのいずれかを選択し、新しいイメージでOIGデプロイメントを更新します:
  • kubectl edit domainコマンドの実行。
  • kubectl patch domainコマンドの実行。

kubectl edit domainコマンドの実行

ドメインを更新するには:
  1. 次のコマンドを実行します。
    kubectl edit domain <domainUID> -n <domain_namespace>
    
    例:
    kubectl edit domain governancedomain -n oigns
    

    ノート:

    これにより、標準のviコマンドを使用してパラメータを変更できるドメインの編集セッションが開きます。
  2. 新しいOIGコンテナ・イメージを参照するようにimageパラメータを更新します:
    • OIGコンテナ・イメージにOracle Container Registryまたは独自のコンテナ・レジストリを使用する場合は、次のように新しいイメージの場所を指すようにイメージを更新します:
      ...
      image: container-registry.oracle.com/middleware/oig_cpu:<new_tag>
        imagePullPolicy: IfNotPresent
        imagePullSecrets:
        - name: orclcred
      ...
    • コンテナ・レジストリを使用せずに、各ワーカー・ノードにイメージをロードしている場合は、新しいイメージを指すようにイメージを更新します:
      ...
      image: container-registry.oracle.com/middleware/oig_cpu:<new_tag>
        imagePullPolicy: oracle/oig:<new_tag>
      ...
  3. ファイルを保存して終了します(:wq!)

kubectl patchコマンドの実行

ドメインを更新するには:
  1. 次のコマンドを実行して、imageパラメータを新しいイメージの場所に設定します:
    kubectl patch domain <domainUID> -n <domain_namespace> --type merge  -p '{"spec":{"image":"<repository>:<new_tag>"}}'
    
    例:
    • OIGコンテナ・イメージにOracle Container Registryまたは独自のコンテナ・レジストリを使用する場合:
      kubectl patch domain governancedomain -n oigns --type merge  -p '{"spec":{"image":"container-registry.oracle.com/middleware/oig_cpu:<new_tag>"}}'
      
    • コンテナ・レジストリを使用せずに、各ワーカー・ノードにイメージをロードしている場合:
      kubectl patch domain governancedomain -n oigns --type merge  -p '{"spec":{"image":"oracle/oig:<new_tag>"}}'
      
      出力は次のようになります:
      domain.weblogic.oracle/governancedomain patched
      

OIGデプロイメントが新しいイメージを使用していることの確認

アップグレードに成功したら、次のコマンドを実行して、ポッドで使用されているイメージを表示できます:
kubectl describe pod <pod> -n <domain_namespace>
例:
kubectl describe pod governancedomain-oim-server1 -n oigns
新しいイメージは次のセクションに表示されます:
...
Containers:
  weblogic-server:
    Container ID:  cri-o://220fa83d079e079ac183c00f884b10ea30a794527dbb65e6964a035d450384f8
    Image:         container-registry.oracle.com/middleware/oig_cpu:<new>
    Image ID:      container-registry.oracle.com/middleware/oig_cpu@sha256:cdf51b6aa47cd05573bc53244681b193fb4e2f6db56e50d2251b9416bc68ebc0
    Port:          14100/TCP
    Host Port:     0/TCP
    Command:
...