arrow_back

Getting Started with Cloud Shell and gcloud

参加 ログイン

Getting Started with Cloud Shell and gcloud

45分 クレジット: 1

GSP002

Google Cloud セルフペース ラボ

概要

Cloud Shell を使用すると、Google Cloud でホストされているコンピューティング リソースにコマンドラインでアクセスできます。Debian ベースの仮想マシンである Cloud Shell は、5 GB の永続的なホーム ディレクトリを備えており、Google Cloud のプロジェクトやリソースを容易に管理できます。gcloud コマンドライン ツールとその他の必須ユーティリティは Cloud Shell にプリインストールされており、簡単に起動して実行することができます。

このハンズオンラボでは、Cloud Shell と gcloud ツールを使用して、Google Cloud でホストされているコンピューティング リソースに接続する方法について学びます。

基本的なコンセプトを理解できるよう、コマンドは手動で入力することをおすすめしますが、多くのラボで、必要なコマンドが含まれたコードブロックが提供されています。コードブロックのコマンドをコピーして、該当する場所に貼り付けることもできます。

演習内容

  • gcloud コマンドの使い方について実践しながら学ぶ。
  • Google Cloud でホストされているコンピューティング サービスに接続する。

前提事項

  • Linux の標準的なテキスト エディタ(vimemacsnano など)を使い慣れていること。

設定

[ラボを開始] ボタンをクリックする前に

こちらの手順をお読みください。ラボの時間は記録されており、一時停止することはできません。[ラボを開始] をクリックするとスタートするタイマーは、Google Cloud のリソースを利用できる時間を示しています。

この Qwiklabs ハンズオンラボでは、シミュレーションやデモ環境ではなく、実際のクラウド環境を使ってご自身でラボのアクティビティを行うことができます。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

必要なもの

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
  • ラボを完了するために十分な時間

注: すでに個人の Google Cloud アカウントやプロジェクトをお持ちの場合でも、ラボでは使用しないでください。

注: Chrome OS デバイスを使用している場合は、シークレット ウィンドウを開いてこのラボを実行してください。

ラボを開始して Console にログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側のパネルには、このラボで使用する必要がある一時的な認証情報が表示されます。

    Google Console を開く

  2. ユーザー名をコピーし、[Google Console を開く] をクリックします。 ラボでリソースが起動し、別のタブで [アカウントの選択] ページが表示されます。

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

  3. [アカウントの選択] ページで [別のアカウントを使用] をクリックします。

    アカウントを選択

  4. [ログイン] ページが開きます。[接続の詳細] パネルでコピーしたユーザー名を貼り付けます。パスワードもコピーして貼り付けます。

    重要: 認証情報は [接続の詳細] パネルに表示されたものを使用してください。ご自身の Qwiklabs 認証情報は使用しないでください。請求が発生する事態を避けるため、GCP アカウントをお持ちの場合でもそのアカウントはラボで使用しないでください。

  5. 以降のページでは次の点にご注意ください。

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

しばらくすると、このタブで GCP Console が開きます。

Google Cloud Shell の有効化

Google Cloud Shell は、デベロッパー ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Google Cloud Shell では、コマンドラインで GCP リソースにアクセスできます。

  1. GCP Console の右上のツールバーにある [Cloud Shell をアクティブにする] ボタンをクリックします。

    Cloud Shell アイコン

  2. [続行] をクリックします。

    cloudshell_continue

環境のプロビジョニングと接続には少し時間がかかります。接続すると、すでに認証されており、プロジェクトは PROJECT_ID に設定されています。例えば:

Cloud Shell 端末

gcloud は Google Cloud Platform のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。

次のコマンドを使用すると、有効なアカウント名を一覧表示できます。

gcloud auth list

出力:

Credentialed accounts:
- <myaccount>@<mydomain>.com (active)
	

出力例:

Credentialed accounts:
- google1623327_student@qwiklabs.net
	

次のコマンドを使用すると、プロジェクト ID を一覧表示できます。

gcloud config list project
	

出力:

[core]
project = <project_ID>
	

出力例:

[core]
project = qwiklabs-gcp-44776a13dea667a6
	

Cloud Shell を有効にした後にコマンドラインを使用して、Cloud SDK の gcloud ツールや、仮想マシン インスタンスで利用可能なその他のツールを起動することができます。このラボでは、後ほど $HOME ディレクトリを使用します。このディレクトリを使うと、ファイルを永続ディスク ストレージに保存して、複数のプロジェクトと Cloud Shell セッションで使用することができます。$HOME はプライベート ディレクトリであるため、他のユーザーはアクセスできません。

タスク 1: 環境を設定する

ここでは、開発環境の設定可能な要素について学習します。

リージョンとゾーンについて

一部の Google Compute Engine のリソースは、リージョンまたはゾーンに含まれています。リージョンとは、リソースを実行できる特定の地理的位置のことです。各リージョンには、1 つまたは複数のゾーンがあります。たとえば、リージョン us-central1 は米国中部を指し、このリージョンには us-central1-aus-central1-bus-central1-cus-central1-f の各ゾーンが含まれています。次の図は各リージョン内のゾーンを示しています。

