gcloud compute


gcloud コマンドライン ツールでは、gcloud compute コマンド グループを使用して Compute Engine リソースを管理できます。gcloud compute は、Compute Engine API の代わりに使用できます。

gcloud ツールは、Cloud SDK に含まれる統合型のコマンドライン ツールです。このツールには、ステートメントのオートコンプリート、インプレース更新、コマンドラインのヘルプ、人が読める形式とマシンで解析できる形式に対応した出力形式、Cloud SDK との統合機能など、さまざまな機能が備わっています。

これまでに Compute Engine を使用したことがない場合は、最初に Linux クイックスタートまたは Windows クイックスタートのいずれかをご覧ください。

始める前に

  • コマンド プロンプトで gcloud compute を実行する場合は、Cloud SDK のインストール、更新、初期化を行います。
  • すぐに利用できるコマンド プロンプトがない場合は、Cloud Shellgcloud compute を使用します。Cloud Shell は、最新の Cloud SDK で自動的にインストールされ、更新と初期化が行われます。

デフォルト プロパティ

仮想マシン インスタンスを作成すると、Compute Engine はメタデータ サーバーのデフォルト プロパティを使用して VM を構成します。次のコマンドを実行すると、VM のデフォルト プロパティを確認できます。

gcloud compute project-info describe --project PROJECT_ID

PROJECT_ID を実際のプロジェクト ID に置き換えます。

デフォルトのリージョンとゾーン

一部の gcloud compute コマンドでは、--region フラグまたは --zone フラグを指定する必要があります。コマンドを実行するたびにフラグを指定する代わりに、プロジェクトのデフォルトのリージョンとゾーンを設定できます。デフォルトのリージョンまたはゾーンを設定せずに、リージョンまたはゾーンに依存するコマンドを実行する場合は、gcloud コマンドライン ツールから --region または --zone フラグを指定するように指示されるか、エラーが返されます。

デフォルトのリージョンとゾーンを設定するには、次の 3 つの方法があります。

  • メタデータ サーバー。メタデータ サーバーに設定されているデフォルトのリージョンとゾーンは、gcloud init の実行時にローカル クライアントに適用されます。
  • ローカル クライアント。ローカル クライアントに設定されているデフォルトのリージョンとゾーンは、メタデータ サーバーに設定されているデフォルトのリージョンとゾーンをオーバーライドします。
  • 環境変数。環境変数に設定されたデフォルトのリージョンとゾーンは、ローカル クライアントとメタデータ サーバーに設定されているデフォルトのリージョンとゾーンよりも優先されます。

コマンドの実行時に --region フラグと --zone フラグを指定すると、メタデータ サーバー、ローカル クライアント、または環境変数に設定された デフォルトのリージョンとゾーンをオーバーライドできます。

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

構成のデフォルトのリージョンとゾーンを表示するには、次のコマンドを実行します。

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

出力が (unset) の場合、デフォルトのリージョンまたはゾーンが設定されていません。

利用可能なリージョンとゾーンを表示する

リージョンとゾーンの一覧を表示するには、次のコマンドを実行します。

gcloud compute regions list
gcloud compute zones list

メタデータ サーバーでデフォルトのリージョンとゾーンを設定する

メタデータ サーバーに設定されたデフォルトのリージョンとゾーンは、プロジェクト内のすべての構成に適用されます。メタデータ サーバーでデフォルトのリージョンとゾーンを設定するには、次の手順に従います。

  1. デフォルトのリージョンとゾーンを設定します。

    gcloud compute project-info add-metadata \
       --metadata=[google-compute-default-region=REGION | google-compute-default-zone=ZONE]
    

    例:

    gcloud compute project-info add-metadata \
       --metadata google-compute-default-region=europe-west1,google-compute-default-zone=europe-west1-b
    
  2. ローカル クライアントで変更を初期化します。

    gcloud init

メタデータ サーバーに設定されたデフォルトのリージョンとゾーンをオーバーライドするには、ローカル クライアントまたは環境変数にデフォルトのリージョンとゾーンを設定します。あるいは、コマンドに --zone または --region フラグを指定します。

