Skip to main content
本製品の最新リリースがご利用いただけます。
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

Astra Control Center をアップグレードします

共同作成者

Astra Control Centerをアップグレードするには、NetApp Support Site からインストールバンドルをダウンロードし、以下の手順を実行します。この手順を使用して、インターネット接続環境またはエアギャップ環境の Astra コントロールセンターをアップグレードできます。

作業を開始する前に

アップグレードする前に、環境が "Astra Control Center環境の最小要件"。環境に次の要素が必要です。

  • サポートされるAstra Tridentバージョン

    Details

    実行しているTridentのバージョンを確認します。

    kubectl get tridentversion -n trident

    を参照してください "Astra Trident のドキュメント" 古いバージョンからアップグレードするには、次の手順に従います。

    警告 Kubernetes 1.25にアップグレードするには、Astra Trident 22.10 *にアップグレードする必要があります。
  • サポートされているKubernetesディストリビューション

    Details

    実行しているKubernetesのバージョンを確認します。

    kubectl get nodes -o wide
  • 十分なクラスタリソース

    Details

    使用可能なクラスタリソースを確認します。

    kubectl describe node <node name>
  • Astra Control Centerイメージのプッシュおよびアップロードに使用できるレジストリ

  • デフォルトのストレージクラス

    Details

    デフォルトのストレージクラスを確認します。

    kubectl get storageclass
  • 健全で使用可能なAPIサービス

    Details

    すべての API サービスが正常な状態であり、使用可能であることを確認します。

    kubectl get apiservices
  • (OpenShiftのみ)正常で使用可能なクラスタ演算子

    Details

    すべてのクラスタオペレータが正常な状態であり、使用可能であることを確認します。

    kubectl get clusteroperators
重要 この手順の一部として、 Astra Control Centerをアップグレードする場合。この更新されたオペレータを使用して以前のバージョンのAstra Control Centerにアップグレードすることはできません。
このタスクについて

Astra Control Center のアップグレードプロセスでは、次の手順を実行できます。

メモ アップグレードを開始する前に、Astra Control Center UIからログアウトします。
重要 Astra Control Centerオペレータ(たとえば、 kubectl delete -f astra_control_center_operator_deploy.yaml) Astra Control Centerのアップグレードまたは操作中はいつでもポッドを削除しないようにします。
ヒント スケジュール、バックアップ、 Snapshot が実行されていないときは、メンテナンス時間内にアップグレードを実行します。

Astra Control Centerをダウンロードして展開します

  1. にアクセスします "Astra Control Centerの製品ダウンロードページ" をクリックしますNetApp Support Site 。ドロップダウンメニューから最新バージョンまたは別のバージョンを選択できます。

  2. (推奨ですがオプション)Astra Control Centerの証明書と署名のバンドルをダウンロードします (astra-control-center-certs-[version].tar.gz)をクリックして、バンドルのシグネチャを確認します。

    展開して詳細を表示
    tar -vxzf astra-control-center-certs-[version].tar.gz
    openssl dgst -sha256 -verify certs/AstraControlCenter-public.pub -signature certs/astra-control-center-[version].tar.gz.sig astra-control-center-[version].tar.gz

    出力にはと表示されます Verified OK 検証が成功したあとに、

  3. Astra Control Centerバンドルからイメージを抽出します。

    tar -vxzf astra-control-center-[version].tar.gz

NetApp Astra kubectlプラグインを削除して、再度インストールします

NetApp Astra kubectlコマンドラインプラグインを使用して、ローカルのDockerリポジトリにイメージをプッシュできます。

  1. プラグインがインストールされているかどうかを確認します。

    kubectl astra
  2. 次のいずれかを実行します。

    • プラグインがインストールされている場合は、コマンドによってkubectlプラグインのヘルプが返され、既存のバージョンのkubectl-Astraを削除できます。 delete /usr/local/bin/kubectl-astra

    • コマンドからエラーが返された場合は、プラグインがインストールされていません。次の手順に進んでインストールしてください。

  3. プラグインをインストールします。

    1. 使用可能なNetApp Astra kubectlプラグインのバイナリを表示し、オペレーティングシステムとCPUアーキテクチャに必要なファイルの名前をメモします。

      メモ kubectlプラグインライブラリはtarバンドルの一部であり、フォルダに解凍されます kubectl-astra
    ls kubectl-astra/
    1. 正しいバイナリを現在のパスに移動し、名前をに変更します kubectl-astra

      cp kubectl-astra/<binary-name> /usr/local/bin/kubectl-astra

