コンテンツに移動
Containers & Kubernetes

GKE Autopilot モードがバースト可能なワークロードと小さいサイズの Pod に対応

2024年4月9日
Google Cloud Japan Team

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

Google Kubernetes EngineGKE)の Autopilot モードは、Pod ベースのフルマネージド Kubernetes プラットフォームです。Autopilot モードでは、完全に機能する Kubernetes API を使って画期的な機能を利用できます。StatefulSet をサポートし、ブロック ストレージや GPU といったノードレスまたはサーバーレス版の Kubernetes サービスでは通常提供されない重要な機能を備えながら、Pod レベル SLA と非常にシンプルなデベロッパー向け API を提供します。

同じカテゴリに属する他のプロダクト同様、これまでの Autopilot ではワークロードによってリクエストされた以上の量の CPU リソースやメモリリソースを一時的にバーストする機能を提供していませんでした。このたび、Google Cloud GKE Autopilot 独自の設計により、バースト可能なワークロードを GKE Autopilot でサポートできるようになりました。

バースト機能は、Pod がリクエストする課金対象のリソース以外のリソースを Pod が一時的に利用できるようにします。バースト機能はどのような仕組みなのでしょうか?また、Pod ベースのモデルである Autopilot はバースト機能にどのようにして対応するのでしょうか?その鍵は、Autopilot モードにおいても Pod はノード上でグループ化されることにあります。このことが、柔軟な Pod サイズなどの Autopilot 特有の機能を可能にしています。バースト機能では Pod の容量がプールされ、リクエストする使用量よりも高い上限が設定された Pod は、そのプールされた容量を(利用な可能な場合)一時的に利用することができます。

バースト機能の導入と同時に、もう一つの革新的な変化として、50 mCPU Pod が導入されました。これは 1 vCPU Pod 20 分の 1 のサイズということになります。これまで提供されていた Pod の中で最もサイズの小さいものは、今回導入された Pod 5 倍の大きさである 1/4 vCPU コア(250 mCPU に相当)の Pod でした。バースト機能と組み合わせて利用することで、Pod のリソース リクエストによる制約を受けることなく、Autopilot 上で高密度かつ小規模なワークロードを実行することが可能になります。

また、これまで CPU リソースは 250 mCPU 単位でしか設定できませんでしたが、最小サイズから最大サイズの範囲内の任意のサイズの Pod を作成できるようになりました。たとえば、59 mCPU302 mCPU808 mCPU7682 mCPU などのサイズの Pod が作成可能です(メモリと CPU の比率は自動的にサポートされる範囲内に調整され、必要に応じてサイズが大きくなります)。細かいサイズ設定が可能になったことで、ワークロードのサイズの自動調整をサポートする垂直 Pod 自動スケーリングがその効果をさらに発揮できるようになりました。適切なリソース要件を把握する作業を自動化したいという要望がある場合は、ぜひ垂直 Pod 自動スケーリングをお試しください。

GKE Autopilot を利用されている Ubie 株式会社からは、以下のコメントをいただいています。

https://storage.googleapis.com/gweb-cloudblog-publish/images/ubie.max-700x700.jpg

「GKE Autopilot のおかげでインフラストラクチャの管理から解放され、アプリケーションの開発やデプロイに注力できるようになりました。Autopilot は、ノードの最適化という課題を解決してくれます。これは、変化の激しい環境におかれているスタートアップにとって非常に大きなメリットです。Autopilot にバースト機能が導入され、CPU の最小量が引き下げられたことで、費用を最適化し、サイドカーなどのマルチコンテナ アーキテクチャを実現することが可能になりました。すでに Autopilot モードで大量のワークロードを実行していますが、これらの新しい機能が追加されたことで、残りのクラスタも Autopilot モードに移行するのが楽しみになりました。」 - Ubie 株式会社、基盤開発エンジニアリング マネージャー、坂田純

高密度のワークロードのための新たな環境

Autopilot は高密度のワークロードを実行するのに最適な場所です。たとえば、Pod の小さなレプリカが大量に存在するマルチテナント アーキテクチャの場合、各レプリカによって運用されているウェブサイトが受信するトラフィック量は比較的少ないですが、時折トラフィックが急増することがあります。新しく追加されたバースト機能と 50 mCPU という最小サイズの Pod を組み合わせることで、何千もの Pod を費用対効果に優れた方法(1 vCPU あたり最大 20)でデプロイしながら、トラフィックの急増時はプールされたレプリカの容量を Pod が一時的に利用することが可能になります。

さらに優れた点として、ワークロードのビンパッキングや使用率の低い大規模ノード(例: 単一の 50 mCPU が割り当てられている Pod を実行する 32 コアのノード)といった問題に対処する必要がなくなります。そうした問題は Autopilot が自動で処理するため、ユーザーは優れたサービスを構築するという本来の業務に集中することができます。

スタートアップ、学生、個人事業主のニーズに対応

これまでの Autopilot は、ワークロード プラットフォームを初めて利用するユーザーにとって必ずしも最適な場所ではなかったかもしれませんが、今ではそうしたユーザーのワークロードの配置先としても利用できます。最小サイズが 50 mCPU になったことで、コンテナを us-central1 で実行する場合、コンテナ 1 つにつき(50 mCPU、50 MiB)月額 $2 以下という費用で実行できるようになりました。トラフィックが急増したときはバースト機能を使って追加の CPU を使用することができるので、小さいサイズに制限されることはありません。ミッション クリティカルでないワークロードの場合は、より低額の Spot モードでも実行できます。

GKE 無料枠により、現在のインターネット上で最大規模のサイトが利用するのと同じ世界水準のインフラストラクチャを利用しながら、月額 $30 という低額で小規模なワークロード(本番環境グレードのロード バランシングなど)を us-central1 において実行することが可能です。重要な点として、本番環境グレードの Kubernetes クラスタ上でワークロードを実行しているため、スタートアップが成長した場合も移行を必要とせずに同じ環境でスケーリングすることができます。そのため、運用環境の制限について心配することなく、小規模で始めることが可能です。Google は、Autopilot の利用がお客様のビジネスの成功につながることを願っています。

また、Autopilot は GKE や Kubernetes の学習者にとっても優れたプラットフォームです。実際の本番環境システム上での学習に勝るものはありません。業務では、そうしたシステムを使用することになるからです。上記の新機能を備えた Autopilot はアカウントごとに 1 つのクラスタを無料で利用することができ、素晴らしい学習環境を提供します。また、学習の終了に伴い Kubernetes ワークロードやネットワーキング リソースを削除した場合、関連する費用の請求も停止します。利用を再開したい場合は、もう一度リソースを作成することで再開できます。さらに、コンピューティング リソースだけを削除し、永続ディスクを保存しておけば、学習セッション間で状態を保持しておくことも可能です。初期使用量をカバーできる $300 分の無料トライアルもご利用いただけます。

次のステップ:

-Google Kubernetes Engine、グループ プロダクト マネージャー William Denniss

投稿先