2020/05/12

Alibaba Cloud Container Service for Kubernetes のアップグレード をしてみた


このエントリーをはてなブックマークに追加  


はじめに

Kubernetes を使うときに必ず訪れるクラスターのアップグレード・・・
Alibaba Cloud の Kubernetes サービスでも 1.16 へのアップグレードが来ていたので実施したときのメモを残します。

とはいえ、マネージドサービスなので比較的簡単に実行できるのはありがたいですね。

Alibaba Cloud Container Service for Kubernetes のアップグレード

Alibaba Cloud Container Service for Kubernetes(ACK) のアップグレードは管理コンソールの画面から実行が可能です。
アップグレードイメージが利用可能になると クラスターのアップグレード の項目に 🔴が表示されます。

image.png

クラスターのアップグレードを選択すると対象のクラスターのアップグレード実行画面に遷移します。
ここでアップグレードを選択するとアップグレード作業が開始されます。
※次に確認画面が表示されます。

image.png

注意事項:
1. Kubernetes 1.16 へのアップグレード中、Corefile 設定は新しい CoreDNS バージョンに一致する内容に自動的に移行されます。
2. クラスターにデプロイされたアプリケーションは、アップグレード中も中断されません。 ただし、API サーバーに強くに依存 するアプリケーションは一時的に中断する場合があります。
3. アップグレード中は、クラスター内のノード数を変更しないでください。 ノードを追加または削除する必要がある場合、アップグレードをキャンセルしてから行います。
4. アップグレード中にエラーが発生しない限り、名前空間 kube-upgrade のリソースを変更しないでください
5. カスタムオペレーティングシステムイメージを指定した場合、アップグレードに失敗する可能性があります (カスタムイメージは Container Service による厳格な検証が行われていないため)。
詳細については、「クラスターのアップグレード」をご参照ください。

アップグレード実行の確認画面が表示されます。
確認を選択すると開始されます。

image.png

以下のような、プロセス自動で実行されてアップグレードが実行されます。
なお、「事前チェック」でエラーが出る場合は、そこでプロセスが停止します。
エラーを修正してから再度、アップグレードを開始する必要があります。

image.png

アップグレード自体は問題が発生しなければ自動的に実行されて数分で終わります。
この時は3ノードで5分以内に完了しました。

image.png

これで Alibaba Cloud Container Service for Kubernetes(ACK) のアップグレードは終了です。
簡単ですね!

事前チェックエラー

このままだと、ちょっと物足りないので「事前チェックエラー」の時どうなるかも簡単にご紹介します。

事前チェックに失敗するとアップグレードのプロセスは一旦停止します。
詳細情報からエラーの内容を確認して解決する必要があります。

image.png

Container Service Operation Center という画面が表示されます。
ここで Alibaba Cloud Container Service for Kubernetes(ACK) のクラスターの状態などをチェックすることが可能です。
※実はこの画面はこの作業しているときに初めて見ましたw
たぶん、最近追加された画面だと思われます😅

image.png

Error となっている項目を選択するとエラーの内容が確認できます。
Flannel の Daemon Set image をアップグレードしろと書いてあるようですね。

image.png

Reason : Daemon Set image version too low
Affect : May cause cluster function abnormality
Advise : Check the Daemon Set image version, upgrade this system component on ContainerService console.

解決方法の通りに Flannel のアップグレードをしてみたいと思います。
Alibaba Cloud Container Service for Kubernetes(ACK) ではこういったコンポーネントのアップグレードなども管理コンソールから行うことが可能です。
対象のクラスターのアドオン管理から対象(kube-flannel-ds)のアップグレードを行います。

image.png

アップグレードしますか?
と聞かれるので確認を選択します。

image.png

アップグレードが開始されると「実行中」になります。

image.png

しばらくすると「成功」で「最新」の状態になります。これで完了です。

image.png

事前チェックでのエラーの対処が完了したので、再度アップグレード処理を行いたいと思います。
プレチェック中にエラーが発生しました、再度確認してください。という緑のボタンを選択します。

image.png

すると、アップグレードプロセスが再実行されます。
事前チェックで引っ掛かっていた部分を直したので無事にアップグレードが始まりました。

image.png

おわりに

Alibaba Cloud の Kubernetes サービスのアップグレード方法をご紹介させて頂きました。
アップグレード作業自体も簡単ですし、依存関係のチェックも判りやすいのではないでしょうか?
マネージド型、サーバーレス型の Kubernetes が使えるようになっていますし、色々な機能もありますのでご興味ある方は使ってみてください。

このエントリーをはてなブックマークに追加  

0 件のコメント:

コメントを投稿

Alibaba Cloud Domains でドメインを購入してみました!

今回は Alibaba Cloud Domains でドメインを購入してみたので、その手順を残します。 ちょっと独特と言うか事前準備として所有者情報を作成しておく必要があります。 事前準備 Alibaba Cloud Domains での所有者情報の入力 「Registrant ...