16.2.13 アップグレード失敗後のリストア

アップグレードがどの時点で失敗しても、次のステップを使用してOracle Identity Governance 12cデプロイメントにリストアできます:
  1. 次のコマンドを使用して、OIG 14cデプロイメントを停止します:
    kubectl patch domain <domain> -n <domain_namespace> --type=merge --patch "{\"spec\": {\"serverStartPolicy\": \"Never\"}}"
    例:
    kubectl patch domain governancedomain -n oigns --type=merge --patch "{\"spec\": {\"serverStartPolicy\": \"Never\"}}"
    出力は次のようになります:
    domain.weblogic.oracle/governancedomain patched
  2. 次のkubectlコマンドを実行して、ポッドを表示します:
    kubectl get pods -n <domain_namespace>
    
    例:
    kubectl get pods -n oigns
    出力は次のようになります:
    NAME                           READY   STATUS        RESTARTS   AGE
    governancedomain-adminserver   1/1     Terminating   0          16m
    governancedomain-soa-server1   1/1     Terminating   0          13m
    governancedomain-oim-server1   1/1     Terminating   0          5m22s

    管理サーバー・ポッドおよび管理対象サーバー・ポッドは、TerminatingSTATUSに移行します。

    数分後、コマンドを再度実行し、ポッドが消失していることを確認してから続行します。

  3. アップグレード前に取得したバックアップから永続ボリュームをリストアします:
    sudo cp -rp <persistent_volume>/governancedomainpv <persistent_volume>/governancedomain_bkp14c
    sudo rm -rf <persistent_volume>/governancedomainpv
    sudo cp -rp <persistent_volume>/governancedomainpv_bkp12c <persistent_volume>/governancedomain
    例:
    sudo cp -rp /nfs_volumes/oig/governancedomainpv /nfs_volumes/oig/governancedomain_bkp14c
    sudo rm -rf /nfs_volumes/oig/governancedomainpv
    sudo cp -rp /nfs_volumes/oig/governancedomainpv_bkp12c /nfs_volumes/oig/governancedomain
  4. アップグレード前に取得したバックアップからOracle Databaseをリストアします。
  5. 次のコマンドを実行して、前に使用したOIG 12cコンテナ・イメージでデプロイメントを更新します:
    kubectl patch domain %DOMAIN_UID% -n %NAMESPACE% --type merge  -p '{"spec":{"image":"%WEBLOGIC_IMAGE%"}}'
    
    例:
    • OIGコンテナ・イメージにOracle Container Registryまたは独自のコンテナ・レジストリを使用する場合:
      kubectl patch domain governancedomain -n oigns \
      --type merge  -p '{"spec":{"image":"container-registry.oracle.com/middleware/oig_cpu:12.2.1.4-jdk8-ol8-<YYMMDD>"}}'
      
    • コンテナ・レジストリを使用せずに、各ワーカー・ノードにイメージをロードしている場合:
      kubectl patch domain governancedomain -n oigns \
      --type merge  -p '{"spec":{"image":"oracle/oig:12.2.1.4.0"}}'
      
      出力は次のようになります:
      domain.weblogic.oracle/governancedomain patched
      
  6. 次のコマンドを実行して、OIGドメインを起動します:
    kubectl patch domain.v9.weblogic.oracle "%DOMAIN_UID%" -n "%NAMESPACE%" \
    --type=merge --patch "{\"spec\": {\"serverStartPolicy\": \"IfNeeded\"}}"
    例:
    kubectl patch domain.v9.weblogic.oracle "governancedomain" -n "oigns" \
    --type=merge --patch "{\"spec\": {\"serverStartPolicy\": \"IfNeeded\"}}"
    出力は次のようになります:
    domain.weblogic.oracle/governancedomain patched
  7. WebLogic Kubernetes OperatorをOIG 12cでサポートされているバージョンにダウングレードします。「WebLogic Kubernetes Operatorの更新」の手順に従いますが、OIG 12cでサポートされているオペレータを使用します。
  8. 次のコマンドを実行して、ポッドを表示します:
    kubectl get pods -n %NAMESPACE%
    例:
    kubectl get pods -n oigns
    
    出力は次のようになります:
    NAME                                                     READY   STATUS        RESTARTS   AGE
    governancedomain-introspector-jwqxw                          1/1     Running     0          10s
    
    イントロスペクト・ジョブが開始され、その後に管理サーバー・ポッド、OIGサーバー・ポッドの順に起動します。このプロセスには数分かかるため、すべてのポッドがREADYステータス1/1で実行されるまで、コマンドの実行を続けます:

    ノート:

    別の方法として、監視フラグ-wを追加すると、変更時にポッドのステータスを監視できます。
    NAME                           READY   STATUS    RESTARTS   AGE
    governancedomain-adminserver   1/1     Running   0          16m
    governancedomain-soa-server1   1/1     Running   0          13m
    governancedomain-oim-server1   1/1     Running   0          5m22s
  9. すべてが実行されたら、「ドメインURLの検証」に従ってコンソールにアクセスできることを確認します。