Compute Engine は、VM インスタンスの作成時に使用できる事前定義されたマシンタイプを提供しています。事前定義されたマシンタイプには、vCPU の数とメモリの容量がプリセットされており、セット価格で課金されます。
事前定義された VM がニーズに合わない場合は、カスタムの仮想ハードウェア設定を使用して VM インスタンスを作成できます。具体的には、カスタム マシンタイプを効果的に利用して、vCPU の数とメモリ容量をカスタマイズした VM インスタンスを作成できます。カスタム マシンタイプを使用することにより、最小 1 vCPU から最大 96 vCPU、またはその間の任意の偶数 vCPU の VM インスタンスを作成できます。vCPU あたり最大 8 GB のメモリを構成することもできます。
カスタム マシンタイプは、汎用マシン ファミリーで使用できます。カスタム VM を作成すると、E2、N2、N2D、または N1 マシン ファミリーからカスタム VM をデプロイします。
カスタム VM は、次のようなシナリオに適しています。
- 事前定義された仮想マシンタイプに適していないワークロード。
- 処理能力やメモリがさらに必要だが、次のレベルのマシンタイプで提供されるアップグレードをすべては必要としないワークロード。
始める前に
- マシン ファミリーのドキュメントをご覧ください。
-
まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のように Compute Engine に対する認証を行います。
このページのサンプルをどのように使うかに応じて、タブを選択してください。
コンソール
Google Cloud コンソールを使用して Google Cloud サービスと API にアクセスする場合、認証を設定する必要はありません。
gcloud
-
Google Cloud CLI をインストールし、次のコマンドを実行して初期化します。
gcloud init
- デフォルトのリージョンとゾーンを設定します。
Terraform
このページの Terraform サンプルをローカル開発環境から使用するには、gcloud CLI をインストールして初期化し、自身のユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定してください。
- Google Cloud CLI をインストールします。
-
gcloud CLI を初期化するには:
gcloud init
-
Google アカウントのローカル認証情報を作成します。
gcloud auth application-default login
詳細については、 ローカル開発環境の認証の設定 をご覧ください。
Go
このページの Go サンプルをローカル開発環境から使用するには、gcloud CLI をインストールして初期化し、自身のユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定してください。
- Google Cloud CLI をインストールします。
-
gcloud CLI を初期化するには:
gcloud init
-
Google アカウントのローカル認証情報を作成します。
gcloud auth application-default login
詳細については、 ローカル開発環境の認証の設定 をご覧ください。
Java
このページの Java サンプルをローカル開発環境から使用するには、gcloud CLI をインストールして初期化し、自身のユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定してください。
- Google Cloud CLI をインストールします。
-
gcloud CLI を初期化するには:
gcloud init
-
Google アカウントのローカル認証情報を作成します。
gcloud auth application-default login
詳細については、 ローカル開発環境の認証の設定 をご覧ください。
Node.js
このページの Node.js サンプルをローカル開発環境から使用するには、gcloud CLI をインストールして初期化し、自身のユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定してください。
- Google Cloud CLI をインストールします。
-
gcloud CLI を初期化するには:
gcloud init
-
Google アカウントのローカル認証情報を作成します。
gcloud auth application-default login
詳細については、 ローカル開発環境の認証の設定 をご覧ください。
PHP
このページの PHP サンプルをローカル開発環境から使用するには、gcloud CLI をインストールして初期化し、自身のユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定してください。
- Google Cloud CLI をインストールします。
-
gcloud CLI を初期化するには:
gcloud init
-
Google アカウントのローカル認証情報を作成します。
gcloud auth application-default login
詳細については、 ローカル開発環境の認証の設定 をご覧ください。
Python
このページの Python サンプルをローカル開発環境から使用するには、gcloud CLI をインストールして初期化し、自身のユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定してください。
- Google Cloud CLI をインストールします。
-
gcloud CLI を初期化するには:
gcloud init
-
Google アカウントのローカル認証情報を作成します。
gcloud auth application-default login
詳細については、 ローカル開発環境の認証の設定 をご覧ください。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
-
必要なロール
カスタム マシンタイプの VM を作成するために必要な権限を取得するには、プロジェクトに対する Compute インスタンス管理者(v1)(roles/compute.instanceAdmin.v1
)IAM ロールを付与するよう管理者に依頼してください。ロールの付与の詳細については、アクセス権の管理をご覧ください。
この事前定義ロールには、カスタム マシンタイプの VM を作成するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
カスタム マシンタイプの VM を作成するには、次の権限が必要です。
-
既存の VM に拡張メモリを追加するには: VM に対する
compute.instances.setMachineType
-
カスタム マシンタイプの VM を作成するには:
- プロジェクトに対する
compute.instances.create
- カスタム イメージを使用して VM を作成する: イメージに対する
compute.images.useReadOnly
- スナップショットを使用して VM を作成する: スナップショットに対する
compute.snapshots.useReadOnly
- インスタンス テンプレートを使用して VM を作成する: インスタンス テンプレートに対する
compute.instanceTemplates.useReadOnly
- レガシー ネットワークを VM に割り当てる: プロジェクトに対する
compute.networks.use
- VM の静的 IP アドレスを指定する: プロジェクトに対する
compute.addresses.use
- レガシー ネットワークの使用時に VM に外部 IP アドレスを割り当てる: プロジェクトに対する
compute.networks.useExternalIp
- VM のサブネットを指定する: プロジェクトまたは選択したサブネットに対する
compute.subnetworks.use
- VPC ネットワークの使用時に VM に外部 IP アドレスを割り当てる: プロジェクトまたは選択したサブネットに対する
compute.subnetworks.useExternalIp
- VM の VM インスタンス メタデータを設定する: プロジェクトに対する
compute.instances.setMetadata
- VM にタグを設定する: VM に対する
compute.instances.setTags
- VM にラベルを設定する: VM に対する
compute.instances.setLabels
- VM が使用するサービス アカウントを設定する: VM に対する
compute.instances.setServiceAccount
- VM に新しいディスクを作成する: プロジェクトに対する
compute.disks.create
- 既存のディスクを読み取り専用モードまたは読み取り / 書き込みモードでアタッチする: ディスクに対する
compute.disks.use
- 既存のディスクを読み取り専用モードでアタッチする: ディスクに対する
compute.disks.useReadOnly
- プロジェクトに対する
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
料金
Google は、VM が使用する vCPU の数とメモリの時間に基づいてカスタム VM の請求を行います。事前定義されたマシンタイプの課金方法とは異なります。カスタム マシンタイプのオンデマンド料金には、標準マシンタイプのオンデマンド料金に対して 5% のプレミアムが含まれています。各マシン ファミリーのカスタム マシンタイプの料金情報については、VM インスタンスの料金をご覧ください。
カスタム VM には、他のインスタンスと同じ 1 分間の最低料金が発生しますが、カスタム マシンタイプの継続利用割引は計算方法が異なります。詳細については、カスタム VM の継続利用割引をご覧ください。
メモリの表記(GB または MB)
Google Cloud のツールとドキュメントでは、マシンタイプ メモリはギガバイト(GB)単位で計算されます。1 GB は 230 バイトです。この測定単位はギビバイト(GiB)とも呼ばれます。メモリを GB から MB に変換する場合、1 GB = 1,024 MB です。
API では、メモリは常に MB 単位で指定します。Google Cloud CLI を使用する場合、VM の合計メモリは GB 単位または MB 単位で指定できます。ただし、gcloud CLI を使用する場合、メモリ値には整数が想定されているため、浮動小数点数値を指定することはできません。たとえば、5.75 GB を表現するには、5.75 GB を MB に変換します。この場合、5.75 GB は 5,888 MB と表現します。
カスタム マシンタイプの VM を作成する
VM インスタンスを作成する前に、このマシンタイプの作成に関するカスタム仕様を読んで理解しておいてください。コンソール
Google Cloud コンソールで、[インスタンスの作成] ページに移動します。
[ゾーン] リストで、この VM をホストするゾーンを選択します。[シリーズ] リストは、選択したゾーンで使用可能なマシンタイプ ファミリーのみが含まれるようにフィルタされます。
[マシンの構成] セクションで、[汎用] を選択します。
- [シリーズ] リストで、N1 カスタム マシンタイプの場合は [第 1 世代] の [N1] をクリックし、第 2 世代のカスタム マシンタイプの場合は、[E2] または [N2]、[N2D] をクリックします。
- [マシンタイプ] セクションで [カスタム] を選択します。
- VM インスタンスの vCPU の数とメモリ容量を指定するには、スライダーをドラッグするか、テキスト ボックスに値を入力します。vCPU の数とメモリを変更すると、コンソールに VM の見積もり価格が表示されます。
VM の作成を続行します。
gcloud
カスタム マシンタイプの gcloud
コマンドは、マシンタイプ ファミリーごとにわずかに異なります。
N1 マシンタイプの場合は、gcloud compute instances create
コマンドを使用して次のいずれかのオプションを指定します。
--custom-cpu
と--custom-memory
フラグ。--machine-type=custom-[NUMBER_OF_CPUS]-[NUMBER_OF_MB]
フラグ。
たとえば、次のコマンドは、4 個の vCPU と 5 GB の合計メモリを備えた N1 マシンタイプを実行するインスタンスを作成します。
gcloud compute instances create example-instance \
--custom-cpu=4 --custom-memory=5
N2 マシンタイプの場合は、gcloud compute instances create
コマンドを使用して次のいずれかのオプションを指定します。
--custom-cpu
、--custom-memory
、--custom-vm-type
フラグ。--machine-type=n2-custom-NUMBER_OF_CPUS-NUMBER_OF_MB
フラグ。
--custom-memory
フラグを使用する場合、メモリの合計量を GB または MB で指定します。プロパティは整数にする必要があるため、0.25 GB 単位のメモリを指定する場合は、代わりに値を MB に変換して指定します。
メモリの 2.5 GB などの増分値を指定するには、値を MB に変換して、その値に MB のサフィックスを付けて指定します。次の例では、N2 マシンタイプを実行するインスタンスを作成します。
gcloud compute instances create example-instance \
--custom-cpu=6 --custom-memory=3072MB --custom-vm-type=n2
または、カスタム マシンタイプは次の形式を使用して、後から指定することもできます。
gcloud compute instances create example-instance \
--machine-type n2-custom-NUMBER_OF_CPUS-NUMBER_OF_MB
以下を置き換えます。
NUMBER_OF_CPUS
: 目的の CPU 数。NUMBER_OF_MB
: メモリ容量(MB)。
例:
gcloud compute instances create example-instance --machine-type=n2-custom-6-3072
N2D または E2 マシンタイプの場合は、gcloud compute instances create
コマンドを使用して次のいずれかのオプションを指定します。
--custom-cpu
、--custom-memory
、--custom-vm-type
フラグ。--machine-type=n2d-custom-NUMBER_OF_CPUS-NUMBER_OF_MB
フラグ。--machine-type=e2-custom-NUMBER_OF_CPUS-NUMBER_OF_MB
フラグ。
E2 共有コア カスタム マシンタイプの場合は、同じ gcloud compute instances create
コマンドを使用し、共有コア マシンタイプ micro
、small
、または medium
を指定します。
--machine-type=e2-custom-SHARED_CORE_MACHINE_SIZE-NUMBER_OF_MB
フラグ。
例:
gcloud compute instances create example-instance \
--machine-type=e2-custom-medium-NUMBER_OF_MB
--custom-memory
フラグを使用する場合、メモリの合計量を GB または MB で指定します。プロパティは整数にする必要があります。0.25 GB 単位のメモリを指定する場合は、代わりに値を MB に変換して指定します。
メモリの 2.5 GB などの増分値を指定するには、値を MB に変換して、その値に MB のサフィックスを付けて指定します。次の例では、E2 マシンタイプを実行するインスタンスを作成します。
gcloud compute instances create example-instance \
--custom-cpu=6 --custom-memory=3072MB --custom-vm-type=e2
または、次の形式を使用してカスタム マシンタイプを指定することもできます。
gcloud compute instances create example-instance \
--machine-type=e2-custom-NUMBER_OF_CPUS-NUMBER_OF_MB
以下を置き換えます。
NUMBER_OF_CPUS
: 目的の CPU 数。NUMBER_OF_MB
: メモリ容量(MB)。
例:
gcloud compute instances create example-instance --machine-type=e2-custom-6-3072
Terraform
Terraform コードを生成するには、Google Cloud コンソールの同等のコード コンポーネントを使用します。- Google Cloud コンソールで [VM インスタンス] ページに移動します。
- [インスタンスを作成] をクリックします。
- 必要なパラメータを指定します。
- ページの上部または下部で [同等のコード] をクリックし、[Terraform] タブをクリックして Terraform コードを表示します。
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
instances.insert
メソッドを使用して、通常どおりにインスタンス作成リクエストを作成しますが、machineType
値を指定するときは、次のいずれかの形式を使用します。NUMBER_OF_CPUS
を CPU 数に、AMOUNT_OF_MEMORY_MB
を必要なメモリ容量にそれぞれ置き換えます。メモリは MB 単位で指定します。
N1 マシンタイプの場合、次のように指定します。
zones/ZONE/machineTypes/custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
N2 マシンタイプの場合、次のように指定します。
zones/ZONE/machineTypes/n2-custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
N2D マシンタイプの場合:
zones/ZONE/machineTypes/n2d-custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
E2 マシンタイプの場合、次のように指定します。
zones/ZONE/machineTypes/e2-custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY_MB
E2 共有コア カスタム マシンタイプの場合は、次のように指定します。
zones/ZONE/machineTypes/e2-custom-SHARED_CORE_MACHINE_SIZE-AMOUNT_OF_MEMORY_MB
たとえば、次の URL は、4 個の vCPU と 5 GB(5,120 MB)のメモリのインスタンスを作成します。
zones/us-central1-f/machineTypes/custom-4-5120
同様に、カスタム マシンタイプのプリエンプティブル インスタンスやインスタンスのグループを作成することもできます。
マシンタイプに拡張メモリを追加する
各マシンタイプには、マシンに応じてデフォルトで特定のメモリ量が設定されています。たとえば、カスタム N1 VM を作成する場合は、vCPU あたり最大 6.5 GB のメモリを設定できます。カスタム N2 VM の場合、この数値は vCPU あたり最大 8 GB のメモリに引き上げられます。
一部のワークロードでは、これらのメモリ容量では足りないことがあります。追加料金をご負担いただければ、vCPU ごとにデフォルトの上限を超えるメモリを利用できます。これを拡張メモリと呼びます。
拡張メモリを使用すると、vCPU ごとに制限なしでメモリをマシンタイプに追加できます。マシンのタイプに基づいて、特定の上限まで拡張メモリを追加できます。
- N1 マシンタイプの場合、VM ごとに合計で最大 624 GB のメモリを追加できます。
- N2 マシンタイプの場合、VM ごとに合計で最大 640 GB のメモリを追加できます。
- N2D マシンタイプの場合、VM ごとに合計で最大 768 GB のメモリを追加できます。
- E2 マシンタイプでは、拡張メモリを使用できません。
さらに多くのメモリが必要な場合は、メモリ最適化マシンタイプのいずれかを使用する必要があります。これにより、VM ごとに合計メモリが最大 12 TB の VM を作成できます。詳細については、メモリ最適化マシン ファミリーをご覧ください。
拡張メモリが必要かどうかの判断
ワークロードによっては、最適な成果を得るために必要な vCPU あたりのメモリ容量がデフォルトの量を超えることがあります。MS SQL Server、MongoDB、MemcacheD / Redis といったリレーショナル データベースや NoSQL データベースなど、インメモリの高パフォーマンス分析データベースに基づくワークロードが、このカテゴリに該当します。また、オペレーティング システムやソフトウェア スタックのライセンスは vCPU ベースであるため、事前定義されたマシンタイプで最適な VM メモリ構成を選択することは容易ではありません。拡張メモリを使用すると、VM が必要とするだけのメモリを追加して最高の費用対効果を実現できます。
料金
カスタム マシンタイプをご使用の場合、vCPU あたりのメモリ容量がデフォルトの量までであれば、N1 カスタム マシンタイプの料金または N2 カスタム マシンタイプの料金が適用されます。E2 カスタムマシンと E2 共有コア カスタム マシンタイプは同じ料金体系を共有します。
一方、デフォルトを超える拡張メモリについては、N1 拡張カスタムメモリの料金または N2 拡張カスタムメモリの料金が適用されます。拡張メモリの料金とデフォルト範囲のメモリの料金は異なります。
拡張メモリの料金はリージョンごとに異なります。実行中のインスタンスで拡張メモリを使用した場合も、最小課金時間はその他のインスタンスと同じ 1 分です。また、拡張メモリも継続利用割引の対象になります。
詳細については、カスタム マシンタイプの継続利用割引と拡張カスタムメモリの料金をご覧ください。
制限事項
- VM にローカル SSD ディスクがある場合、vCPU とメモリの構成は変更できません。
- 拡張メモリは、カスタム マシンタイプに対してのみ追加できます。事前定義されたマシンタイプはサポートされていません。
- 各 VM インスタンスに追加できるメモリの容量には上限があります。N1 マシンタイプの場合、最大 624 GB のメモリを追加できます。N2 マシンタイプの場合、最大 640 GB のメモリを追加できます。N2D マシンタイプの場合、最大 768 GB のメモリを追加できます。
- N2D マシンタイプは、特定のリージョンとゾーンでのみ使用できます。
- メモリは 256 MB 単位で指定する必要があります。
- 拡張メモリは、確約利用割引の対象にはなりません。
インスタンスの作成時に拡張メモリを追加する
拡張メモリを備えた VM インスタンスを作成するには、次の手順に沿って操作します。コンソール
Google Cloud コンソールで、[インスタンスの作成] ページに移動します。
[ゾーン] リストで、この VM をホストするゾーンを選択します。[シリーズ] リストは、選択したゾーンで使用可能なマシンタイプ ファミリーのみが含まれるようにフィルタされます。
[マシンの構成] セクションで、[汎用] を選択します。
- [シリーズ] リストで、N1 カスタム マシンタイプの場合は [第 1 世代] の [N1] をクリックし、第 2 世代のカスタム マシンタイプの場合は、[N2] または [N2D] をクリックします。
- [マシンタイプ] セクションで [カスタム] を選択します。
- vCPU の数を指定するには、[コア数] スライダーをドラッグするか、テキスト ボックスに値を入力します。
拡張メモリを追加するには、[拡張メモリ] を選択し、次の操作を行います。
- VM インスタンスのメモリ容量を指定するには、[メモリ] スライダーをドラッグするか、テキスト ボックスに値を入力します。
vCPU の数とメモリを変更すると、コンソールに VM の見積もり価格が表示されます。
VM の作成を続行します。
gcloud
N1 マシンタイプの場合、--custom-extensions
フラグを指定して gcloud compute instances create
コマンドを使用し、拡張メモリを有効にします。また、--custom-memory
パラメータを使用して必要な合計メモリを指定します。
gcloud compute instances create example-instance \
--custom-extensions --custom-cpu=2 --custom-memory=15
N2 マシンタイプの場合、以下のように --custom-extensions
フラグ、--custom-cpu
フラグ、--custom-memory
フラグの次に --custom-vm-type
フラグを使用して gcloud compute instances create
コマンドを使用することで N2 マシンタイプを指定します。
gcloud compute instances create example-instance \
--custom-extensions --custom-cpu=2 --custom-memory=16 \
--custom-vm-type=n2
N2D マシンタイプの場合、以下のように --custom-extensions
フラグ、--custom-cpu
フラグ、--custom-memory
フラグの次に --custom-vm-type
フラグを使用して gcloud compute instances create
コマンドを使用することで N2D マシンタイプを指定します。
gcloud compute instances create example-instance \
--custom-extensions --custom-cpu=2 --custom-memory=16 \
--custom-vm-type=n2d
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
instances.insert
メソッドでは、通常どおりインスタンス作成リクエストを作成しますが、machineType
値を指定する場合は次のいずれかの形式を使用します。
N1 マシンタイプの場合、次のように指定します。
zones/ZONE/machineTypes/custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY-ext
N2 マシンタイプの場合、次のように指定します。
zones/ZONE/machineTypes/n2-custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY-ext
N2D マシンタイプの場合:
zones/ZONE/machineTypes/n2d-custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY-ext
以下を置き換えます。
NUMBER_OF_CPUS
: vCPU の数。AMOUNT_OF_MEMORY
: メモリ(MB)。
たとえば、以下の例では、2 個の vCPU と 20 GB のメモリを持つ N2 マシンタイプを指定しています。
zones/ZONE/machineTypes/n2-custom-2-20480-ext
既存の VM インスタンスに拡張メモリを追加する
既存のインスタンスに対してメモリを追加する場合は、最初にそのインスタンスを停止する必要があります。インスタンスが停止したら、次の手順で VM にメモリを追加します。コンソール
Google Cloud コンソールで [VM インスタンス] ページに移動します。
変更対象の停止した VM を VM リストから選択します。
ページ上部の [編集] をクリックします。
[マシンの構成] で、[汎用] を選択します。
[マシンタイプ] セクションで [カスタム] を選択します。
必要な vCPU の数を選択します。
拡張メモリを追加するには、[メモリを拡張する] を選択して、必要なメモリ容量を指定します。
変更を保存します。
gcloud
--custom-memory
フラグと --custom-extensions
フラグを指定して、compute instances set-machine-type
コマンドを使用します。
たとえば、example-instance
という VM インスタンス(us-central1-b
ゾーンに 2 vCPU、13 GB メモリ搭載の N1 マシンタイプを使用)に 2 GB のメモリを追加するには、次のコマンドを使用します。
gcloud compute instances set-machine-type example-instance \
--zone=us-central1-b --custom-cpu=2 \
--custom-memory=15 --custom-extensions
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
リクエスト本文に目的のマシンタイプを追加して、instances.setMachineType
メソッドに POST
リクエストを送信します。次のいずれかの形式で指定してください。
N1 マシンタイプの場合、次のように指定します。
zones/ZONE/machineTypes/custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY-ext
N2 マシンタイプの場合、次のように指定します。
zones/ZONE/machineTypes/n2-custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY-ext
N2D マシンタイプの場合:
zones/ZONE/machineTypes/n2d-custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY-ext
以下を置き換えます。
NUMBER_OF_CPUS
: vCPU の数。AMOUNT_OF_MEMORY
: メモリ(MB)。
たとえば、次のリクエストでは 2 つの vCPU と 15 GB のメモリを持つ N1 マシンタイプを指定します。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/setMachineType
{
machineType: "zones/us-central1-f/machineTypes/custom-2-15360-ext"
}
次のステップ
- マシン ファミリーの詳細を確認する。
- VM を作成した後で、チュートリアルに沿って VM インスタンスの使用を開始する。
- VM インスタンスに接続する方法を確認する。