arrow_back

Cloud Trace を使用してアプリケーション レイテンシを表示する

ログイン 参加
700 以上のラボとコースにアクセス

Cloud Trace を使用してアプリケーション レイテンシを表示する

ラボ 1時間 15分 universal_currency_alt クレジット: 5 show_chart 中級
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
700 以上のラボとコースにアクセス

概要

このラボでは、サンプル アプリケーションに HTTP リクエストを送信して Cloud Trace を使用する方法について学習します。

目標

以下の演習を通して、Trace の使用方法を学習します。

  • サンプル アプリケーションを Google Kubernetes Engine(GKE)クラスタにデプロイする。
  • サンプル アプリケーションに HTTP リクエストを送信してトレースを作成する。
  • Trace インターフェースを使用して、作成したトレースのレイテンシ情報を表示する。

設定と要件

各ラボでは、新しい Google Cloud プロジェクトとリソースセットを一定時間無料で利用できます。

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。

    • [Google Cloud コンソールを開く] ボタン
    • 残り時間
    • このラボで使用する必要がある一時的な認証情報
    • このラボを行うために必要なその他の情報(ある場合)
  2. [Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。

    ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。

    {{{user_0.username | "Username"}}}

    [ラボの詳細] パネルでもユーザー名を確認できます。

  4. [次へ] をクリックします。

  5. 以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。

    {{{user_0.password | "Password"}}}

    [ラボの詳細] パネルでもパスワードを確認できます。

  6. [次へ] をクリックします。

    重要: ラボで提供された認証情報を使用する必要があります。Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  7. その後次のように進みます。

    • 利用規約に同意してください。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

その後、このタブで Google Cloud コンソールが開きます。

注: Google Cloud のプロダクトやサービスのリストを含むメニューを表示するには、左上のナビゲーション メニューをクリックするか、[検索] フィールドにサービス名またはプロダクト名を入力します。ナビゲーション メニュー アイコン

タスク 1. アプリケーションをダウンロードしてデプロイする

このタスクでは、GitHub にあるサンプル アプリケーションのダウンロード、Google Kubernetes Engine API の有効化、GKE クラスタの作成、クラスタ認証情報の更新、アクセスの検証、アプリケーションの 3 つのサービスのデプロイを行います。

サンプル アプリケーションをダウンロードしてデプロイする方法は次のとおりです。

  1. Cloud Shell を開くために、Google Cloud コンソールのツールバーで [Cloud Shell をアクティブにする] をクリックします。プロンプトが表示されたら、[続行] をクリックします。

しばらくすると、Google Cloud コンソール内で Cloud Shell セッションが開きます。

  1. GitHub からソースコードをダウンロードするために、次のコマンドを実行します。
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
  1. Google Kubernetes Engine API を有効にするために、次のコマンドを実行します。プロンプトが表示されたら、[承認] をクリックします。
gcloud services enable container.googleapis.com
  1. ゾーンに cloud-trace-demo という名前の GKE クラスタを作成するために、Cloud Shell で次のコマンドを実行します。
ZONE={{{project_0.default_zone|place_holder_text}}} gcloud container clusters create cloud-trace-demo \ --zone $ZONE

このコマンドが完了するまでに数分かかります。正常に完了すると、Google Cloud プロジェクトに cloud-trace-demo という名前の GKE クラスタが追加されます。Google Cloud プロジェクトで外部アクセス権を持つクラスタを作成するには、権限が必要です。

  1. GKE クラスタの認証情報を更新するために、次のコマンドを実行します。
gcloud container clusters get-credentials cloud-trace-demo --zone $ZONE
  1. クラスタへのアクセス権を確認するために、次のコマンドを実行します。
kubectl get nodes

このコマンドの出力例は次のとおりです。

NAME STATUS ROLES AGE VERSION gke-cloud-trace-demo-default-pool-063c0416-113s Ready 78s v1.22.12-gke.2300 gke-cloud-trace-demo-default-pool-063c0416-1n27 Ready 79s v1.22.12-gke.2300 gke-cloud-trace-demo-default-pool-063c0416-frkd Ready 78s v1.22.12-gke.2300
  1. サンプル アプリケーションをデプロイするために、次のコマンドを実行します。
cd python-docs-samples/trace/cloud-trace-demo-app-opentelemetry && ./setup.sh

スクリプト setup.sh は、ビルド済みのイメージを使用してアプリケーションの 3 つのサービスを構成します。ワークロードの名前は、cloud-trace-demo-a、cloud-trace-demo-b、cloud-trace-demo-c です。設定スクリプトはすべてのリソースがプロビジョニングされるのを待機するため、構成が完了するまでに数分かかることがあります。

このコマンドの出力例は次のとおりです。

deployment.apps/cloud-trace-demo-a is created service/cloud-trace-demo-a is created deployment.apps/cloud-trace-demo-b is created service/cloud-trace-demo-b is created deployment.apps/cloud-trace-demo-c is created service/cloud-trace-demo-c is created

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 クラスタを作成し、サンプル アプリケーションをデプロイする

タスク 2. トレースを作成する

このタスクでは、cloud-trace-demo-a に curl リクエストを送信してトレースを生成し、次に Trace でトレースデータを表示します。

  1. cloud-trace-demo-a に curl リクエストを送信してトレースを作成するには、次のコマンドを使用します。
curl $(kubectl get svc -o=jsonpath='{.items[?(@.metadata.name=="cloud-trace-demo-a")].status.loadBalancer.ingress[0].ip}')

curl コマンドを複数回実行すると、複数のトレースを生成できます。

出力は次のようになります。

Hello, I am service A And I am service B Hello, I am service C

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 クラウド トレースを作成する

トレースデータを表示する

  1. Google Cloud コンソールのナビゲーション メニューナビゲーション メニュー アイコン)で、[すべてのプロダクトを表示] > [オブザーバビリティ] > [Trace] をクリックします。

