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 の [ワークロード] ページに移動します。
[
デプロイ ] をクリックします。[既存のコンテナ イメージ] を選択したままにして、[イメージパス] に次のパスを入力します。
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 を新しいサービスとして公開する] を選択します。
[ポート 1] は 80 のままにします。
[ターゲット ポート 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 を含む行を選択して、
[削除] をクリックします。[hello-world-cluster の削除] ウィンドウで、次の操作を行います。
[hello-world-cluster] フィールドに「
hello-world-cluster
」と入力します。[削除] をクリックします。
クラスタの修復に関するエラー メッセージが表示された場合は、プロセスが完了するまで待ってからクラスタを削除します。このオペレーションには時間がかかる場合があります。
他のチュートリアルの手順でログシンクとバケットを作成した場合は、次の操作を行います。
Cloud Logging の [ログストレージ] ページに移動します。
[hello-world-cluster-bucket] を選択し、[削除] をクリックします。
Logging の [ログルーター] ページに移動します。
[hello-world-cluster-sink] を選択し、[削除] をクリックします。
次のステップ
クラスタとワークロードを確認するで、デプロイした主なワークロードの設定とリソースの一部について確認する。
学習プログラム: スケーラブルなアプリケーションで、さらに詳しく学ぶ。
クラスタ管理の概要で、実際のクラスタ管理を開始する方法を確認する。