Containers & Kubernetes

GKE Autopilot のご紹介: マネージド Kubernetes における革命

#containers

※この投稿は米国時間 2021 年 2 月 25 日に、Google Cloud blog に投稿されたものの抄訳です。

Google が Kubernetes を開発してから数年間で、Kubernetes は IT 運用に革命をもたらし、高度なコンテナ オーケストレーションを求める企業にとって事実上の標準となっています。そして、アプリケーションに最高レベルの信頼性、セキュリティ、スケーラビリティを必要としている組織に選ばれているのが、Google Kubernetes Engine(GKE)です。2020 年の第 2 四半期だけでも、10 万社以上の企業が GKE などの Google のアプリケーション モダナイゼーションのプラットフォームとサービスを使用して、アプリケーションの構築と実行を行っています。Kubernetes はこれまで、お客様のニーズに合わせて最適化を行うにあたり、手動による組み立てや調整を相当必要としていました。そして本日、マネージド Kubernetes の革新的な運用モードである GKE Autopilot をリリースいたしました。この運用モードにより、インフラストラクチャの管理を GKE Autopilot に任せて、お客様はソフトウェアに集中することができます。

Kubernetes と GKE が提供する柔軟性と高度な機能は、クラスタ構成における要素の大部分を詳細に管理できるなど、多くの企業にとって理想的な機能です。しかし、単純により安全で一貫性のある開発プラットフォームを簡単に構築する方法を求めている企業にとって、ここまで細かな管理機能や選択肢は、ワークロードの要件に対して過大であったり不要であったりすることがあります。これを支援するのが Autopilot です。Kubernetes を導入しやすくし、クラスタ インフラストラクチャ、コントロール プレーン、ノードを管理することで、運用を簡素化します。

Autopilot は最適化された、本番環境ですぐに使用できるクラスタを備えており、強固なセキュリティ体制と運用に適した構成を提供できるため、クラスタ構成の細部まで学習する必要性を減らします。また、クラスタ インフラストラクチャの管理により、Autopilot は Day-2(2 日目からの)運用費用とメンテナンス費用を削減しながら、リソース使用率を向上させます。Autopilot は人による操作が不要なフルマネージドの Kubernetes 環境であるため、クラスタ インフラストラクチャの管理に費やす時間が減り、代わりにワークロードに注力できます。

1 つの GKE、2 つの運用モード

Autopilot の登場により、GKE ユーザーは 2 つの異なる運用モードを選択できるようになりました。それぞれが、GKE クラスタに対する独自の制御レベルを備え、GKE に関連した相対的な役割を担っています。

GKE はすでに業界トップレベルの自動化を提供しており、Kubernetes クラスタの設定と運用を、ユーザー自身で行う方法や他のマネージド サービスよりも、簡単で費用効果の高いものにしています。つまり、Autopilot はさらなる飛躍を表しているといえるでしょう。GKE がこれまで提供してきたフルマネージドのコントロール プレーンに加え、Autopilot の運用モードを使用することで、業界のベスト プラクティスの自動的な適用、すべてのノード管理操作の排除、クラスタの効率の最大化、より強固なセキュリティ体制を実現できます。

gke autopilot.jpg
GKE Autopilot

GKE は常に、Kubernetes を簡素化しながら、制御もできるようにすることを目指してきました。しかし、中には Kubernetes クラスタの構成をカスタマイズしたり、クラスタのノード インフラストラクチャを手動でプロビジョニングして管理したりすることをお考えのお客様もいらっしゃるかもしれません。その場合、Standard と呼ばれる GKE の従来の運用モードで GKE を引き続き使用できます。これにより、GKE が現在提供しているのと同様の構成の柔軟性が提供されます。

gke standard.jpg
GKE Standard

管理を GKE に任せる

早期アクセスのお客様は、Autopilot を採用することで、Kubernetes 環境のパフォーマンス、セキュリティ、復元性を劇的に向上させながら、Autopilot クラスタの管理に必要となる全体的な作業負荷を減らせる可能性があるという感想をお持ちです。こうしたお客様は次のようなメリットに期待を寄せています。

Kubernetes のエキスパートのように本番環境を最適化

Autopilot を使用すると、Google の SRE とエンジニアリングの経験から学んだ実用的かつ強化されたベスト プラクティスに基づいて、GKE でクラスタが作成されます。こうして作成された最適化済みの構成はすぐに本番環境で使用でき、GKE の習得期間の短縮につながります。また、GKE はワークロードの仕様に基づいてクラスタ インフラストラクチャを自動でプロビジョニングし、ノード インフラストラクチャの管理と維持を行うことも可能です。

