arrow_back

Kubernetes クラスタでのコンテナ化されたアプリケーションのスケールアウトと更新: チャレンジラボ

ログイン 参加
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Kubernetes クラスタでのコンテナ化されたアプリケーションのスケールアウトと更新: チャレンジラボ

Lab 1時間 universal_currency_alt クレジット: 5 show_chart 中級
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP305

Google Cloud セルフペース ラボ

概要

チャレンジラボでは、シナリオと一連のタスクが提供されます。手順ガイドに沿って進める形式ではなく、コース内のラボで習得したスキルを駆使して、ご自身でタスクを完了していただきます。タスクが適切に完了したかどうかは、このページに表示される自動スコアリング システムで確認できます。

チャレンジラボは、Google Cloud の新しいコンセプトについて学習するためのものではありません。デフォルト値を変更する、エラー メッセージを読み調査を行ってミスを修正するなど、習得したスキルを応用する能力が求められます。

100% のスコアを達成するには、制限時間内に全タスクを完了する必要があります。

このラボは、Google Cloud Certified Professional Cloud Architect 認定試験に向けて準備している受講者を対象としています。ぜひチャレンジしてください。

チャレンジ シナリオ

あなたは、テスト環境の所有権を引き継ぎ、デプロイ対象のコンテナ化されたテスト アプリケーションの最新版を提供されました。システムのアーキテクチャ チームは、コンテナ化されたマイクロサービス アーキテクチャの導入を開始しています。あなたは、このコンテナ化されたテスト用ウェブ アプリケーションを管理する責任があります。まず、echo-app という名前が付けられたテスト アプリケーションの最初のバージョンを、echo-web という Deployment の echo-cluster という Kubernetes クラスタにデプロイします。すると、 ゾーンにクラスタがデプロイされます。

  1. チャレンジを開始する前に、ナビゲーション メニューで [Cloud Storage] をクリックします。

  2. echo-web-v2.tar.gz ファイルが バケットに格納されていることを確認します。

関連するバケットを表示する Storage ブラウザ

次に、GKE クラスタが作成されていることを確認してから操作を続けます。

  1. ナビゲーション メニューで [Kuberntes Engine] > [クラスタ] を選択します。

echo-cluster の横に緑色のチェックマークが表示されているのを確認したら、続行します。

Kubernetes クラスタページで緑色のチェックマークが表示されている echo-cluster

  1. アプリケーションの最初のバージョンをデプロイするために、Cloud Shell で次のコマンドを実行します。
gcloud container clusters get-credentials echo-cluster --zone={{{project_0.default_zone | ZONE }}} kubectl create deployment echo-web --image=gcr.io/qwiklabs-resources/echo-app:v1 kubectl expose deployment echo-web --type=LoadBalancer --port 80 --target-port 8000

チャレンジ

echo-web Deployment で実行中の echo-app アプリケーションを、v1 のコードから、提供された v2 のコードに更新する必要があります。また、アプリケーションを 2 つのインスタンスにスケールアウトし、すべて正常に動作していることを確認する必要もあります。

タスク 1. 新しいタグ付きの更新版アプリケーションをビルドしデプロイする

更新されたサンプル アプリケーション(Dockerfile やアプリケーション コンテキスト ファイルなど)は、echo-web-v2.tar.gz と呼ばれるアーカイブに含まれています。このアーカイブは、 というラボ プロジェクトの Cloud Storage バケットにコピーされています。V2 のアプリケーションでは、アプリケーションの出力にバージョン番号が追加されます。このタスクでは、アーカイブをダウンロードし、Docker イメージをビルドして、そのイメージを v2 タグでタグ付けします。

タスク 2. イメージを Container Registry に push する

あなたの組織では、Container Registry を使用してデプロイ用の Docker イメージをホストし、すべてのプロジェクトに gcr.io という Container Registry のホスト名を使用しています。更新済みのイメージを Container Registry に push してからデプロイする必要があります。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。gcr.io に echo-app:v2 のタグ付きイメージがあることを確認します。

タスク 3. 更新されたアプリケーションを Kubernetes クラスタにデプロイする

このタスクでは、更新されたアプリケーションを Kubernetes クラスタにデプロイします。Deployment の名前は「echo-web」とし、ポート 80 でアプリケーションを公開する必要があります。また、クラスタの外部からアプリケーションにアクセスできる必要があります。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。更新したアプリケーションのバージョン(v2)を Kubernetes クラスタにデプロイします。

タスク 4. アプリケーションをスケールアウトする

このタスクでは、アプリケーションを 2 つのレプリカにスケールアウトする必要があります。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。2 つのレプリカを実行できるように、Kubernetes アプリケーションをスケールアウトします。

タスク 5. アプリケーションが実行されていることを確認する

このタスクでは、アプリケーションが実行されていて、かつ適切に応答していることを確認する必要があります。アプリケーションの外部 IP アドレスを使用してテストできます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。デプロイしたアプリケーション サービスが適切に応答していることを確認します。

トラブルシューティング

504 ゲートウェイ タイムアウト エラーが発生する: アプリケーションの初期化がまだ完了していない可能性があります。ただし、Dockerfile で設定されているデフォルト ポート(TCP ポート 8000)と以下のいずれかが一致していないことが原因の場合もあります。

  • アプリケーション イメージをデプロイする際に構成したアプリケーション ポート
  • 外部アクセスを構成した際に選択したアプリケーション ポート

お疲れさまでした

これで完了です。このラボでは、コンテナ化されたアプリケーションを Kubernetes クラスタにデプロイして、アプリケーションの更新とスケールアウトを行いました。これで、コンテナ化されたアプリケーションの世界に踏み出す準備が整いました。

Google Cloud トレーニングと認定資格

Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。

マニュアルの最終更新日: 2024 年 3 月 19 日

ラボの最終テスト日: 2024 年 3 月 19 日

Copyright 2024 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。