regions_and_zones.png

ゾーン内にあるリソースをゾーンリソースと呼びます。仮想マシン インスタンスと永続ディスクはゾーンに含まれています。仮想マシン インスタンスに永続ディスクを接続する場合は、両方のリソースを同じゾーンに配置する必要があります。同様に、静的 IP アドレスをインスタンスに割り当てるには、そのインスタンスを静的 IP アドレスと同じリージョンに配置する必要があります。

リージョンおよびゾーンの詳細と一覧については、リージョンとゾーンのドキュメントをご覧ください。

デフォルトのリージョンとゾーンの設定を確認するには、次のコマンドを実行します。

gcloud config get-value compute/zone
gcloud config get-value compute/region

google-compute-default-region または google-compute-default-zone のレスポンスが(unset)となっている場合は、デフォルトのゾーンまたはリージョンが設定されていないことを意味しています。

デフォルトのリージョンとゾーンを確認する

  1. プロジェクト ID をクリップボードまたはテキスト エディタにコピーします。プロジェクト ID は次の 2 か所に表示されます。

  • Google Cloud Console のダッシュボードにある [プロジェクト情報] の下(ナビゲーション メニュー アイコン ナビゲーション メニュー をクリックした後、[ホーム] > [ダッシュボード] をクリック)

  • [Qwiklabs] タブのユーザー名とパスワードの付近

  1. Cloud Shell で次の gcloud コマンドを実行します。<your_project_ID> は先ほどコピーしたプロジェクト ID に置き換えます。

gcloud compute project-info describe --project <your_project_ID>

コマンドの出力から、デフォルトのゾーンとリージョンのメタデータ値を見つけます。後ほど、この出力されたゾーン(google-compute-default-zone)を使用します。

`google-compute-default-region` または `google-compute-default-zone` のキーと値が出力に含まれていない場合は、デフォルトのゾーンまたはリージョンが設定されていません。

環境変数を設定する

環境変数とは環境を定義する変数のことです。環境変数を設定することで、API や実行可能ファイルを含むスクリプトを作成する際に時間を節約できます。

  1. プロジェクト ID を保存するための環境変数を作成します。<your_project_ID> は、先ほどの gcloud compute project-info describe コマンドで出力された name の値に置き換えます。

export PROJECT_ID=<your_project_ID>
  1. ゾーンを保存するための環境変数を作成します。<your_zone> は、先ほどの gcloud compute project-info describe コマンドで出力された zone の値に置き換えます。

export ZONE=<your_zone>
  1. 変数が適切に設定されていることを確認するために、次のコマンドを実行します。

echo $PROJECT_ID
echo $ZONE

変数が適切に設定されている場合は、echo コマンドでプロジェクト ID とゾーンが出力されます。

gcloud ツールを使用して仮想マシンを作成する

gcloud ツールを使用して新しい仮想マシン(VM)インスタンスを作成します。

  1. VM を作成するには、次のコマンドを実行します。ZONE は、先ほどのコマンドで出力された zone の値に置き換えます。

gcloud compute instances create gcelab2 --machine-type n1-standard-2 --zone $ZONE

(出力)

gcloud_vm.png

コマンドの詳細

  • gcloud compute: Compute Engine のリソースを Compute Engine API よりもシンプルに管理できます。

  • instances create: 新しいインスタンスを作成します。

  • gcelab2: VM の名前です。

  • --machine-type フラグ: 「n1-standard-2」マシンタイプを指定します。

  • --zone フラグ: VM を作成する場所を指定します。

    • --zone フラグを省略した場合、gcloud ツールはデフォルトのプロパティに基づいてユーザーに適したゾーンを推定します。インスタンスに必要なその他の設定(machine typeimage など)が create コマンドで指定されていない場合は、デフォルト値に設定されます。

完了したタスクをテストする

[進行状況を確認] をクリックして、実行したタスクを確認します。gcloud ツールで仮想マシンを正常に作成できた場合は、評価スコアが表示されます。

gcloud による仮想マシンの作成
  • create コマンドのヘルプを開くには、次のコマンドを実行します。

gcloud compute instances create --help
注: Enter キーまたは Space キーを押すと、ヘルプ情報を下にスクロールできます。終了するには、「Q」と入力します。

gcloud コマンドの詳細を確認する

gcloud コマンドの末尾に -h フラグ(help(ヘルプ)の「h」)を付けると、使用方法に関する簡単なガイドラインが表示されます。

  1. 次のコマンドを実行します。

gcloud -h

さらに詳細なヘルプを表示するには、コマンドに --help フラグを付けるか、gcloud help コマンドを実行します。

  1. 次のコマンドを実行します。

gcloud config --help
注: Enter キーまたは Space キーを押すと、ヘルプ情報を下にスクロールできます。終了するには、「Q」と入力します。
  1. 次のコマンドを実行します。