メタデータ サーバーでデフォルトのリージョンとゾーンの設定を解除する

メタデータ サーバーでデフォルトのリージョンとゾーンの設定を解除するには、次の手順に従います。

  1. メタデータの設定を解除します。

    gcloud compute project-info remove-metadata \
       --keys=[google-compute-default-region | google-compute-default-zone]
    
  2. ローカル クライアントで変更を初期化します。

    gcloud init

ローカル クライアントでデフォルトのリージョンとゾーンを設定する

ローカル クライアントに設定されているデフォルトのリージョンとゾーンは、メタデータ サーバーに設定されているデフォルトのリージョンとゾーンをオーバーライドします。

ローカル クライアントでデフォルトのリージョンとゾーンを設定するには、次のコマンドを実行します。

gcloud config set compute/region REGION
gcloud config set compute/zone ZONE

ローカル クライアントでデフォルトのリージョンとゾーンの設定を解除する

ローカル クライアントで、デフォルトのリージョンまたはゾーンの設定を解除するには、次のコマンドを実行します。

gcloud config unset compute/zone
gcloud config unset compute/region

ローカル クライアントで設定されているデフォルトのリージョンとゾーンをオーバーライドするには、環境変数でデフォルトのリージョンとゾーンを設定するか、コマンドに --zone フラグまたは --region フラグを指定します。

環境変数でデフォルトのリージョンとゾーンを設定する

環境変数に設定されたデフォルトのリージョンとゾーンは、ローカル クライアントとメタデータ サーバーに設定されているデフォルトのリージョンとゾーンよりも優先されます。

Linux / macOS

export コマンドを使用して、リージョン変数とゾーン変数を設定します。

export CLOUDSDK_COMPUTE_REGION=REGION
export CLOUDSDK_COMPUTE_ZONE=ZONE

これらの環境変数を永続化するには、これらのコマンドを ~/.bashrc ファイルに記述し、ターミナルを再起動します。

Windows

set コマンドを使用して、リージョン変数とゾーン変数を設定します。

set CLOUDSDK_CORE_REGION=REGION
set CLOUDSDK_COMPUTE_ZONE=ZONE

環境変数をオーバーライドするには、コマンドに --zone フラグまたは --region フラグを指定します。

環境変数でデフォルトのリージョンとゾーンの設定を解除する

環境変数のデフォルト リージョンとゾーンの設定を解除するには、次のコマンドを使用します。

Linux / macOS

環境変数のリージョンとゾーンの設定を解除するには、次の unset コマンドを使用します。

unset CLOUDSDK_COMPUTE_REGION
unset CLOUDSDK_COMPUTE_ZONE

Windows

環境変数のリージョンとゾーンの設定を解除するには、次のコマンドを使用します。

set CLOUDSDK_CORE_PROJECT=
set CLOUDSDK_COMPUTE_ZONE=

フラグを使ってデフォルトのリージョンとゾーンをオーバーライドする

--region フラグと --zone フラグを使用して、メタデータ サーバー、ローカル クライアント、環境変数で設定されたデフォルトのリージョンとゾーンをオーバーライドします。

例:

gcloud compute instances create example-instance \
    --region=REGION \
    --zone=ZONE \

構成

gcloud topic configurations は、gcloud ツールの動作に影響を与える高度な機能です。ほとんどのユーザーはデフォルトの構成で十分です。

構成は次の場合に便利です。

  • 複数のプロジェクトを使用する。プロジェクトごとに個別の構成を作成できます。
  • 複数のアカウントを使用する。たとえば、ユーザー アカウントとサービス アカウントなど。
  • さまざまな独立したタスクを実行する(たとえば、あるプロジェクトで App Engine アプリを使用しながら、us-central-1a ゾーンの Compute Engine クラスタを管理し、asia-east-1 リージョンのネットワーク構成を管理する場合など)。

構成を切り替えるには、次のコマンドを実行します。

gcloud config configurations activate CONFIGURATION_NAME

構成の管理の詳細については、gcloud config configurations をご覧ください。

次のステップ