ベアメタル版 Anthos クラスタのアップグレード

ベアメタル版 Anthos クラスタのアップグレード

新しいバージョンの bmctl をインストールすると、以前のバージョンで作成した既存のクラスタをアップグレードできます。Anthos clusters on bare metal の最新バージョンにクラスタをアップグレードすると、クラスタに追加機能と修正が適用されます。また、引き続きクラスタのサポートを保証します。管理者、ハイブリッド、スタンドアロン、ユーザー クラスタは、bmctl upgrade cluster コマンドを使用してアップグレードできます。

クラスタ アップグレードの前にプリフライト チェックが実行され、クラスタのステータスとノードの健全性が検証されます。

次の例は、最初のバージョン 1.6.0 をベアメタル版 Anthos クラスタ 1.6.1 にアップグレードするプロセスを示しています。

同じ方法で 1.6.1 から 1.6.2 にアップグレードできます。アップグレードのスキップ(1.6.0 から 1.6.2)もサポートされています。

ベアメタル版の管理、スタンドアロン、またはハイブリッド Anthos クラスタのアップグレード

新しいバージョンの bmctl をダウンロードしてインストールすると、以前のバージョンで作成した管理クラスタ、ハイブリッド クラスタ、スタンドアロン クラスタをアップグレードできます。特定のバージョンの bmctl の場合は、クラスタを同じバージョンにのみアップグレードできます。

まず、最新の bmctl をダウンロードしてから、適切なクラスタ構成ファイルを変更し、bmctl upgrade cluster コマンドを発行してアップグレードを完了します。

  1. Cloud Storage バケットから最新の bmctl をダウンロードします。
    gsutil cp gs://anthos-baremetal-release/bmctl/1.6.2/linux-amd64/bmctl bmctl
    chmod a+x bmctl
    
  2. ベアメタル版 Anthos クラスタのクラスタ バージョンを 1.6.1 から 1.6.2 に変更するよう、クラスタ構成 YAML ファイルを変更します。以下に、管理クラスタの構成ファイルの例を示します。
  3. ---
    apiVersion: baremetal.cluster.gke.io/v1
    kind: Cluster
    metadata:
      name: cluster1
      namespace: cluster-cluster1
    spec:
      # Cluster type. This can be:
      #   1) admin:  to create an admin cluster. This can later be used to create user clusters.
      #   2) user:   to create a user cluster. Requires an existing admin cluster.
      #   3) hybrid: to create a hybrid cluster that runs admin cluster components and user workloads.
      #   4) standalone: to create a cluster that manages itself, runs user workloads, but does not manage other clusters.
      type: admin
      # Anthos cluster version.
      # Change the following line from 1.6.0 to 1.6.1, shown below
      anthosBareMetalVersion: 1.6.1
    
  4. bmctl upgrade cluster コマンドを使用してアップグレードを完了します。ここで、CLUSTER_NAME はクラスタの名前、ADMIN_KUBECONFIG は管理クラスタの kubeconfig ファイルのパスを指定します。
  5. bmctl upgrade cluster -c CLUSTER_NAME --kubeconfig ADMIN_KUBECONFIG
    

ユーザー クラスタのアップグレード

管理クラスタ、ハイブリッド クラスタ、またはスタンドアロン クラスタが正常にアップグレードされたら、管理するユーザー クラスタをアップグレードできます。

まず、ユーザー クラスタの構成ファイルを変更してから kubectl apply コマンドを実行し、変更した構成ファイルを適用してアップグレードを完了します。

  1. ベアメタル版 Anthos クラスタのクラスタ バージョンを 1.6.0 から 1.6.1 に変更するよう、ユーザー クラスタ構成 YAML ファイルを変更します。
  2. ---
    apiVersion: baremetal.cluster.gke.io/v1
    kind: Cluster
    metadata:
      name: cluster1
      namespace: cluster-cluster1
    spec:
      # Cluster type. This can be:
      #   1) admin:  to create an admin cluster. This can later be used to create user clusters.
      #   2) user:   to create a user cluster. Requires an existing admin cluster.
      #   3) hybrid: to create a hybrid cluster that runs admin cluster components and user workloads.
      #   4) standalone: to create a cluster that manages itself, runs user workloads, but does not manage other clusters.
      type: user
      # Anthos cluster version.
      # Change the following line from 1.6.0 to 1.6.1, shown below
      anthosBareMetalVersion: 1.6.1
    
  3. kubectl コマンドを実行して、変更されたユーザー クラスタの構成ファイルを適用し、クラスタを作成します。
  4.   kubectl --kubeconfig ADMIN_KUBECONFIG apply -f USER_CLUSTER_CONFIG
      
    ADMIN_KUBECONFIG には、管理クラスタの kubeconfig ファイルのパスを指定します。USER_CLUSTER_CONFIG には、前のセクションで編集したユーザー クラスタの YAML ファイルのパスを指定します。たとえば、admin という名前の管理クラスタと user1 という名前のユーザー クラスタの構成ファイルの場合、コマンドは次のようになります。
    kubectl --kubeconfig bmctl-workspace/admin/admin-kubeconfig apply /
      -f bmctl-workspace/user1/user1.yaml
    

ユーザー クラスタのアップグレードの確認

アップグレード後にユーザー クラスタのバージョンを確認するには、kubectl get コマンドを使用してバージョンを確認します。

たとえば、1.6.0 からアップグレードした後、クラスタのバージョンが 1.6.1 であることを確認するには、次のコマンドを実行します。

kubectl get cluster.baremetal.cluster.gke.io -n cluster-USER_CLUSTER_NAME \
  -o jsonpath='{.status.anthosBareMetalVersion}' --kubeconfig ADMIN_KUBECONFIG

ここで

  • ADMIN_KUBECONFIG には、管理クラスタの kubeconfig ファイルのパスを指定します。
  • USER_CLUSTER_NAME は、ユーザー クラスタの名前です。

アップグレードが正常に完了すると、アップグレード後のバージョン番号が返されます。アップグレードが完了するまでに 30 分ほどかかることがあります。