Kf をアップグレードする

このドキュメントでは、既存の Kf インストールとその依存関係をアップグレードする方法について説明します。

アップグレード手順の一環として、Kf のインストールで Kf オペレーターの最新バージョンが使用されていることを確認してください。

  • 現在の Kf バージョンを Kf v2.5.4 にアップグレードできることを確認します。
  • Kf v2.5.4 にアップグレードします。
  • 依存関係をアップグレードします(必要な場合)。

始める前に

以下のものが必要になります。

  • Kf がインストールされた既存のクラスタ。
  • gcloudkfkubectl がインストールされているマシンへのアクセス権。

アップグレードの準備を行う

ターゲット クラスタに接続する

gcloud container clusters get-credentials CLUSTER_NAME \
 --zone CLUSTER_ZONE \
 --project CLUSTER_PROJECT_ID

現在の Kf CLI とサーバー バージョンが一致していることを確認する

kf debug を実行して、Kf CLI のバージョンと Kf サーバーのバージョンが一致していることを確認します。

  • CLI のバージョンは Kf Client に表示されます。
  • Kf サーバーのバージョンは kf["app.kubernetes.io/version"] に表示されます。
$ kf debug
...
Version:
  Kf Client:                        v2.4.1
  Server version:                   v1.20.6-gke.1000
  kf["app.kubernetes.io/version"]:  v2.4.1
...

Kf クライアントと Kf サーバーの値が一致せず、サーバーのバージョンが v2.4.x の場合は、Kf v2.5.4 CLI をインストールしてから手順を進めます。

Kf サーバーの値が v2.4.x より古い場合、手順を進めるために、まずは Kf v2.4.x に段階的にアップグレードする必要があります。

アップグレードする前に Kf が正常であることを確認する

kf doctor を実行して、クラスタの状態を確認します。次に進む前に、すべてのテストに合格していることを確認してください。

$ kf doctor
...
=== RUN doctor/user
=== RUN doctor/user/ContainerRegistry
--- PASS: doctor/user
   --- PASS: doctor/user/ContainerRegistry
...

FAIL または Error: environment failed checks というメッセージが表示される場合は、kf doctor 出力のガイダンスに従うか、トラブルシューティング ガイドを確認して問題を解決し、成功するまでコマンドを再試行します。

オペレーターをアップグレードする

Kf オペレーターをアップグレードします。

  1. オペレーター yaml を適用します。

    kubectl apply -f "https://storage.googleapis.com/kf-releases/v2.5.4/operator.yaml"

Kf の依存関係をアップグレードする

  1. Tekton をアップグレードします。

  2. 最新の Cloud Service Mesh にアップグレードします。

    1. Cloud Service Mesh アップグレード ガイドの手順に沿って操作します。
  3. Config Connector をアップグレードします。

Kf v2.5.4 CLI にアップグレードする

  1. CLI をインストールします。

    Linux

    このコマンドを実行すると、システム上のすべてのユーザーに Kf CLI がインストールされます。Cloud Shell のタブに表示されている手順に沿ってインストールします。

    gcloud storage cp gs://kf-releases/v2.5.4/kf-linux /tmp/kf
    chmod a+x /tmp/kf
    sudo mv /tmp/kf /usr/local/bin/kf

    Mac

    このコマンドを実行すると、システム上のすべてのユーザーに kf がインストールされます。

    gcloud storage cp gs://kf-releases/v2.5.4/kf-darwin /tmp/kf
    chmod a+x /tmp/kf
    sudo mv /tmp/kf /usr/local/bin/kf

    Cloud Shell

    bash を使用している場合、このコマンドを実行すると、kf が Cloud Shell インスタンスにインストールされます。他のシェルの場合は手順の変更が必要になることがあります。

    mkdir -p ~/bin
    gcloud storage cp gs://kf-releases/v2.5.4/kf-linux ~/bin/kf
    chmod a+x ~/bin/kf
    echo "export PATH=$HOME/bin:$PATH" >> ~/.bashrc
    source ~/.bashrc

    Windows

    このコマンドを実行すると、kf が現在のディレクトリにダウンロードされます。現在のディレクトリ以外の場所から呼び出す場合は、その場所をパスに追加します。

    gcloud storage cp gs://kf-releases/v2.5.4/kf-windows.exe kf.exe
  2. Kf CLI と Kf サーバーのバージョンが一致していることを確認します。

    • CLI のバージョンは Kf Client に表示されます。
    • Kf サーバーのバージョンは kf["app.kubernetes.io/version"] に表示されます。
    $ kf debug
    ...
    Version:
      Kf Client:                        v2.5.4
      Server version:                   v1.20.6-gke.1000
      kf["app.kubernetes.io/version"]:  v2.5.4
    ...
    

Kf が正常にアップグレードされたことを確認する

  1. doctor を実行して、新しくインストールされたバージョンが正常であることを確認します。

    kf doctor --retries=20

    このコマンドは、クラスタ チェックを数回実行します。新しいコントローラの起動中は、何度か試行が失敗しても問題ではありません。

    コマンドが「Error: environment failed checks」というメッセージで失敗した場合は、doctor 出力のガイダンスに従って問題を解決し、成功するまでコマンドを再試行します。

検証手順が正常に完了すれば、クラスタが正常にアップグレードされたことになります。問題が発生した場合は、サポートページでガイダンスを確認してください。