gcloud help config

gcloud config --help コマンドと gcloud help config コマンドはどちらも同じ結果を返し、詳細なヘルプ情報が表示されます。

注: Enter キーまたは Space キーを押すと、ヘルプ情報を下にスクロールできます。終了するには、「Q」と入力します。

gcloudグローバル フラグは、呼び出しごとにコマンドの動作を制御します。フラグは、SDK のプロパティで設定された値よりも優先されます。

  1. 使用環境の構成リストを表示してみましょう。

gcloud config list
  1. すべてのプロパティとその設定を表示してみましょう。

gcloud config list --all
  1. コンポーネントのリストを表示してみましょう。

gcloud components list

このラボで使用可能な gcloud コンポーネントが表示されます。

タスク 2: 新しいコンポーネントをインストールする

次に、gcloud ツールでの作業を容易にする gcloud コンポーネントをインストールします。

オートコンプリート モード

gcloud interactive ではコマンドとフラグの自動プロンプトが表示され、コマンド入力時にそのペインの下のセクションにインライン ヘルプ スニペットが表示されます。

コマンド名、サブコマンド名、フラグ名、列挙フラグ値などの静的情報は、プルダウン メニューを使ってオートコンプリートすることができます。

  1. ベータ版コンポーネントをインストールします。

sudo apt-get install google-cloud-sdk
  1. gcloud interactive モードを有効にします。

gcloud beta interactive

インタラクティブ モードの使用時に Tab キーを押すと、ファイルパスとリソースの引数の入力が補完されます。プルダウン メニューが表示されたら、Tab キーを押してリスト内を移動し、Space キーを押して候補を選択します。

  1. 次のコマンドを入力してこの機能を試してみましょう。オートコンプリートを使用して <your_vm> をプロジェクト内の既存の VM に置き換えます。

gcloud compute instances describe <your_vm>

Cloud Shell ペインの下にコマンドのリストが表示されます。F2 キーを押すと、現在使用中のヘルプ セクションの開閉を切り替えることができます。

タスク 3: SSH を使用して VM インスタンスに接続する

gcloud compute を使用すると、インスタンスに簡単に接続できます。gcloud compute ssh コマンドは SSH のラッパーとして、インスタンス名から IP アドレスへのマッピングと認証を行います。

  1. SSH を使用して VM に接続するには、次のコマンドを実行します。

gcloud compute ssh gcelab2 --zone $ZONE

(出力)

WARNING: The public SSH key file for gcloud does not exist.
WARNING: The private SSH key file for gcloud does not exist.
WARNING: You do not have an SSH key for gcloud.
WARNING: [/usr/bin/ssh-keygen] will be executed to generate a key.
This tool needs to create the directory
[/home/gcpstaging306_student/.ssh] before being able to generate SSH Keys.
Do you want to continue? (Y/n)
  1. 続行するには、「Y」と入力します。

Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase)
  1. パスフレーズを空白のままにするには、Enter キーを押します。

  2. 他に何もする必要はありません。SSH 接続を解除してリモートシェルを終了するには、次のコマンドを実行します。

exit

プロジェクトのコマンド プロンプトに戻ります。

タスク 4: ホーム ディレクトリを使用する

次にホーム ディレクトリを確認してみましょう。Cloud Shell ホーム ディレクトリの内容は、複数のプロジェクトおよびすべての Cloud Shell セッション間で保持され、仮想マシンを終了して再起動した後でも消えずに残ります。

  1. 現在の作業ディレクトリを変更します。

cd $HOME
  1. vi テキスト エディタを使用して .bashrc 構成ファイルを開きます。

vi ./.bashrc

エディタでファイルの内容を開いて表示します。

  1. エディタを終了するには、Esc キーを押してから「:wq」と入力します。

理解度チェック

今回のラボで学習した内容の理解を深めていただくために、以下の多肢選択式の問題を用意しました。

お疲れさまでした

このラボでは、Cloud Shell の起動方法について学び、gcloud のサンプル コマンドを実行してみました。

クエストを完了する

GCP_Essentials_125x135_new.png SDK-01_125.png

このセルフペース ラボは、Qwiklabs の「Google Cloud Essentials」と「Using the Cloud SDK Command Line」クエストの一部です。クエストとは学習パスを構成する一連のラボのことで、完了すると成果が認められて上のようなバッジが贈られます。バッジは公開して、オンライン レジュメやソーシャル メディア アカウントにリンクできます。このラボの修了後、次のクエストに登録すれば、すぐにクレジットを受け取ることができます。受講可能なその他の Qwiklabs のクエストもご確認ください

次のラボを受講する

Provision Services with Google Cloud Marketplace」に進んでクエストを続けるか、以下のおすすめのラボをご確認ください。

次のステップと詳細情報

Google Cloud Training & Certification

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

マニュアルの最終更新日: 2021 年 03 月 03 日
ラボの最終テスト日: 2021 年 03 月 03 日

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