イメージをローカルレジストリに追加します

  1. コンテナエンジンに応じた手順を実行します。

Docker です
  1. tarballのルートディレクトリに移動します。次のように表示されます。 acc.manifest.bundle.yaml ファイルと次のディレクトリ:

    acc/
    kubectl-astra/
    acc.manifest.bundle.yaml

  2. Astra Control Centerのイメージディレクトリにあるパッケージイメージをローカルレジストリにプッシュします。を実行する前に、次の置換を行ってください push-images コマンドを実行します

    • <BUNDLE_FILE> をAstra Controlバンドルファイルの名前に置き換えます (acc.manifest.bundle.yaml)。

    • <MY_FULL_REGISTRY_PATH> をDockerリポジトリのURLに置き換えます。次に例を示します。 "https://<docker-registry>"

    • <MY_REGISTRY_USER> をユーザ名に置き換えます。

    • <MY_REGISTRY_TOKEN> をレジストリの認証済みトークンに置き換えます。

      kubectl astra packages push-images -m <BUNDLE_FILE> -r <MY_FULL_REGISTRY_PATH> -u <MY_REGISTRY_USER> -p <MY_REGISTRY_TOKEN>
ポドマン
  1. tarballのルートディレクトリに移動します。次のファイルとディレクトリが表示されます。

    acc.manifest.bundle.yaml
    acc/

  2. レジストリにログインします。

    podman login <YOUR_REGISTRY>
  3. 使用するPodmanのバージョンに合わせてカスタマイズされた次のいずれかのスクリプトを準備して実行します。<MY_FULL_REGISTRY_PATH> を'サブディレクトリを含むリポジトリのURLに置き換えます

    Podman 4
    export REGISTRY=<MY_FULL_REGISTRY_PATH>
    export PACKAGENAME=acc
    export PACKAGEVERSION=23.07.0-25
    export DIRECTORYNAME=acc
    for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do
    astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //')
    astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::')
    podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
    podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
    done
    Podman 3
    export REGISTRY=<MY_FULL_REGISTRY_PATH>
    export PACKAGENAME=acc
    export PACKAGEVERSION=23.07.0-25
    export DIRECTORYNAME=acc
    for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do
    astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //')
    astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::')
    podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
    podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
    done
    メモ レジストリ設定に応じて、スクリプトが作成するイメージパスは次のようになります。
    https://netappdownloads.jfrog.io/docker-astra-control-prod/netapp/astra/acc/23.07.0-25/image:version

