このページでは、Arm ノードを含む GKE Standard クラスタまたはノードプールを作成し、Google Kubernetes Engine(GKE)で Arm ワークロードを実行できるようにする方法について説明します。Autopilot クラスタに Arm ワークロードをデプロイする方法については、Arm アーキテクチャに Autopilot ワークロードをデプロイするをご覧ください。
C4A マシンシリーズまたは Tau T2A マシンシリーズを使用して、Arm ノードを含むクラスタを作成できます。Arm の利点とワークロードに最適なマシンシリーズの選択については、Compute での Arm VM をご覧ください。
GKE では、1 つのアーキテクチャ タイプ(Arm など)または複数のアーキテクチャ タイプ(Arm と x86 など)を持つノードプールを含むクラスタを作成できます。複数のアーキテクチャ タイプのノードを実行する場合は、これらのアーキテクチャのワークロードを同じクラスタにデプロイできます。
GKE クラスタで Arm ノードを使用する方法については、GKE での Arm ワークロードをご覧ください。
始める前に
始める前に、次の作業が完了していることを確認してください。
- Google Kubernetes Engine API を有効にする。 Google Kubernetes Engine API の有効化
- このタスクに Google Cloud CLI を使用する場合は、gcloud CLI をインストールして初期化する。すでに gcloud CLI をインストールしている場合は、
gcloud components update
を実行して最新のバージョンを取得する。
- C4A ノードと T2A ノードの要件と制限事項を確認します。
- クラスタを作成するための適切な権限があることを確認します。少なくとも、Kubernetes Engine Cluster 管理者である必要があります。
Arm ノードプールを含むクラスタを作成する
次の手順では、C4A マシンシリーズまたは Tau T2A マシンシリーズから Arm ノードを実行するノードプールを含む新しいクラスタの作成方法について説明します。
gcloud CLI、Google Cloud コンソール、または Terraform を使用してクラスタを作成できます。
gcloud
Arm ノードを含むデフォルトのノードプールがある新しいゾーンクラスタを作成します。
gcloud container clusters create CLUSTER_NAME \
--zone ZONE \
--node-locations NODE_LOCATIONS \
--machine-type ARM_MACHINE_TYPE \
--num-nodes NUM_NODES
次のように置き換えます。
CLUSTER_NAME
: Arm ノードプールを含む新しいクラスタの名前。ZONE
: クラスタのゾーン(us-central1-a
など)。このゾーンは、選択した Arm マシンシリーズの使用可能なゾーンのいずれかである必要があります。リージョン クラスタを作成するには、--region=REGION
フラグを使用します。リージョンは、選択した Arm マシンシリーズの使用可能なリージョンのいずれかである必要があります。NODE_LOCATIONS
: ノードプールのゾーン(us-central1-a
など)。Arm マシンシリーズの使用可能なゾーンから選択する必要があります。このように選択しないと、ノードプールの作成が失敗する場合があります。ARM_MACHINE_TYPE
: 使用可能な C4A マシンシェイプまたは T2A マシンシェイプのいずれか(c4a-standard-8
やt2a-standard-16
など)。NUM_NODES
: Arm ノードプールのノード数。
クラスタに追加設定を行う場合は、gcloud container clusters create
リファレンスを参照して、クラスタ作成時に利用可能なすべての設定の一覧を確認してください。
コンソール
Google Cloud コンソールで Google Kubernetes Engine のページに移動します。
[add_box 作成] をクリックします。
クラスタを構成します。詳細については、ゾーンクラスタを作成するまたはリージョン クラスタの作成の手順をご覧ください。
Arm ノードを使用できるロケーションを選択します。
- [クラスタの基本] セクションの [ロケーション タイプ] で、[ゾーン] または [リージョン] を選択します。
- プルダウン メニューで、Arm ノードを使用できるゾーンまたはリージョンを選択します。
- [デフォルトのノードのロケーションを指定する] チェックボックスをオンにします。Arm ノードを使用できるゾーンを選択します。
Arm マシンタイプを選択するには、[ノード] サブセクションの [ノード設定を構成する] > [マシンの構成] > [マシン ファミリー] で [汎用] を選択します。[シリーズ] プルダウン メニューで、C4A または T2A を選択します。[マシンタイプ] プルダウン メニューで、使用可能なオプションのいずれかを選択します。
[作成] をクリックします。
Terraform
Terraform を使用して Arm ノードを使用するデフォルト ノードプールを持つゾーンクラスタを作成するには、次の例をご覧ください。
Terraform の使用方法の詳細については、GKE での Terraform のサポートをご覧ください。
GKE クラスタに Arm ノードプールを追加する
新しいノードプールを GKE Standard クラスタに追加するには、gcloud CLI、Google Cloud コンソール、または Terraform を使用します。
任意のタイプのノードを使用する GKE クラスタを作成するためのベスト プラクティスとして、Compute Engine のデフォルトのサービス アカウントではなく、使用するノードプール用に最小権限の Identity and Access Management(IAM)サービス アカウントを作成して使用することをおすすめします。最小権限のサービス アカウントを作成する手順については、クラスタのセキュリティの強化をご覧ください。
gcloud
Arm ノードプールを既存のクラスタに追加します。
gcloud container node-pools create NODE_POOL_NAME \
--cluster CLUSTER_NAME \
--zone ZONE \
--node-locations NODE_LOCATIONS \
--machine-type ARM_MACHINE_TYPE \
--num-nodes NUM_NODES \
--service-account SERVICE_ACCOUNT
次のように置き換えます。
NODE_POOL_NAME
: 既存のクラスタの新しい Arm ノードプールの名前。ZONE
: 既存のクラスタのゾーン。リージョン クラスタの場合は、クラスタのリージョンを指定した--region=REGION
フラグを使用します。CLUSTER_NAME
: Arm ノードプールを追加するクラスタの名前。NODE_LOCATIONS
: ノードプールのゾーン(us-central1-a
など)。Arm マシンシリーズの使用可能なゾーンから選択する必要があります。このように選択しないと、ノードプールの作成が失敗する場合があります。ARM_MACHINE_TYPE
: 使用可能な C4A マシンシェイプまたは T2A マシンシェイプのいずれか(c4a-standard-8
やt2a-standard-16
など)。NUM_NODES
: Arm ノードプールのノード数。SERVICE_ACCOUNT
: ノードで使用する IAM サービス アカウントの名前。省略した場合、ノードプールは Compute Engine のデフォルトのサービス アカウントを使用します。
ノードプールに追加設定を行う場合は、gcloud container node-pools create
リファレンスでノードプールの作成時に使用可能なすべての設定の一覧を確認してください。
コンソール
Arm ノードプールを既存のクラスタに追加する手順は、次のとおりです。
Google Cloud コンソールで Google Kubernetes Engine のページに移動します。
クラスタのリストで、変更するクラスタの名前をクリックします。
[add_boxノードプールを追加] をクリックします。
ノードプールを構成します。
Arm ノードを使用できるノードのロケーションを選択します。
- [ノードプールの詳細] セクションで、[ノードのロケーションを指定する] チェックボックスをオンにします。
- Arm ノードを使用できるゾーンを選択します。
Arm マシンタイプを選択するには、[ノード] サブセクションの [ノード設定を構成する] > [マシンの構成] > [マシン ファミリー] で [汎用] を選択します。[シリーズ] プルダウン メニューで、C4A または T2A を選択します。[マシンタイプ] プルダウン メニューで、使用可能なオプションのいずれかを選択します。
ナビゲーション メニューで [セキュリティ] をクリックします。
[サービス アカウント] プルダウン メニューで、使用するノードプールに IAM サービス アカウントを選択します。デフォルトでは、ノードプールは Compute Engine のデフォルトのサービス アカウントを使用します。
[作成] をクリックしてノードプールを追加します。
Terraform
Terraform を使用して Arm ノードを使用するノードプールを既存のクラスタに追加するには、次の例をご覧ください。
google_container_cluster.default.id
は、使用するクラスタの名前に置き換えます。
Terraform の使用方法の詳細については、GKE での Terraform のサポートをご覧ください。