デフォルトでは、すべてのインスタンスに、インスタンスが使用する VPC ネットワークを決定する単一のネットワーク インターフェースがあります。複数のネットワーク インターフェースを持つインスタンスを作成できますが、各インターフェースは異なる VPC ネットワークに接続する必要があります。各ネットワークには、インスタンスに割り当てることができる IPv4 または IPv6 アドレスの範囲を定義するサブネットが 1 つ以上必要です。
詳しくは次のページをご覧ください。
- インスタンスの作成時に割り当てられる IP アドレス: IP アドレス
- デュアルスタックまたは IPv6 専用(プレビュー版)インスタンスの作成: インスタンスとインスタンス テンプレートでの IPv6 の構成
デフォルトでは、 Google Cloud は、プロジェクトごとに default
という名前の自動モードの VPC ネットワークを作成します。別のネットワークまたは、自動モードまたはカスタムモードの VPC ネットワークで手動で作成したサブネットを使用するには、インスタンスの作成時にサブネットを指定し、ネットワーク インターフェースを構成する必要があります。
始める前に
-
まだ設定していない場合は、認証を設定します。認証とは、 Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のいずれかのオプションを選択して Compute Engine に対する認証を行います。
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- プロジェクトに対する
compute.instances.create
-
インスタンスのサブネットを指定する: プロジェクトまたは選択したサブネットに対する
compute.subnetworks.use
-
VPC ネットワークの使用時にインスタンスに外部 IP アドレスを割り当てる: プロジェクトまたは選択したサブネットに対する
compute.subnetworks.useExternalIp
- ネットワークまたはサブネットを指定しないと、Compute Engine はデフォルトの VPC ネットワークを使用し、インスタンスと同じリージョンにある自動サブネットを使用します。
- ネットワークを指定しないと、Compute Engine は指定されたサブネットからネットワークを推測します。
- ネットワークを指定する場合は、サブネットを指定する必要があります。また、ネットワークは同じネットワークに属している必要があります。そうしないと、インスタンスの作成は失敗します。
Google Cloud コンソールで、[インスタンスを作成] ページに移動します。
プロンプトが表示されたら、プロジェクトを選択して [続行] をクリックします。
[インスタンスの作成] ページが表示され、[マシン構成] ペインが表示されます。
[マシンの構成] ペインで、次の操作を行います。
- [名前] フィールドに、インスタンスの名前を指定します。詳細については、リソースの命名規則をご覧ください。
省略可: [ゾーン] フィールドで、このインスタンスのゾーンを選択します。
デフォルトでは [すべて] が選択されています。このデフォルト選択を変更しない場合、マシンタイプと可用性に基づいてゾーンが自動的に選択されます。
インスタンスのマシン ファミリーを選択します。 Google Cloud コンソールに、選択したマシンファミリーで使用可能なマシンシリーズが表示されます。使用できるマシン ファミリー オプションは次のとおりです。
- 汎用
- コンピューティング最適化
- メモリ最適化
- ストレージ最適化
- GPU
[シリーズ] 列で、インスタンスのマシンシリーズを選択します。
前の手順でマシン ファミリーとして [GPU] を選択した場合は、必要な GPU タイプを選択します。選択した GPU タイプにマシンシリーズが自動的に選択されます。
[マシンタイプ] セクションで、インスタンスのマシンタイプを選択します。
ナビゲーション メニューで [ネットワーキング] をクリックします。表示された [ネットワーキング] ペインで、次の操作を行います。
インスタンスへの HTTP または HTTPS トラフィックを許可するには、[ファイアウォール] セクションに移動し、[HTTP トラフィックを許可する] または [HTTPS トラフィックを許可する] を選択します。
Compute Engine によってネットワーク タグがインスタンスに追加されます。また、対応する上り(内向き)ファイアウォール ルールが作成され、
tcp:80
(HTTP)またはtcp:443
(HTTPS)で着信するすべてのトラフィックが許可されます。このネットワーク タグでファイアウォール ルールがインスタンスに関連付けられます。詳細については、Cloud Next Generation Firewall のドキュメントでファイアウォール ルールの概要をご覧ください。ネットワーク インターフェースの詳細を指定するには、[ネットワーク インターフェース] セクションに移動し、[ネットワーク インターフェースを追加] をクリックします。
表示された [新しいネットワーク インターフェース] セクションで、次の操作を行います。
- [ネットワーク] フィールドで、作成しておいたサブネットを含む VPC ネットワークを選択します。
- [サブネットワーク] リストで、インスタンスが使用するサブネットを選択します。
- [IP スタックタイプ] フィールドで、ネットワーク インターフェースの IP スタックタイプを選択します。
- ネットワーク インターフェースの詳細を確認するには、[完了] をクリックします。
省略可: その他の構成オプションを指定します。詳細については、インスタンス作成時の構成オプションをご覧ください。
インスタンスを作成して起動するには、[作成] をクリックします。
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Google Cloud CLI を使用して、同じ手順に沿って公開イメージまたはスナップショットからインスタンスを作成し、
gcloud compute instances create
コマンドを実行する際に、このセクションで説明するネットワーキング フラグを指定します。gcloud compute instances create INSTANCE_NAME \ --zone=ZONE \ --machine-type=MACHINE_TYPE \ --create-disk=boot=yes,image=projects/IMAGE_PROJECT/global/images/IMAGE,size=SIZE \ --network=NETWORK_NAME \ --subnet=SUBNET_NAME \ --stack-type=STACK_TYPE \ --private-network-ip=INTERNAL_IPV4_ADDRESS \ --address=EXTERNAL_IPV4_ADDRESS \ --nic-type=GVNIC
次のように置き換えます。
INSTANCE_NAME
: コンピューティング インスタンスの名前ZONE
: インスタンスを作成するゾーン(europe-west1-b
など)。インスタンスのリージョンはこのゾーンから推測されます。MACHINE_TYPE
: 省略可。インスタンスに使用するマシンタイプ。IMAGE_PROJECT
: 省略可。イメージを含むイメージ プロジェクトIMAGE
: 省略可。次のいずれかを指定します。- OS イメージの特定のバージョン。例:
rocky-linux-9-optimized-gcp-v20240717
。 - イメージ ファミリー。
family/IMAGE_FAMILY
の形式にする必要があります。これにより、非推奨ではない最新の OS イメージからインスタンスが作成されます。たとえば、family/rocky-linux-9-optimized-gcp
を指定すると、Compute Engine はGoogle Cloud イメージ ファミリーに最適化された Rocky Linux 9 の OS イメージの最新バージョンを使用してインスタンスを作成します。イメージ ファミリーの使用の詳細については、イメージ ファミリーのベスト プラクティスをご覧ください。
- OS イメージの特定のバージョン。例:
SIZE
: 省略可。新しいディスクのサイズ。この値は整数である必要があります。デフォルトの測定単位は GiB です。NETWORK_NAME
: (省略可)ネットワークの名前SUBNET_NAME
: インスタンスで使用するサブネットの名前。ネットワーク内のサブネットの一覧を表示するには、
gcloud compute networks subnets list
コマンドを使用します。STACK_TYPE
: 省略可。ネットワーク インターフェースのスタックタイプ。STACK_TYPE
は、IPV4_ONLY
、IPV4_IPV6
、IPV6_ONLY
(プレビュー)のいずれかにする必要があります。デフォルト値はIPV4_ONLY
です。INTERNAL_IPV4_ADDRESS
: 省略可。コンピューティング インスタンスがターゲット サブネットで使用する内部 IPv4 アドレス。特定の IP アドレスが不要な場合は、このフラグを省略します。内部 IPv6 アドレスを指定するには、代わりに
--internal-ipv6-address
フラグを使用します。EXTERNAL_IPV4_ADDRESS
: 省略可。ネットワーク インターフェースで使用する静的外部 IPv4 アドレス。事前に外部 IPv4 アドレスを予約しておく必要があります。次のいずれかを行います。- サブネットの有効な IPv4 アドレスを指定します。
- ネットワーク インターフェースに外部 IP アドレスを使用しない場合は、代わりにフラグ
--network-interface=no-address
を使用します。 - インターフェースでエフェメラル外部 IP アドレスを受信する場合は、
address=''
を指定します。
外部 IPv6 アドレスを指定するには、代わりに
--external-ipv6-address
フラグを使用します。
- Google Cloud コンソールで、[VM インスタンス] ページに移動します。
- [インスタンスを作成] をクリックします。
- 必要なパラメータを指定します。
- ページの上部または下部で [同等のコード] をクリックし、[Terraform] タブをクリックして Terraform コードを表示します。
PROJECT_ID
: VM を作成するプロジェクトの IDZONE
: VM を作成するゾーンMACHINE_TYPE_ZONE
: 新しい VM に使用するマシンタイプを含むゾーンMACHINE_TYPE
: 新しい VM のマシンタイプ(事前定義またはカスタム)VM_NAME
: 新しい VM の名前IMAGE_PROJECT
: イメージを含むプロジェクト
たとえば、イメージ ファミリーとしてdebian-10
を指定する場合は、イメージ プロジェクトとしてdebian-cloud
を指定します。IMAGE
: 次のいずれかを指定します。IMAGE
: 公開イメージの特定のバージョン例:
"sourceImage": "projects/debian-cloud/global/images/debian-10-buster-v20200309"
IMAGE_FAMILY
: イメージ ファミリーこれにより、非推奨ではない最新の OS イメージから VM が作成されます。たとえば、
"sourceImage": "projects/debian-cloud/global/images/family/debian-10"
を指定すると、Compute Engine はDebian 10
イメージ ファミリーの OS イメージの最新バージョンから VM を作成します。
NETWORK_NAME
: 省略可。VM に使用する VPC ネットワーク。default
を指定して、デフォルト ネットワークを使用できます。REGION
: 指定したサブネットが存在するリージョン。これは VM と同じリージョンにする必要があります。SUBNET_NAME
: 使用するサブネットの名前STACK_TYPE
: 省略可。ネットワーク インターフェースのスタックタイプ。IPV4_ONLY
、IPV4_IPV6
、IPV6_ONLY
(プレビュー版)のいずれかを指定できます。デフォルト値はIPV4_ONLY
です。ENABLE_SECURE_BOOT
: 省略可。Shielded VM 機能をサポートしているイメージを選択した場合は、Compute Engine がデフォルトで仮想トラステッド プラットフォーム モジュール(vTPM)と整合性モニタリングを有効にします。Compute Engine は、デフォルトではセキュアブートを有効にしません。true
にenableSecureBoot
を指定すると、Compute Engine は 3 つの Shielded VM 機能をすべて有効にした VM を作成します。Compute Engine が VM を起動した後、Shielded VM のオプションを変更するには、VM を停止する必要があります。- インスタンスのステータスを確認して、使用可能になるタイミングを確認する方法について学習する。
- インスタンスに接続する方法を確認する。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
詳細については、 Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
必要なロール
特定のサブネットを持つインスタンスを作成するために必要な権限を取得するには、プロジェクトに対する Compute インスタンス管理者(v1) (
roles/compute.instanceAdmin.v1
)IAM ロールを付与するよう管理者に依頼します。ロールの付与については、プロジェクト、フォルダ、組織へのアクセスを管理するをご覧ください。この事前定義ロールには、特定のサブネットを持つインスタンスを作成するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
特定のサブネットを持つインスタンスを作成するには、次の権限が必要です。
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
要件
サブネットにインスタンスを作成する場合は、次のルールを考慮してください。
使用するサブネットは、インスタンスの作成前に作成する必要があります。詳細については、VPC ネットワークを作成して管理するをご覧ください。
特定のサブネットにインスタンスを作成する
特定のサブネットにインスタンスを作成する手順は次のとおりです。
コンソール
gcloud
Terraform
特定のサブネットにインスタンスを作成するには、
google_compute_instance
リソースを使用します。Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。
Terraform コードを生成するには、 Google Cloud コンソールの同等のコード コンポーネントを使用します。Go
このサンプルを試す前に、Compute Engine クイックスタート: クライアント ライブラリの使用に記載されている Go の設定手順に沿って操作します。詳細については、Compute Engine Go API リファレンス ドキュメントをご覧ください。
Compute Engine に対して認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Java
このサンプルを試す前に、Compute Engine クイックスタート: クライアント ライブラリの使用に記載されている Java の設定手順に沿って操作します。詳細については、Compute Engine Java API リファレンス ドキュメントをご覧ください。
Compute Engine に対して認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Node.js
このサンプルを試す前に、Compute Engine クイックスタート: クライアント ライブラリの使用に記載されている Node.js の設定手順に沿って操作します。詳細については、Compute Engine Node.js API リファレンス ドキュメントをご覧ください。
Compute Engine に対して認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Python
このサンプルを試す前に、Compute Engine クイックスタート: クライアント ライブラリの使用に記載されている Python の設定手順に沿って操作します。詳細については、Compute Engine Python API リファレンス ドキュメントをご覧ください。
Compute Engine に対して認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
REST
REST
の手順に沿って公開イメージからインスタンスを作成するか、スナップショットから作成して、リクエスト本文でsubnet
フィールドを指定します。POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances { "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name":"VM_NAME
", "disks":[ { "initializeParams":{ "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot":true } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME", "subnetwork":"regions/REGION/subnetworks/SUBNET_NAME", "stackType":"STACK_TYPE" } ], "shieldedInstanceConfig":{ "enableSecureBoot":"ENABLE_SECURE_BOOT" } }次のように置き換えます。
次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-01-23 UTC。
-