更新された Astra Control Center オペレータをインストールします

  1. ディレクトリを変更します。

    cd manifests
  2. Astra Control Centerオペレータ配置YAMLを編集します (astra_control_center_operator_deploy.yaml)を参照して、ローカルレジストリとシークレットを参照してください。

    vim astra_control_center_operator_deploy.yaml
    1. 認証が必要なレジストリを使用する場合は、のデフォルト行を置換または編集します imagePullSecrets: [] 次の条件を満たす場合:

      imagePullSecrets: [{name: astra-registry-cred}]
    2. 変更 ASTRA_IMAGE_REGISTRY をクリックします kube-rbac-proxy でイメージをプッシュしたレジストリパスへのイメージ 前の手順

    3. 変更 ASTRA_IMAGE_REGISTRY をクリックします acc-operator でイメージをプッシュしたレジストリパスへのイメージ 前の手順

    4. に次の値を追加します env セクション。

      - name: ACCOP_HELM_UPGRADETIMEOUT
        value: 300m
    Astra control_center_operator_deploy.yamlの例:
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        control-plane: controller-manager
      name: acc-operator-controller-manager
      namespace: netapp-acc-operator
    spec:
      replicas: 1
      selector:
        matchLabels:
          control-plane: controller-manager
      strategy:
        type: Recreate
      template:
        metadata:
          labels:
            control-plane: controller-manager
        spec:
          containers:
          - args:
            - --secure-listen-address=0.0.0.0:8443
            - --upstream=http://127.0.0.1:8080/
            - --logtostderr=true
            - --v=10
            image: ASTRA_IMAGE_REGISTRY/kube-rbac-proxy:v4.8.0
            name: kube-rbac-proxy
            ports:
            - containerPort: 8443
              name: https
          - args:
            - --health-probe-bind-address=:8081
            - --metrics-bind-address=127.0.0.1:8080
            - --leader-elect
            env:
            - name: ACCOP_LOG_LEVEL
              value: "2"
            - name: ACCOP_HELM_UPGRADETIMEOUT
              value: 300m
            image: ASTRA_IMAGE_REGISTRY/acc-operator:23.07.25
            imagePullPolicy: IfNotPresent
            livenessProbe:
              httpGet:
                path: /healthz
                port: 8081
              initialDelaySeconds: 15
              periodSeconds: 20
            name: manager
            readinessProbe:
              httpGet:
                path: /readyz
                port: 8081
              initialDelaySeconds: 5
              periodSeconds: 10
            resources:
              limits:
                cpu: 300m
                memory: 750Mi
              requests:
                cpu: 100m
                memory: 75Mi
            securityContext:
              allowPrivilegeEscalation: false
          imagePullSecrets: []
          securityContext:
            runAsUser: 65532
          terminationGracePeriodSeconds: 10
  3. 更新された Astra Control Center オペレータをインストールします。

    kubectl apply -f astra_control_center_operator_deploy.yaml
    回答例:
    namespace/netapp-acc-operator unchanged
    customresourcedefinition.apiextensions.k8s.io/astracontrolcenters.astra.netapp.io configured
    role.rbac.authorization.k8s.io/acc-operator-leader-election-role unchanged
    clusterrole.rbac.authorization.k8s.io/acc-operator-manager-role configured
    clusterrole.rbac.authorization.k8s.io/acc-operator-metrics-reader unchanged
    clusterrole.rbac.authorization.k8s.io/acc-operator-proxy-role unchanged
    rolebinding.rbac.authorization.k8s.io/acc-operator-leader-election-rolebinding unchanged
    clusterrolebinding.rbac.authorization.k8s.io/acc-operator-manager-rolebinding configured
    clusterrolebinding.rbac.authorization.k8s.io/acc-operator-proxy-rolebinding unchanged
    configmap/acc-operator-manager-config unchanged
    service/acc-operator-controller-manager-metrics-service unchanged
    deployment.apps/acc-operator-controller-manager configured
  4. ポッドが実行中であることを確認します

    kubectl get pods -n netapp-acc-operator

Astra Control Center をアップグレードします

  1. Astra Control Centerカスタムリソース(CR)を編集します。

    kubectl edit AstraControlCenter -n [netapp-acc or custom namespace]
  2. Astraのバージョン番号を変更します (astraVersion の内部 spec)をアップグレードするバージョンにアップグレードします。

    spec:
      accountName: "Example"
      astraVersion: "[Version number]"
  3. イメージレジストリパスが、イメージをでプッシュしたレジストリパスと一致することを確認します 前の手順。更新 imageRegistry の内部 spec 前回のインストール以降にレジストリが変更されている場合。

      imageRegistry:
        name: "[your_registry_path]"
  4. に次の項目を追加します crds の内部の設定 spec

    crds:
      shouldUpgrade: true
  5. 内に次の行を追加します additionalValues の内部 spec Astra Control Center CRで、次の手順を実行します。

    additionalValues:
        nautilus:
          startupProbe:
            periodSeconds: 30
            failureThreshold: 600
        polaris-keycloak:
          livenessProbe:
            initialDelaySeconds: 180
          readinessProbe:
            initialDelaySeconds: 180
  6. ファイルエディタを保存して終了します。変更が適用され、アップグレードが開始されます。

  7. (オプション)ポッドが終了し、再び使用可能になったことを確認します。

    watch kubectl get pods -n [netapp-acc or custom namespace]
  8. アップグレードが完了して準備ができたことを示すため、Astra Controlのステータス状態が表示されるまで待ちます (True):

    kubectl get AstraControlCenter -n [netapp-acc or custom namespace]

    対応:

    NAME    UUID                                      VERSION     ADDRESS         READY
    astra   9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f      23.07.0-25   10.111.111.111  True
    メモ 処理中のアップグレードステータスを監視するには、次のコマンドを実行します。 kubectl get AstraControlCenter -o yaml -n [netapp-acc or custom namespace]
    メモ Astra Control Centerのオペレータログを調べるには、次のコマンドを実行します。
    kubectl logs deploy/acc-operator-controller-manager -n netapp-acc-operator -c manager -f

システムステータスを確認します

  1. Astra Control Center にログインします。

  2. バージョンがアップグレードされたことを確認します。UIの* Support *ページを参照してください。

  3. すべての管理対象クラスタとアプリケーションが引き続き存在し、保護されていることを確認します。