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

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

共同作成者

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

必要なもの
  • アップグレードする前に、を参照してください "運用環境の要件" 環境がAstra Control Center導入の最小要件を満たしていることを確認する。環境に次の要素が必要です。

    • サポートされているAstra Tridentバージョンで、実行しているバージョンを確認するには、既存のAstra Control Centerに対して次のコマンドを実行します。

      kubectl get tridentversion -n trident

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

    警告 Kubernetes 1.25にアップグレードするには、Astra Trident 22.10 *にアップグレードする必要があります。
    • サポートされているKubernetesディストリビューションで実行しているバージョンを確認するには、既存のAstra Control Centerに対して次のコマンドを実行します。 kubectl get nodes -o wide

    • 十分なクラスタリソースを使用してクラスタリソースを確認し、既存のAstra Control Centerクラスタで次のコマンドを実行します。 kubectl describe node <node name>

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

    • デフォルトのストレージクラスデフォルトのストレージクラスを決定するには、既存のアストラコントロールセンターに対して次のコマンドを実行します。 kubectl get storageclass

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

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

    kubectl get apiservices
  • アップグレードを開始する前に、Astra Control Center UIからログアウトします。

このタスクについて

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

重要 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-[version].tar.gz)。

  3. (推奨ですがオプション)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 検証が成功したあとに、

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

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

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

NetApp Astra kubectlコマンドラインプラグインは、Astra Control Centerの導入とアップグレードに関連する一般的なタスクを実行する際に時間を節約します。

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

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

    • プラグインがインストールされている場合、コマンドはkubectlプラグインのヘルプを返す必要があります。既存のバージョンのkubectl-mstraを削除するには、次のコマンドを実行します。 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/

  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=22.11.0-82
    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=22.11.0-82
    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/22.11.0-82/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_or_custom_name_of_secret>
    2. 変更 [your_registry_path] をクリックします kube-rbac-proxy でイメージをプッシュしたレジストリパスへのイメージ 前の手順

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

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

      - name: ACCOP_HELM_UPGRADETIMEOUT
        value: 300m
      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: [your_registry_path]/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: [your_registry_path]/acc-operator:[version x.y.z]
              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

    ファイルエディタを保存して終了すると、変更が適用され、アップグレードが開始されます。

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

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

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

    対応:

    NAME    UUID                                      VERSION     ADDRESS         READY
    astra   9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f      22.11.0-82  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. すべての管理対象クラスタとアプリケーションが引き続き存在し、保護されていることを確認します。