GKE Enterprise の Config Sync 自動アップグレード機能をプレビュー版で提供開始
Kavitha Gowda
Product Manager, Google Cloud
Haiyan Meng
Software Engineer, Google Cloud
※この投稿は米国時間 2024 年 5 月 2 日に、Google Cloud blog に投稿されたものの抄訳です。
Config Sync は、Google Kubernetes Engine (GKE)Enterprise エディションに含まれる Google Cloud のフルマネージド GitOps サービスです。クラスタ オペレーターとプラットフォーム管理者は、Config Sync を使用することで、信頼できる情報源から構成とアプリケーションをデプロイできます。そして本日、新しい自動アップグレード機能のプレビュー版をリリースすることをお知らせします。これにより、Config Sync のバージョンのアップグレードと Config Sync コンポーネントのライフサイクルの監視を自動化できます。
自動アップグレードは、新規および既存の Config Sync インストールでご利用いただけるオプトイン機能です。Config Sync のバージョンを手動で管理したい場合は、自動アップグレードをオプトアウトできます。
利点:
-
メンテナンスのオーバーヘッドの低減: プラットフォーム チームは、新しいバージョンのリリースのモニタリングや複数のクラスタにわたる Config Sync の手動インストールを行う必要がなくなり、大規模なデプロイにおいてオーバーヘッドを大幅に低減できます。
-
サポート対象バージョンに維持: Config Sync バージョンの自動ロールアウトにより、Google Cloud がお客様のクラスタ内の Config Sync をサポート対象バージョンに維持します。
-
信頼性の向上: Google Cloud が Config Sync コンポーネントを管理し、変更があった場合はコンポーネントを調整します。
リリース チャンネルとメンテナンスの時間枠
Config Sync の自動アップグレードで提供されるバージョンは、GKE リリース チャンネル(Rapid、Regular、Stable)に基づきます。新しいバージョンが利用可能になると、クラスタの GKE リリース チャンネルの設定に基づいて、アップグレードするバージョンが選択されます。各リリース チャンネルのサポート対象バージョンについては、こちらをご覧ください。
クラスタで GKE リリース チャンネルが設定されていない場合、Config Sync では Stable のバージョンが使用されます。また、自動アップグレードは、クラスタに指定されているメンテナンスの時間枠に合わせて行われます。
Config Sync の自動アップグレードの有効化
GKE Enterprise クラスタの既存または新規のインストールで Config Sync が有効になっている場合、Google Cloud コンソールまたは gcloud コマンドを使用して自動アップグレードをオプトインできます。現在はプレビュー版のこの機能により、個々のクラスタに対して自動アップグレードを有効にすることも、複数のフリート クラスタ間で同期するフリートレベルのデフォルト設定として自動アップグレードを有効にすることもできます(この場合、設定は「フリートで生成」された新しいクラスタに自動的に適用されます)。プレビューの期間中は、自動アップグレードを有効にすると、手動アップグレードに戻すことはできません。
フリートレベルのデフォルト設定として Config Sync の自動アップグレードを有効にする次の例で示しているように、フリートレベルのデフォルト設定によって、一元化された場所から複数のフリート クラスタにわたり Config Sync の自動アップグレードを有効にでき、各クラスタの設定を個別に変更する必要はありません。
自動アップグレードを有効にするには、先に GKE-Enterprise API を有効にする必要があります。Config Sync の自動アップグレードをフリートレベルのデフォルト設定として有効にし、フリート内の選択したすべてのクラスタにわたってそのデフォルト設定を同期します。同期させた後、選択したフリート クラスタに Config Sync がまだインストールされていない場合は、自動アップグレード機能が有効になっている Config Sync が、それらのクラスタにデプロイされます。Config Sync がすでにインストールされている場合は、それらのクラスタで自動アップグレード機能のみが構成として更新されます。
前述のとおり、クラスタにインストールされる Config Sync のバージョンは、各クラスタの GKE リリース チャンネルに基づきます。チャンネルが指定されていないクラスタでは、Stable のバージョンがインストールに選択されます。
![Video Thumbnail](https://img.youtube.com/vi/KbHBkwP5HE8/hqdefault.jpg)
次の例では、2 つのクラスタに Config Sync バージョン 1.15.0 がインストールされていますが、自動アップグレード機能が有効になっていません。これら 2 つのクラスタにフリートレベルのデフォルト設定が同期されると、Config Sync の構成が自動アップグレードを反映するように変更されます。これらのクラスタでは同期後もバージョンが 1.15.0 のままであることに注意してください。これは、Google Cloud では、自動アップグレードが新しく有効になったクラスタの場合、アップグレードされるまで 24 時間のクールオフ期間が適用されるためです。バージョンのアップグレードのタイミングに影響を与える可能性がある要因として、ほかにもクラスタの作成、クラスタのアップグレード、クラスタに指定されているメンテナンスの時間枠、リリース チャンネルへの新しいバージョンの追加などがあります。
![Video Thumbnail](https://img.youtube.com/vi/GD7GkAt-VaA/hqdefault.jpg)
自動アップグレードが有効になっている Config Sync では、バージョンが管理され、それぞれのリリース チャンネルで新しいバージョンが利用可能になったときに、各クラスタに指定されているメンテナンスの時間枠でバージョンがアップグレードされます。次のデモは、新しいバージョンがリリースされた際にクラスタが更新されたことを示しています。例: no-channel-cluster-1 と no-channel-cluster-2 では、バージョン 1.15.1 が Stable チャンネルにリリースされたときに、バージョン 1.15.0 からバージョン 1.15.1 へのアップグレードが実行されました。また、migrate-1150-rapid クラスタでは、Rapid チャンネルに指定されたバージョンに合わせて、バージョン 1.17.1 にアップグレードされました。
![https://storage.googleapis.com/gweb-cloudblog-publish/images/image1_XoR1NuK.max-2000x2000.png](https://storage.googleapis.com/gweb-cloudblog-publish/images/image1_XoR1NuK.max-2000x2000.png)
![https://storage.googleapis.com/gweb-cloudblog-publish/images/image1_XoR1NuK.max-2000x2000.png](https://storage.googleapis.com/gweb-cloudblog-publish/images/image1_XoR1NuK.max-2000x2000.png)
個々のフリート クラスタに対する自動アップグレードの有効化
一方、コンソールおよび gcloud コマンドを使用して、フリートに登録されている個々のクラスタに対して自動アップグレードを有効にすることもできます。フリート クラスタに Config Sync を新しくインストールする際に、自動アップグレードか手動アップグレードかを選択できます。コンソールを使用して、Config Sync のインストールで自動アップグレードを有効にするフリート クラスタを複数選択することもできます。
現在 Config Sync がインストールされているフリート クラスタの場合、個々のフリート クラスタでクラスタ構成の設定を編集して、自動アップグレードを選択できます。自動アップグレードにアップグレードすると、手動アップグレードに戻すことはできません。
詳細
概して、Config Sync の自動アップグレードを有効にすることで、Config Sync をハンズフリーで管理でき、クラスタに適切なバージョンでサポートされた状態を維持できます。Config Sync の使用を開始する方法の詳細については、以下のリソースをご覧ください。
-
Config Sync を使用して、クラスタ構成を大規模に管理し、ハイブリッド環境で同じ構成を適用する方法の詳細については、こちらのリファレンス アーキテクチャをご覧ください。
-
Goldman Sachs の事例を紹介した動画では、Config Sync を使用した高スケールのクラスタ リソース管理および構成について説明しています。
- 複数の GitOps クラスタ スコープおよび Namespace スコープ構成に関する詳細もご覧ください。
ー Google Cloud、プロダクト マネージャー Kavitha Gowda
ー Google Cloud、ソフトウェア エンジニア Haiyan Meng