Trace には、分析対象の分散トレースが表示されます。スパン期間のヒートマップが経時的に表示され、同時に個々のスパンのテーブルも表示されます。このテーブルは、サービス名、スパン名、ステータス、期間、種類でフィルタできます。このインターフェースを使用すると、パフォーマンスの問題を調査して、分散システム内のリクエスト フローを把握できます。

グラフビューには、ヒートマップを使用してスパン期間が経時的に表示されます。色付きの各ブロックはスパンを表し、色の濃さは期間を示します。これにより、遅いスパンやレイテンシの傾向をすばやく特定できます。

  1. グラフビューで、より暗いスパン ブロックのいずれかをクリックします。

  2. [スパン] テーブルで、いずれかのスパン ID をクリックします。特定のトレースの詳細が表示されます。各横棒は、トレース内の各スパンの期間を表します。棒の長さはスパンの期間に対応しています。

トレースのこのセクションには、単一のリクエストがシステムを通過する過程が詳細に示されます。リクエストは個々のオペレーション(スパン)に分割され、それぞれのタイミングと関係が示されます。これは、パフォーマンスのボトルネックを特定し、イベントの順序を理解するのに役立ちます。

  1. スパンの詳細を表示するには、スパンの棒のいずれかをクリックします。

各スパンのその他の詳細は、下の詳細ペインに表示されます。

お疲れさまでした

このラボでは、次のタスクを行いました。

  • サンプル アプリケーションを Google Kubernetes Engine(GKE)クラスタにデプロイする。
  • サンプル アプリケーションに HTTP リクエストを送信してトレースを作成する。
  • Trace インターフェースを使用して、作成したトレースのレイテンシ情報を表示する。

これで完了となります。

ラボを終了する

ラボが完了したら、[ラボを終了] をクリックします。ラボで使用したリソースが Google Cloud Skills Boost から削除され、アカウントの情報も消去されます。

ラボの評価を求めるダイアログが表示されたら、星の数を選択してコメントを入力し、[送信] をクリックします。

星の数は、それぞれ次の評価を表します。

  • 星 1 つ = 非常に不満
  • 星 2 つ = 不満
  • 星 3 つ = どちらともいえない
  • 星 4 つ = 満足
  • 星 5 つ = 非常に満足

フィードバックを送信しない場合は、ダイアログ ボックスを閉じてください。

フィードバックやご提案の送信、修正が必要な箇所をご報告いただく際は、[サポート] タブをご利用ください。

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

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボの実行には、シークレット モードまたはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。