gcloud compute


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

gcloud CLI は Google Cloud CLI の一部であり、ステートメントの予測入力、インプレース更新、コマンドライン ヘルプ、人間が読める形式およびマシン解析可能な出力形式、Google Cloud CLI との統合などの機能を含む統合コマンドライン ツールです。

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

始める前に

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

デフォルト プロパティ

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

gcloud compute project-info describe --project PROJECT_ID

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

デフォルトのプロジェクト

Google Cloud CLI をセットアップして初期化するときにデフォルトのプロジェクトを設定した場合、すべての gcloud compute コマンドではデフォルトでそのプロジェクト ID が使用されます。

次のいずれかの方法で、デフォルトのプロジェクト ID をオーバーライドできます。

  • --project フラグを指定して、各 gcloud compute コマンドを実行する
  • CLOUDSDK_CORE_PROJECT 環境変数を設定する

    Linux / macOS

    export コマンドを使用して、プロジェクトの環境変数を設定します。

    export CLOUDSDK_CORE_PROJECT=PROJECT_ID
    

    PROJECT_ID は、デフォルトとして使用するプロジェクトのプロジェクト ID に置き換えます。

    プロジェクトの環境変数の設定解除

    プロジェクトの環境変数を設定解除する必要がある場合は、次の unset コマンドを使用します。

    unset CLOUDSDK_CORE_PROJECT
    

    Windows

    set コマンドを使用して、プロジェクトの環境変数を設定します。

    set CLOUDSDK_CORE_PROJECT=PROJECT_ID
    

    PROJECT_ID は、デフォルトとして使用するプロジェクトのプロジェクト ID に置き換えます。

    プロジェクトの環境変数の設定解除

    プロジェクトの環境変数を設定解除する必要がある場合は、次のコマンドを使用します。

    set CLOUDSDK_CORE_PROJECT=
    

デフォルトのプロジェクトまたは環境変数を設定していない場合、実行する各 gcloud compute コマンドに --project フラグを含める必要があります。

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

一部の gcloud compute コマンドでは、--region フラグまたは --zone フラグを指定する必要があります。コマンドを実行するたびにフラグを指定する代わりに、プロジェクトのデフォルトのリージョンとゾーンを設定できます。デフォルトのリージョンまたはゾーンを設定せずに、リージョンまたはゾーンに依存するコマンドを実行すると、Google Cloud CLI から --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_COMPUTE_REGION=REGION
set CLOUDSDK_COMPUTE_ZONE=ZONE

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

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

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

Linux / macOS

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

unset CLOUDSDK_COMPUTE_REGION
unset CLOUDSDK_COMPUTE_ZONE

Windows

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

set CLOUDSDK_COMPUTE_REGION=
set CLOUDSDK_COMPUTE_ZONE=

フラグを使用してデフォルトのゾーンをオーバーライドする

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

例:

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

構成

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

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

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

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

gcloud config configurations activate CONFIGURATION_NAME

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

次のステップ