インプレース アップグレード
istioctl upgrade
コマンドは、Istio のアップグレードを実行します。
アップグレードコマンドは、Istio のダウングレードも実行できます。
istioctl upgrade
コマンドで提供されるすべてのオプションについては、istioctl
アップグレードのリファレンスを参照してください。
アップグレードの前提条件
アップグレードプロセスを開始する前に、以下の前提条件を確認してください。
インストールされている Istio のバージョンは、アップグレードバージョンよりマイナーバージョンが1つ以上古くないこと。たとえば、1.7.xへのアップグレードプロセスを開始する前に、1.6.0以上が必要です。
Istio のインストールがistioctlを使用してインストールされていること。
アップグレードの手順
このセクションのコマンドは、ダウンロードしたパッケージの bin/
サブディレクトリにある新しいバージョンの istioctl
を使用して実行する必要があります。
新しい Istio リリースをダウンロードし、新しいリリースディレクトリに移動します。
Kubernetes の設定が、アップグレードするクラスタを指していることを確認します。
$ kubectl config view
アップグレードがお使いの環境と互換性があることを確認します。
$ istioctl x precheck ✔ No issues found when checking the cluster. Istio is safe to install or upgrade! To get started, check out https://istio.dokyumento.jp/latest/docs/setup/getting-started/
このコマンドを実行してアップグレードを開始します。
$ istioctl upgrade
--set
フラグを使用して Istio をインストールした場合は、アップグレードにも同じ--set
フラグを渡すようにしてください。そうしないと、--set
で行ったカスタマイズが元に戻ります。本番環境での使用には、--set
の代わりに構成ファイルを使用することをお勧めします。-f
フラグを省略すると、Istio はデフォルトプロファイルを使用してアップグレードします。いくつかのチェックを実行した後、
istioctl
は続行するかどうかを確認するように求めてきます。istioctl
は、Istio コントロールプレーンとゲートウェイを新しいバージョンにインプレースアップグレードし、完了ステータスを示します。istioctl
がアップグレードを完了したら、Istio サイドカーを持つすべてのポッドを再起動して、Istio データプレーンを手動で更新する必要があります。$ kubectl rollout restart deployment
ダウングレードの前提条件
ダウングレードプロセスを開始する前に、以下の前提条件を確認してください。
Istio のインストールがistioctlを使用してインストールされていること。
ダウングレードしようとする Istio のバージョンは、インストールされている Istio のバージョンよりもマイナーバージョンが1つ以上古くないこと。たとえば、Istio 1.7.x から Istio 1.6.0 より低いバージョンにダウングレードすることはできません。
ダウングレードは、ダウングレードしようとする Istio のバージョンに対応する
istioctl
バイナリバージョンを使用して行う必要があります。たとえば、Istio 1.7 から 1.6.5 にダウングレードする場合は、istioctl
バージョン 1.6.5 を使用します。
旧バージョンのIstioへのダウングレード手順
istioctl upgrade
を使用して、Istio の旧バージョンにダウングレードできます。手順は前のセクションで説明したアップグレードプロセスと同じですが、旧バージョン(例:1.6.5)に対応する istioctl
バイナリを使用する点が異なります。完了すると、Istio は以前インストールされていたバージョンに復元されます。
または、istioctl install
を使用して、Istio コントロールプレーンの古いバージョンをインストールすることもできます。