このページでは、Google Kubernetes Engine(GKE)について説明します。GKE は、Google のインフラストラクチャを使用して、コンテナ化されたアプリケーションのデプロイと運用を大規模に行うために使用できるマネージド Kubernetes サービスです。このページは、スケーラブルで自動化されたマネージド Kubernetes ソリューションをお探しのプラットフォーム管理者を対象としています。このページをお読みになる前に、Kubernetes のコンセプトを理解しておいてください。
GKE は、Google が管理する Kubernetes オープンソース コンテナ オーケストレーション プラットフォームです。Kubernetes は、Google の社内クラスタ管理システムである Borg で長年積み重ねた本番環境ワークロードの大規模運用の経験を生かして Google が開発したシステムです。
GKE を使ってみる
GKE は数分で使い始めることができます。GKE の無料枠を使用できます。これにより、クラスタ管理に費用をかけずに Kubernetes を開始できます。
- クイックスタートで、コンテナ化されたウェブ アプリケーションをデプロイしてみましょう。
- Autopilot の概要で、プラットフォームの計画と運用に関するガイダンスとリソースをご確認ください。
GKE の使用が適している環境
GKE は、ネットワーキング、スケーリング、ハードウェア、セキュリティなど、コンテナ化されたアプリを実行するインフラストラクチャを構成できるプラットフォームが必要な場合に最適です。GKE は、Kubernetes の運用能力を提供するとともに、コントロール プレーンやノードなど、基盤となる多くのコンポーネントを管理します。
GKE のメリット
次の表に、マネージド Kubernetes プラットフォームとして GKE を使用するメリットを示します。
GKE のメリット | |
---|---|
プラットフォーム管理 |
|
セキュリティ ポスチャーの強化 |
|
費用の最適化 |
|
信頼性と可用性 |
|
Cloud Build、Cloud Deploy、Artifact Registry を使用するようにアプリケーションの CI / CD パイプラインを構成します。マネージド ビルドとデプロイ サービスを使用すると、セキュリティ、スケール、シンプルさを最適化できます。
GKE のユースケース
GKE と Kubernetes は、ロボット工学、医療、小売、教育、ゲーム、金融サービスなど、さまざまな業界で使用されています。次のようなワークロードを実行できます。
- AI と ML の運用
- 大規模なデータ処理
- スケーラブルなオンライン ゲーム プラットフォーム
- 負荷の高い状況で信頼性の高いアプリケーション
業界とアプリケーション別の事例紹介については、Google Cloud のお客様をご覧ください。
GKE の仕組み
GKE 環境はノードで構成されます。ノードは Compute Engine 仮想マシン(VM)であり、グループ化されてクラスタを形成します。アプリ(ワークロードとも呼ばれます)はコンテナにパッケージ化されます。コンテナのセットを Pod としてノードにデプロイします。Kubernetes API を使用して、管理、スケーリング、モニタリングなどのワークロードを操作します。
Kubernetes クラスタにはコントロール プレーンと呼ばれる管理ノードのセットがあり、Kubernetes API サーバーなどのシステム コンポーネントが実行されます。GKE では、コントロール プレーンとシステム コンポーネントが Google によって管理されています。GKE の実行に推奨される Autopilot モードでは、Google がワーカーノードも管理します。Google では、安定性とセキュリティの向上、高可用性の確保、クラスタの永続ストレージに保存されているデータの整合性確保のため、コンポーネントのバージョンを自動的にアップグレードします。
詳細については、GKE クラスタ アーキテクチャをご覧ください。
VM でワークロードを実行する場合は、Migrate for GKE を使用して、アプリの書き換えやソースコードの変更なしにワークロードをコンテナ化することを検討してください。
Kubernetes のバージョンと機能
GKE では、オープンソース プロジェクトの新機能と改善点が利用できるように、コントロール プレーンを新しいバージョンの Kubernetes に自動的にアップグレードします。自動アップグレードに選択される Kubernetes バージョンは、クラスタの作成時に選択した GKE リリース チャンネルの安定版によって異なります。GKE がアップグレードに選択したバージョンとは異なる Kubernetes バージョンにコントロール プレーンを手動でアップグレードすることもできます。バージョンとアップグレードの詳細については、リリースノートと GKE のバージョニングとアップグレードをご覧ください。GKE Standard モードを使用していて、リリース チャンネルに登録していない場合、自動アップグレードが提供されません。
GKE には、Kubernetes のベータ版と安定版の機能の大部分が含まれています。1.24 以降のベータ版 API を使用できます。
アルファ版で安定性の低い Kubernetes 機能を試す場合は、アルファ版の Standard クラスタを使用します。また、本番環境クラスタでベータ版 API を有効にしないでください。有効にする場合は、影響を慎重に検討してください。
運用モード
GKE には、Autopilot と Standard の運用モードがあり、さまざまなレベルの柔軟性、責任範囲、制御に対応しています。
モードを選択する前に詳細情報が必要な場合は、GKE の運用モードを選択するをご覧ください。
フルマネージドの Autopilot モードを使用してください。このモードでは、Google Cloud がノードを管理するので、ワークロードを中心としたプロダクション レディなエクスペリエンスを最適なコストで利用できます。Standard モードは、ノードプールとクラスタを手動で管理する必要がある場合にのみ使用してください。