13.2.1 12cから14cへのアップグレードの実行

次のステップを実行して、Oracle Unified Directory (OUD) 12.2.1.4デプロイメントを14.1.2.1.0にアップグレードします:

ノート:

管理者は、次のことに注意する必要があります:
  • Oracle Container Registryまたは独自のコンテナ・レジストリを使用していない場合は、まずKubernetesクラスタ内のすべてのノードにOUD 14cコンテナ・イメージをロードする必要があります。
  • Kubernetes Horizontal Pod Autoscaler (HPA)が有効になっている場合は、次のステップを実行する前にHPAを無効にする必要があります。「Horizontal Pod Autoscalerの削除」を参照してください。
  1. 「OUDのコード・リポジトリの設定」に従って、OUD 14cデプロイメント・スクリプトをダウンロードします。
  2. 永続ボリューム・ディレクトリのバックアップを取得します:
    sudo cp -rp <persistent_volume>/oud_user_projects <persistent_volume>/oud_user_projects_bkp12c 
    例:
    sudo cp -rp /nfs_volumes/oudpv/oud_user_projects /nfs_volumes/oudpv/oud_user_projects_bkp12c
  3. $WORKDIR/kubernetes/helm14cディレクトリに移動します:
    cd $WORKDIR/kubernetes/helm14c
  4. 次を含むoud-patch-override.yamlファイルを作成します:
    image:
      repository: <image_location>
      tag: <image_tag>
     imagePullSecrets:
       - name: orclcred
    例:
    image:
      repository: container-registry.oracle.com/middleware/oud_cpu
      tag: 14.1.2.1.0-jdk17-ol8-<YYMMDD>
    imagePullSecrets:
      - name: orclcred

    ノート:

    OUDコンテナ・イメージにOracle Container Registryまたは独自のコンテナ・レジストリを使用しない場合、次を削除できます:
    imagePullSecrets:
      - name: orclcred
    最後のコンテナ・イメージの更新以降にKubernetesのバージョンもアップグレードした場合は、ファイルに次を追加する必要もあります:
    cronJob:
      kubectlImage:
        repository: bitnami/kubectl
        tag: <version>
        pullPolicy: IfNotPresent
    ここで、kubectlImage: tag:<version>は、Kubernetesバージョン(kubectl version)と同じバージョンに設定する必要があります。たとえば、Kubernetesバージョンが1.30.3の場合、1.30.3に設定します。

    bitnami/kubectlイメージをプルするためのインターネットへのアクセス権がクラスタにない場合は、ローカル・コンテナ・レジストリにイメージをロードし、リポジトリ・タグを適切に設定する必要があります。

  5. 次のコマンドを実行して、デプロイメントをアップグレードします:
    helm upgrade --namespace <namespace> \
    --values oud-patch-override.yaml \
    <release_name> oud-ds-rs --reuse-values
    例:
    helm upgrade --namespace oudns \
    --values oud-patch-override.yaml \
    oud-ds-rs oud-ds-rs --reuse-values
    出力は次のようになります:
    Release "oud-ds-rs" has been upgraded. Happy Helming!
    NAME: oud-ds-rs
    LAST DEPLOYED: <DATE>
    NAMESPACE: oudns
    STATUS: deployed
    REVISION: 2
    NOTES:
    #
    # Copyright (c) 2025, Oracle and/or its affiliates.
    #
    # Licensed under the Universal Permissive License v 1.0 as shown at
    # https://oss.oracle.com/licenses/upl
    #
    #
    Since "nginx" has been chosen, follow the steps below to configure nginx ingress controller.
    Add Repo reference to helm for retriving/installing Chart for nginx-ingress implementation.
    command-# helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
    
    Command helm install to install nginx-ingress related objects like pod, service, deployment, etc.
    # helm install --namespace <namespace for ingress> --values nginx-ingress-values-override.yaml lbr-nginx ingress-nginx/ingress-nginx
    
    For details of content of nginx-ingress-values-override.yaml refer README.md file of this chart.
    
    Run these commands to check port mapping and services:
    # kubectl --namespace <namespace for ingress> get services -o wide -w lbr-nginx-ingress-controller
    # kubectl describe --namespace <namespace for oud-ds-rs chart> ingress.extensions/oud-ds-rs-http-ingress-nginx
    # kubectl describe --namespace <namespace for oud-ds-rs chart> ingress.extensions/oud-ds-rs-admin-ingress-nginx
    
    Accessible interfaces through ingress:
    (External IP Address for LoadBalancer NGINX Controller can be determined through details associated with lbr-nginx-ingress-controller)
    
    1. OUD Admin REST:
       Port: http/https
    
    2. OUD Data REST:
       Port: http/https
    
    3. OUD Data SCIM:
       Port: http/https
    
    4. OUD LDAP/LDAPS:
       Port: ldap/ldaps
    
    5. OUD Admin LDAPS:
       Port: ldaps
    
    Please refer to README.md from Helm Chart to find more details about accessing interfaces and configuration parameters.
    
    
    Accessible interfaces through ingress:
    
    1. OUD Admin REST:
       Port: http/https
    
    2. OUD Data REST:
       Port: http/https
    
    3. OUD Data SCIM:
       Port: http/https
    
    Please refer to README.md from Helm Chart to find more details about accessing interfaces and configuration parameters.
    
    helm upgradeは、OUDポッドのローリング再起動を実行します。
  6. 次のコマンドを実行して、すべてのOUDポッドが起動されていることを確認します:
    kubectl get pods -n <namespace> -w
    例:
    kubectl get pods -n oudns -w
  7. ポッドが稼働したら、次のコマンドを実行して、ポッドで使用されているOUD 14cコンテナ・イメージを表示できます:
    kubectl describe pod <pod> -n <namespace>
    例:
    kubectl describe pod oud-ds-rs-0 -n oudns
    出力は次のようになります:
    ...
    Containers:
      oud-ds-rs:
        Container ID:   cri-o://6a35ef3a0721015aa99b2aaeebdc96528c8166db7bf36176f0b9665e43c10ded
        Image:          container-registry.oracle.com/middleware/oud_cpu:14.1.2.1.0-jdk17-ol8-<DDYYMM>
        Image ID:       container-registry.oracle.com/middleware/oud_cpu@sha256:2ae38d6bdca4c411d6b62289cf80563f611a1fdcbaf01632be7b4fa6a4169000
    
  8. 必要に応じて、OUDデプロイメントを確認します: