このドキュメントでは、Compute Engine リソースの使用状況と予測に基づいて将来の予約リクエストを作成する方法について説明します。
将来の予約リクエストを使用すると、将来の日時に Compute Engine インスタンスまたは GPU を作成するための容量が確保されていることを高いレベルで保証できます。具体的には、将来の予約リクエストは、特定のゾーンで予想される増加に対応するために、 Google Cloud プロジェクト、フォルダ、組織に十分な容量を確保するのに役立ちます。たとえば、次のようなシナリオです。
ピーク スケール イベント
大規模な移行
コンプライアンス要件
将来の予約リクエストを作成して Google Cloud が承認すると、予約期間全体にわたって、使用量に関係なくリクエストされたリソースの料金を支払うことになります。
制限事項
キャパシティ プランナーで将来の予約リクエストを作成する場合、次の制限があります。
リクエストは、プロパティを直接指定することによってのみ作成できます。
リクエストは、コンピューティング インスタンスまたは GPU の使用量と予測に基づいてのみ作成できます。
現在の日付から 6 か月以上先の終了時刻を設定することはできません。終了時間をさらに先に設定するには、次のいずれかを選択します。
Google Cloud コンソールを使用して下書きリクエストを作成し、変更します。
gcloud CLI コマンドを生成し、実行する前に手動で編集します。
始める前に
キャパシティ プランナーを以前に使用したことがない場合は、キャパシティ プランナーの概要を確認し、プロジェクトとユーザーの前提条件を完了してキャパシティ プランナーを有効にします。
共有の将来の予約リクエストを作成する場合は、共有リクエストを作成するプロジェクト(オーナー プロジェクト)で共有予約の作成と変更が許可されていることを確認します。詳細については、プロジェクトでの共有予約の作成と変更を許可または制限するをご覧ください。
予約するリソースに十分な割り当てがあることを確認します。割り当てを確認する方法については、数量に基づく割り当てをご覧ください。
必要なロール
将来の予約リクエストの作成に必要な権限を取得するには、次の IAM ロールを付与するよう管理者に依頼してください。
-
Capacity Planner にアクセスして表示するには:
プロジェクト、フォルダ、組織に対する Capacity Planner 閲覧者 (
roles/capacityplanner.viewer) -
将来の予約リクエストを作成する: オーナー プロジェクトに対する Compute の将来の予約ユーザー (
roles/compute.futureReservationUser)
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
これらの事前定義ロールには、将来の予約リクエストを作成するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
将来の予約リクエストを作成するには、次の権限が必要です。
-
将来の予約リクエストを作成する: オーナー プロジェクトに対する
compute.futureReservations.create -
Compute Engine で予約を自動作成できるようにする: オーナー プロジェクトに対する
compute.reservations.create権限 -
インスタンスまたは GPU の予測使用量を表示するには: プロジェクト、フォルダ、組織に対する
capacityplanner.forecasts.list -
インスタンスまたは GPU の実際の使用状況を表示するには: プロジェクト、フォルダ、組織に対する
capacityplanner.usageHistories.list -
インスタンスまたは GPU の実際の使用状況を要約するには: プロジェクト、フォルダ、組織に対する
capacityplanner.usageHistories.summarize
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
概要
容量プランナーで将来の予約リクエストを作成して容量を予約する手順は次のとおりです。
作成方法を選択します。一度に予約する容量のマシンタイプの数と、将来の予約リクエストを作成する前に編集するかどうかに基づいて、次のいずれかの方法を選択します。
推奨: gcloud CLI コマンドを生成する
この方法は、さまざまなマシンタイプに対して 1 つ以上の将来の予約リクエストを一度に作成する場合に便利です。 Google Cloud コンソールでリクエストを構成すると、 Google Cloud コンソールはリクエストを作成する gcloud CLI コマンドを生成します。コマンドを実行する前に、必要に応じてフィールドを編集できます。たとえば、予約期間の推奨開始時刻や最小期間を指定できます。
Google Cloud コンソールを使用する
この方法は、1 つのマシンタイプに対して 1 つの将来の予約リクエストを作成する場合に便利です。 Google Cloud コンソールを使用してリクエストを構成して作成します。リクエストを変更できるのは、リクエストの下書きを作成した後のみです。
Compute Engine リソースを選択します。将来の予約リクエストの作成に使用するコンピューティング インスタンスまたは GPU と、その実際の使用量データと予測使用量データを選択します。
手順については、このドキュメントの Compute Engine リソースを選択するをご覧ください。
将来の予約リクエストを作成する。Compute Engine リソースを選択したら、 Google Cloud コンソールを使用して単一のマシンタイプの将来の予約リクエストを作成するか、gcloud CLI コマンドを生成して複数のマシンタイプの将来の予約リクエストを一度に作成します。
手順については、このドキュメントの将来の予約リクエストを作成するをご覧ください。
Compute Engine リソースを選択する
将来の予約リクエストを作成する Compute Engine リソースを選択するには、次の操作を行います。
Google Cloud コンソールで、キャパシティ プランナーを開きます。
[概要] ページが表示されます。
省略可: データを表示するスコープ(プロジェクト、フォルダ、組織)を変更するには、次の操作を行います。
- Google Cloud コンソールのツールバーで、リソース選択ツールをクリックします。
- 表示された [リソースを選択] ダイアログで、プロジェクト、フォルダ、または組織を選択します。
次のいずれかの Compute Engine リソースを選択します。
コンピューティング インスタンス
キャパシティ プランナーのナビゲーション メニューの [使用状況と予測] セクションで、クリックして [仮想マシン] ページを開きます。
[マシン ファミリー] で、次のいずれかのオプションを選択します。
単一のマシン ファミリーを選択するには、使用可能なマシン ファミリーのいずれかを選択します。
すべてのマシン ファミリーを選択するには、[すべて] を選択します。
GPU
Capacity Planner のナビゲーション メニューの [使用量と予測] セクションで、クリックして [GPU] ページを開きます。
[GPU のタイプ] で、次のいずれかのオプションを選択します。
単一の GPU タイプを選択するには、使用可能な GPU タイプを 1 つ選択します。
すべての GPU タイプを選択するには、[すべて] を選択します。
[ロケーション] でリージョンまたはゾーンを選択します。
[使用率のパーセンタイル] で、使用率のパーセンタイルを選択します。
[マシンタイプごとの使用量と予測] テーブルで、次の操作を行います。
[データの表示対象] リストで、次のいずれかのオプションを選択します。
インスタンス別の使用量と予測を表示するには、[VM] を選択します。
CPU コア別の使用量と予測を表示するには、[コア] を選択します。
GPU ごとの使用量と予測を表示するには、[GPU] を選択します。
[履歴の開始日] で、使用期間の開始日を選択します。
[履歴の終了日] で、使用期間の終了日を選択します。
将来の予約リクエストを作成する
Google Cloud コンソールを使用して、前のセクションで Compute Engine リソースとその使用状況データを選択したら、次の手順に沿って 1 つ以上のマシンタイプの将来の予約リクエストを作成できます。
リクエスト名、名前の接頭辞、自動削除オプションを指定する
gcloud CLI コマンドを生成して複数の将来の予約リクエストを一度に作成する場合、次のプロパティはすべてのリクエストで同じ値になります。
自動削除オプション
名前の接頭辞
予約期間
生成された gcloud CLI コマンドを編集して、個々のリクエストに対してこれらの値をカスタマイズすることもできます。
複数のマシンタイプの将来の予約リクエストを一度に作成するには、gcloud CLI を選択します。個々のマシンタイプの場合は、次のいずれかのオプションを選択します。
コンソール
[マシンタイプ別の使用量と予測] テーブルで、将来の予約リクエストを作成するマシンタイプを選択し、[ 将来の予約を作成] をクリックします。
[将来の予約を作成] ページが表示されます。
[名前] に、将来の予約リクエストの名前を入力します。
[接頭辞] に、名前の接頭辞を入力します。このリクエスト用に自動作成される予約の名前は、この接頭辞で始まります。
[開始日時] に、予約期間の開始時刻を入力します。
[終了日時] に、予約期間の終了時間を入力します。
[自動生成された予約の自動削除] セクションで、次のいずれかを行います。
自動作成された予約を、完全に使用されたかどうかに関係なく、予約期間の終了後に自動的に削除するには、次の操作を行います。
[自動削除を有効にする] がオンになっていない場合は、クリックしてオンにします。
[自動削除日時] に、Compute Engine が自動作成された予約を自動的に削除できる日時を UTC オフセットなしで指定します。
予約期間の終了後に自動作成された予約が削除されないようにするには、[自動削除を有効にする] をクリックしてオフにします。
[続行] をクリックします。
gcloud
[マシンタイプ別の使用量と予測] テーブルで、将来の予約リクエストを作成するマシンタイプを選択し、 [将来の予約の gcloud コマンドを生成] をクリックします。
[将来の予約を作成] ペインが表示されます。
[名前] に、将来の予約リクエストの名前を入力します。複数のリクエストを作成すると、Capacity Planner はリクエストに NAME-1、NAME-2 などの名前を付けます。この名前付けは、作成するリクエストの数まで続きます。
[接頭辞] に、名前の接頭辞を入力します。リクエスト用に自動作成される予約の名前は、この接頭辞で始まります。
[開始日時] に、予約期間の開始時刻を入力します。
[終了日時] に、予約期間の終了時間を入力します。
[自動生成された予約の自動削除] セクションで、次のいずれかを行います。
自動作成された予約を、完全に使用されたかどうかに関係なく、予約期間の終了後に自動的に削除するには、次の操作を行います。
[自動削除を有効にする] がオンになっていない場合は、クリックしてオンにします。
[自動削除日時] に、Compute Engine が自動作成された予約を自動的に削除できる日時を UTC オフセットなしで指定します。
予約期間の終了後に自動作成された予約が削除されないようにするには、[自動削除を有効にする] をクリックしてオフにします。
[続行] をクリックします。
予約するインスタンスの数を指定する
予約するコンピューティング インスタンスの数を指定する手順は次のとおりです。
[VM 数のベース] で、リクエストする VM の数のベースとなるオプションを選択します。
[演算子] で、計算された使用量値を増やすか減らすかを選択します。
選択した使用量の値を増やすには、[(+) 増加] を選択します。
選択した使用量値を減らすには、[(-) 減らす] を選択します。
[値の割合] に、計算された使用量を増減する割合を入力します。これは、予約するインスタンスの合計数に影響します。
省略可: [VM の合計数] で、予約するインスタンスの数を調整します。
省略可: [最小 CPU プラットフォームとローカル SSD インターフェース(過去の使用率に基づく)] で、最小 CPU プラットフォームとローカル SSD ディスク インターフェースを指定します。デフォルトは、過去 30 日間の使用率が最も高い値に基づきます。
[続行] をクリックします。
共有タイプを指定する
将来の予約リクエストの共有タイプを指定するには、前のセクションで使用したのと同じオプションを選択します。
コンソール
[オーナー プロジェクト] で、リクエストのオーナー プロジェクトを指定します。
リクエストの共有タイプを指定するには、次のいずれかを行います。
複数のプロジェクトでリクエストを共有するには、次の操作を行います。
[共有タイプ] で、[プロジェクト] を選択します。
[共有先] に、リクエストを共有するプロジェクトを入力または選択します。
単一プロジェクトのリクエストを作成するには、[共有タイプ] で [ローカル] を選択します。
gcloud
各リクエストのオーナー プロジェクトを指定します。
リクエストごとに共有タイプを指定するには、次のいずれかを行います。
複数のプロジェクトでリクエストを共有するには、次の操作を行います。
[共有タイプ] で、[プロジェクト] を選択します。
[共有先] に、リクエストを共有するプロジェクトを入力または選択します。
単一プロジェクトのリクエストを作成するには、[共有タイプ] で [ローカル] を選択します。
ドラフト リクエストを作成して送信する
前のセクションの手順を完了したら、将来の予約リクエストのドラフトを作成して後で送信するか、リクエストをすぐに送信して審査を受けることができます。まず、リクエストのドラフトを作成することをおすすめします。これにより、Compute Engine がリクエストに対してプロビジョニングするインスタンスの数を決定し、必要に応じて、リクエストを送信する前に変更できます。
将来の予約リクエストのドラフトを作成して審査のために送信するには、前のセクションで使用したのと同じオプションを選択します。
コンソール
[下書きを保存] をクリックします。
下書きリクエストの作成には最大で 1 分かかることがあります。
審査を受けるためにリクエストの下書きを送信するには、次のいずれかを行います。
送信前に 1 つ以上のプロパティを変更するには、下書きリクエストを変更します。
それ以外の場合は、審査のリクエストを送信します。
gcloud
[gcloud コマンドを生成] をクリックします。
[将来の予約用に gcloud コマンドを生成する] ペインで、次の操作を行います。
省略可: 生成された gcloud CLI コマンドを編集します。
生成された gcloud CLI コマンドをコピーして保存します。これらは、将来の予約リクエストを作成する際に必要になります。
Cloud Shell または任意のコマンドラインで、前の手順で保存したコマンドを実行します。
たとえば、2 つの将来の予約リクエストを作成する場合の出力は次のようになります。
Created [https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-c/futureReservations/example-fr-1]. Created [https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-f/futureReservations/example-fr-2].審査を受けるためにリクエストの下書きを送信するには、次のいずれかを行います。
送信前に 1 つ以上のプロパティを変更するには、下書きリクエストを変更します。
それ以外の場合は、審査のリクエストを送信します。
次のステップ
将来の予約リクエストを表示する方法を学習する。
Compute Engine が将来の予約用にプロビジョニングする自動作成された予約を使用する方法を学びます。
将来の予約リクエストをキャンセルまたは削除する方法を学習する。