「重要なのは複雑さを軽減しつつ、Kubernetes を最大限に活用することでした。GKE Autopilot はまさにそれを叶えてくれます。」 - Strabag International チームリーダー Mario Kleinsasser 氏

高度なセキュリティ対策を最初から実施 

GKE は、最下層ハードウェアの強化から、仮想化、オペレーティング システム、Kubernetes、コンテナレイヤまで、クラスタを保護するための機能をすでに数多く備えています。Autopilot を使用すると、何年にもわたる GKE フリート実行の経験に基づいて GKE でクラスタ インフラストラクチャを保護できます。Autopilot は Shielded GKE NodesWorkload IdentityBinary Authorization といった GCP 独自のセキュリティ機能を活用して、GKE の強化ガイドラインとセキュリティに関するベスト プラクティスを実施します。さらに、安全性が低いと見なされる一部の機能(外部 IP サービスや従来の認可方法など)をブロックし、CAP_NET_RAW を無効にして特定の暗号スイートの使用を制限します。Autopilot は個々の Kubernetes ノードをロックして、クラスタの攻撃対象領域を縮小し、これまでのようなセキュリティ構成上のミスを最低限に抑えます。

Google をノードとコントロール プレーン両方の SRE として使用 

Google SRE による GKE のクラスタ管理はすでに行われていますが、Autopilot を使用すると、Google SRE はノードも管理するようになり、プロビジョニング、メンテナンス、ライフサイクル管理なども可能になります。Autopilot のノードは遮断されているため、システム管理者レベルの変更によりノードがサポート不能になるような事態を防げます。また、Autopilot はメンテナンスの時間枠と Pod 停止予算にも対応しており、柔軟なメンテナンスが可能です。ホストとコントロール プレーンに対する SLA だけでなく、初となる Pod に対する SLA も含まれています。

「GKE Autopilot は、私たちが心待ちにしていた本物のサーバーレス K8s プラットフォームです。開発者が自身のワークロードに集中して、基盤となるインフラストラクチャの管理を Google SRE に任せられます。」 - Via Transportation, Inc. エンジニアリング担当バイス プレジデント Boris Simandoff 氏

最適化されたリソースの使用に対してのみ課金 

Autopilot を使用すると、ワークロードの仕様と動的な負荷に基づいて基盤となるコンピューティング インフラストラクチャのプロビジョニングとスケーリングが行われ、リソース最適化の効率が向上します。Autopilot は動的にコンピューティング リソースを調整するので、ワークロードに対し構成するノードの規模や形態を検討する必要がありません。Autopilot では使用した Pod に対する料金のみ発生します。vCPU、メモリ、ディスクのリソース リクエストに対し秒単位で課金されるため、未使用の容量に関する懸念がなくなります。

GKE パートナーのエコシステムに対応

Autopilot は、GKE の幅広い既存機能だけでなく、パートナーのソリューションとも互換性が維持されるよう設計されています。設定変更などは不要で、Autopilot でそのまま DataDog のロギングとモニタリング、GitLab の CI / CD を使用できます。いずれの機能も、現在の GKE で使用する場合と同様に動作します。構成を変えたり、サイドカーを使用したりする必要はありません。すべてのパートナーとの互換性を確保することを目標として、今後数か月間に数多くの統合をリリースしていく予定です。

Kubernetes 革命に参加する

GKE には複雑な分散アプリケーションの実行効率を劇的に向上させる力があります。GKE Autopilot は、その力を管理面と運用面でさらに大きく飛躍させるものです。Autopilot は本日[1] より一般提供となります。Autopilot が Kubernetes 環境にもたらす変化をぜひ体験してみてください。無料枠を使って今すぐお試しいただけます。

GKE Autopilot の詳細は、GKE Autopilot のプロダクト マネージャーである Yochay Kiriaty が出演している Kubernetes ポッドキャストの今週のエピソードでお聴きいただけます。

イベントのお知らせ: オンライン イベント、Build the future with Google Kubernetes Engine(Google Kubernetes Engine で未来を築く)が 3 月 11 日に開催されます。Google Cloud のコンテナと Kubernetes に関する最新情報や、限定デモ、エキスパートによる説明をご覧いただけます。ご参加をお待ちしております

*1. 現在、Autopilot にはコマンドライン インターフェース(CLI)からアクセスしていただけます。すべての GCP リージョンで Autopilot を Google Cloud Console でご利用いただけるよう、段階的に展開中です。Cloud Console にまだ Autopilot のオプションが表示されない場合は、CLI をお使いになるか、しばらくしてからもう一度お試しください。

- GKE  グループ プロダクト マネージャー Drew Bradstock