最小 CPU プラットフォーム

このページでは、基本となる最小 CPU プラットフォームを設定したコンテナ クラスタまたはノードプールを作成する方法について説明します。

最小 CPU プラットフォームの選択

コンテナ クラスタを作成する際、またはノードプールを作成する際には、ノード用の基本となる最小 CPU プラットフォームを選択できます。

グラフィックス、ゲーム、分析などの分野における高度なコンピューティング負荷の高いワークロードでは、さまざまな CPU プラットフォームの機能セット(AVX-2、AVX-512 など)により実現される機能の中から、個々のワークロードに適した機能を利用することができます。特定の CPU プラットフォームを選択することで、実行時間が大幅に短縮され、パフォーマンスも大きく向上する可能性があります。最小 CPU プラットフォームを指定すると、より予測可能な方法でこのような利点をワークロードで活用できるだけでなく、ワークロードに適さない CPU プラットフォームをノードで決して使用しないようにすることもできます。

最小 CPU プラットフォームを選択すると、Kubernetes Engine は、その最小 CPU プラットフォームを可能な限り使用してクラスタまたはノードプールを作成しようとします。最小 CPU プラットフォームがそのゾーンのデフォルト プラットフォームよりも古い場合、またはその CPU プラットフォームが現在使用できなくなり、同等の料金でより新しい世代の CPU プラットフォームを利用できる場合には、より新しいプラットフォームを使用してクラスタまたはノードプールが Kubernetes Engine によって作成されます。使用できないプラットフォームを指定した場合、より新しい、または同じ料金の同等のプラットフォームがなければ、ノードの作成は失敗します。

たとえば、クラスタの最小 CPU プラットフォームとして Intel Haswell を指定すると、可能な場合に Haswell を実行するノードからなるデフォルト ノードプールを使用して Kubernetes Engine でクラスタが作成されます。Haswell プラットフォームが使用できない場合、より新しい世代の CPU プラットフォームの中に Haswell プラットフォームと同等の料金で使用できるものがあれば、Kubernetes Engine はその新しいプラットフォームを使用します。

ノードでは、指定した最小 CPU プラットフォームよりも古いプラットフォームが使用されることはありません。また、Kubernetes Engine でより新しい世代のプラットフォームが選択されても、VM の料金は変わりません。

ノードはライフサイクル全体を通して同じプラットフォームを保持しますが、指定された CPU プラットフォームが廃止される場合は例外です。その場合、ノードはより新しいプラットフォームで実行されます。

制限事項

  • CPU プラットフォームを使用できるかどうかは、ゾーンによって異なります。
  • 共有コア マシンタイプ(g1-small など)では、最小 CPU プラットフォームを使用できません。

対象

特定のゾーンで使用できる CPU プラットフォームを確認するには、次のコマンドを実行します。

gcloud beta compute zones describe [ZONE]

ここで、[ZONE] はクラスタのコンピューティング ゾーンです。

このコマンドの出力に、使用可能な CPU プラットフォームがリストされます。

availableCpuPlatforms:
- Intel Skylake
- Intel Broadwell

詳細については、Compute Engine のドキュメントで VM インスタンスの最小 CPU プラットフォームの指定を参照してください。

新しいコンテナ クラスタの最小 CPU プラットフォームの選択

コンテナ クラスタの作成時に最小 CPU プラットフォームを指定できます。これより、クラスタのデフォルトのノードプールが設定されます。

Console

  1. GCP Console で [Kubernetes Engine] メニューにアクセスします。

    [Kubernetes Engine] メニューにアクセス

  2. [クラスタを作成] をクリックします。

  3. 必要に応じてクラスタを設定します。次に、[マシンタイプ] メニューで [カスタマイズ] をクリックします。
  4. [CPU プラットフォーム] プルダウン メニューから、目的のプラットフォームを選択します。
  5. [作成] をクリックします。

gcloud

gcloud コマンドライン ツールを使用して最小 CPU プラットフォームを設定した新しいクラスタを作成するには、--min-cpu-platform フラグを設定し、CPU プラットフォームを示すわかりやすい名前を指定します。

gcloud beta container clusters create [CLUSTER_NAME] --zone [COMPUTE_ZONE] --min-cpu-platform [PLATFORM_NAME]

たとえば次のコマンドは、Intel Broadwell プラットフォームを使用する example-cluster という名前のクラスタを作成します。

gcloud beta container clusters create example-cluster --zone us-central1-a --min-cpu-platform “Intel Broadwell”

API

Kubernetes Engine のベータ版 API で、リクエスト本文の nodeConfig フィールドの一部として minCpuPlatform プロパティを指定します。minCpuPlatform の値には、Intel HaswellIntel BroadwellIntel Sandy Bridge など、プラットフォームを示すわかりやすい名前を指定する必要があります。

たとえば、Intel Broadwell を実行するクラスタの場合、リクエスト本文は次のようになります。

POST https://container.googleapis.com/v1/projects/[PROJECT_ID]/zones/[ZONE]/clusters

{
  'cluster': {
    'name': '[CLUSTER_NAME]',
    'nodeConfig': {
      'minCpuPlatform': 'Intel Broadwell'
      ...
    }
    ...
  }
}

新しいノードプールの最小 CPU プラットフォームの選択

既存のクラスタ内の新しいノードプールに関して、最小 CPU プラットフォームを指定できます。

Console

  1. GCP Console で [Kubernetes Engine] メニューにアクセスします。

    [Kubernetes Engine] メニューにアクセス

  2. クラスタを選択します。

  3. [編集] をクリックします。
  4. [ノードプール] メニューから、[ノードプールを追加] をクリックします。
  5. 必要に応じてノードプールを設定します。次に、[マシンタイプ] メニューで [カスタマイズ] をクリックします。
  6. [CPU プラットフォーム] プルダウン メニューから、目的のプラットフォームを選択します。
  7. [作成] をクリックします。

gcloud

gcloud コマンドラン ツールを使用して、最小 CPU プラットフォームを設定した新しいノードプールを作成するには、--min-cpu-platform フラグを設定し、CPU プラットフォームを示すわかりやすい名前を指定します。

gcloud beta container node-pools create [POOL_NAME] --cluster [CLUSTER_NAME] --zone [COMPUTE_ZONE] --min-cpu-platform [PLATFORM_NAME]

たとえば次のコマンドは、Intel Broadwell プラットフォームを使用する example-node-pool という名前のノードプールを作成します。

gcloud beta container node-pools create example-node-pool --cluster example-cluster --zone us-central1-a --min-cpu-platform “Intel Broadwell”

API

Kubernetes Engine のベータ版 API で、リクエスト本文の nodeConfig フィールドの一部として minCpuPlatform プロパティを指定します。minCpuPlatform の値には、Intel HaswellIntel BroadwellIntel Sandy Bridge など、プラットフォームを示すわかりやすい名前を指定する必要があります。

たとえば、Intel Broadwell を実行するクラスタの場合、リクエスト本文は次のようになります。

POST https://container.googleapis.com/v1/projects/[PROJECT_ID]/zones/[ZONE]/clusters/[CLUSTER]/nodePools

{
  'nodePool': {
    'name': '[NODE_POOL]',
    'nodeConfig': {
      'minCpuPlatform': 'Intel Broadwell'
      ...
    }
    ...
  }
}

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...