Google Cloud コンソールでクラスタを作成してワークロードをデプロイする
Kubernetes クラスタは、仮想データセンターと同様に、アプリケーション用のコンピューティング、ストレージ、ネットワーキングなどのサービスを提供します。Kubernetes で実行されるアプリとそれに関連するサービスは、ワークロードと呼ばれます。
このチュートリアルでは、Google Cloud コンソールを使用して、実行中の Google Kubernetes Engine クラスタとサンプル ワークロードを簡単に確認できます。その後、Google Cloud コンソールでワークロードを確認してから、詳細な学習パスに進むか、独自の本番環境対応クラスタの計画と作成を開始できます。
Terraform を使用してサンプル クラスタとワークロードを設定する場合は、Terraform を使用してクラスタを作成するをご覧ください。
このタスクを Google Cloud コンソールで直接行う際の順を追ったガイダンスについては、[ガイドを表示] をクリックしてください。
準備
次の手順で Kubernetes Engine API を有効にします。- Google Cloud コンソールの Kubernetes Engine ページにアクセスします。
- プロジェクトを作成または選択します。
- API と関連サービスが有効になるのを待ちます。 これには数分かかることがあります。
-
Make sure that billing is enabled for your Google Cloud project.
GKE Autopilot モードでクラスタを作成する
Autopilot モードでは、スケーリング、セキュリティなどの事前構成済みの設定を含むクラスタの構成が Google によって管理されます。Autopilot モードのクラスタは、ほとんどの本番環境ワークロードを実行するように最適化されており、Kubernetes マニフェストに基づいてコンピューティング リソースをプロビジョニングします。
Google Cloud コンソールで、GKE の [クラスタ] ページに移動します。
[作成] をクリックします。
[クラスタの基本] で、次の操作を行います。
[名前] フィールドに、次の名前を入力します。
hello-world-cluster
その他の設定はデフォルト値のままとし、[
作成 ] をクリックしてクラスタの作成を開始します。
[Kubernetes クラスタ] ページにリダイレクトされた場合は、[名前] 列の [hello-world-cluster] をクリックします。
クラスタの構成、デプロイ、検証の進行状況を確認できます。
hello-world-cluster ページのタイトルの横にチェックマークが表示されるまで待ちます。
サンプルアプリをクラスタにデプロイする
Google が提供するウェブアプリのサンプル(Hello World)をデプロイして、Artifact Registry にコンテナとして保存します。
Google Cloud コンソールで、GKE の [ワークロード] ページに移動します。
[
Deploy ] をクリックします。[既存のコンテナ イメージ] を選択したままにして、[イメージパス] に次のパスを入力します。
us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0
このシンプルな「Hello World」アプリは 1 つのコンテナにパッケージ化されていますが、大規模なアプリは通常、一緒にデプロイして 1 つのワークロードとして実行できる複数の関連コンテナで構成されています。
[続行] をクリックして [構成] セクションに移動します。
[Deployment 名] に、次の名前を入力します。
hello-world-app
[
Kubernetes クラスタ ] で「hello-world-cluster」を選択します。[続行] をクリックします。
[公開] セクションで、ロード バランシング Kubernetes Service を作成して、外部リクエストをアプリに転送します。
[Deployment を新しいサービスとして公開する] を選択します。
[Port 1] は 80 のままにします。
[Target port 1] に「8080」と入力します。
[デプロイ] をクリックします。
GKE では、自動的に使用可能な外部 IP アドレスが Service に割り振られます。
この Service は hello-world-app ワークロードの一部とみなされます。
Autopilot クラスタの場合、
Does not have minimum availability
などのエラー メッセージが表示されることがあります。これは、Autopilot がノードを削除してから再作成するために発生します。数分待ってから、[更新 ] をクリックしてページを更新します。デプロイが完了し、Deployment の詳細ページが表示されるまで待ちます。
ブラウザでライブデモを表示する
Google Cloud コンソールで、hello-world-app の Deployment の詳細ページに移動します。
Google Cloud コンソールで、GKE の [ワークロード] ページに移動します。
[名前] 列のデプロイしたワークロードの名前 [hello-world-app] をクリックします。
[
エンドポイント ] 列で、公開されている IP アドレスをクリックします。GKE で新しいブラウザタブが開かれ、アプリにリクエストが送信されます。セキュアサイトに関する警告を閉じると、新しいブラウザタブに Hello, world! が表示されます。
[エンドポイント] が空の場合、組織には外部アクセスを禁止するポリシーがある可能性があります。
これで、Autopilot モードで GKE クラスタが正常に作成され、サンプル ワークロードがデプロイされました。
課金が発生しないようにするため、クリーンアップします。
別のチュートリアルを行う場合や、サンプルをさらに確認する場合は、完了するまで待ってからこのクリーンアップ手順を実行してください。サンプルの Kubernetes クラスタは、ほとんどの GKE チュートリアルで引き続き使用できます。
GKE の学習用に新しいプロジェクトを作成しており、そのプロジェクトが不要になった場合は、プロジェクトを削除します。
既存の GKE プロジェクトを使用した場合は、作成したリソースを削除して、アカウントに課金されないようにします。
GKE の [クラスタ] ページに移動します。
hello-world-cluster を含む行を選択して、
[削除] をクリックします。[Delete hello-world-cluster] ウィンドウで、次の操作を行います。
[hello-world-cluster] フィールドに「
hello-world-cluster
」と入力します。[削除] をクリックします。
クラスタの修復に関するエラー メッセージが表示された場合は、プロセスが完了するまで待ってからクラスタを削除します。このオペレーションには時間がかかる場合があります。
他のチュートリアルの手順に沿ってログシンクとバケットを作成した場合は、以下を行います。
Cloud Logging の [ログストレージ] ページに移動します。
[hello-world-cluster-bucket] を選択し、[削除] をクリックします。
Logging の [ログルーター] ページに移動します。
[hello-world-cluster-sink] を選択し、[削除] をクリックします。
次のステップ
クラスタとワークロードを確認するで、デプロイした主なワークロードの設定とリソースの一部について確認する。
学習プログラム: スケーラブルなアプリケーションで、さらに詳しく学ぶ。
クラスタ管理の概要で、実際のクラスタ管理を開始する方法を確認する。