仮想 vSphere データセンターでユーザー クラスタを作成する

このページでは、管理クラスタとは異なるデータセンターにユーザー クラスタを作成する方法について説明します。

Anthos clusters on VMware(GKE On-Prem)バージョン 1.9 以降では、異なる vSphere データセンターを持つ管理クラスタとユーザー クラスタを作成できます。このドキュメントでは、この公開プレビュー機能の使用方法について説明します。

前提条件

管理ワークステーションのバージョンが 1.9 以上にアップグレードされていることを確認します。

ステップ 1: 新しいユーザー クラスタのユーザー クラスタ構成ファイルを作成する

ユーザー クラスタの作成の詳細については、ユーザー クラスタを作成するをご覧ください。

新しいユーザー クラスタのユーザー クラスタ構成ファイルを作成するときに、ファイルを管理クラスタとは別のデータセンターに配置する場合は、vCenter.datacenter フィールドを含める必要があります。vCenter.datacenter フィールドを含める場合は、vCenter.clustervCenter.datastorevCenter.networkName フィールドも追加する必要があります。

管理クラスタとユーザー クラスタが別々の仮想 vSphere データセンターにある場合、masterNode.vSphere.datastore フィールドは必須です。管理クラスタ コントロール プレーンとユーザー クラスタ コントロール プレーンでデータストアの障害発生ドメインが分離されるように、管理クラスタ データセンター内のユーザー クラスタ コントロール プレーンごとに別々のデータストアを作成することをおすすめします。ユーザー コントロールプレーン ノードには、管理クラスタ データストアを使用できますが、これによりユーザー コントロールプレーン ノードと管理クラスタが同じデータストア障害ドメインに配置されます。

この例では、管理クラスタが ADMIN_DATACENTER にあり、新しいユーザー クラスタが USER_DATACENTER にあります。

apiVersion: v1
kind: UserCluster
# ...
gkeOnPremVersion: 1.9.0-gke.x
# ...
vCenter:
  datacenter: USER_DATACENTER # Required
  cluster: USER_CLUSTER # Required if resourcePool is not specified.
  folder: USER_FOLDER # Optional
  resourcePool: USER_RESOURCE_POOL # Required if cluster is not specified.
  datastore: USER_DATASTORE # Required
  credentials: # Optional
    fileRef:
      path: USER_VCENTER_CREDENTIAL_PATH
      entry: vCenter
masterNode:
  vsphere:
    datastore: USER_MASTER_DATASTORE # Required.
network:
  vCenter:
    networkName: USER_NETWORK # Required

ステップ 2: OS イメージ テンプレートをアップロードする

次に、gkectl prepare を実行して OS イメージ テンプレートを USER_DATACENTER にアップロードします。

gkectl prepare --kubeconfig ADMIN_KUBECONFIG --bundle-path BUNDLE_TARBALL --user-cluster-config USER_CLUSTER_CONFIG

次のように置き換えます。

  • BUNDLE_TARBALL は、1.9.0-gke.x バンドル tarball へのパスに置き換えます。
  • ADMIN_KUBECONFIG: 管理クラスタの kubeconfig ファイルのパス。
  • USER_CLUSTER_CONFIG は、ユーザー クラスタの構成ファイルのパスに置き換えます。

ステップ 3: 別のデータセンターにユーザー クラスタを作成する

gkectl create を実行して、別のデータセンターに新しいユーザー クラスタを作成します。このコマンドは、管理クラスタと同じデータセンターに対するものと同一です。

gkectl create cluster --kubeconfig ADMIN_KUBECONFIG --config USER_CLUSTER_CONFIG

新しいユーザー クラスタのサービス アカウント

ユーザー クラスタでは、管理クラスタとは異なる vCenter.credentials の vSphere サービス アカウントを使用できます。管理サービス アカウントでアクセスできるのは管理データセンターのみであり、ユーザー サービス アカウントは対応するユーザー データセンターのみにアクセスする必要があります。

新しいユーザー クラスタのファイアウォール ルール

管理クラスタとユーザー クラスタは、異なる VLAN と異なるデータセンターで networkName を使用できます。ただし、次の VLAN 間通信を許可する必要があります。

  • 管理クラスタノードは、ユーザー クラスタノードの IP アドレスのポート 22 にアクセスできます。このアクセス権は、ユーザー コントロール プレーンがユーザーノードへの ssh トンネルを作成するために必要です。
  • ユーザーノードで、ユーザー コントロール プレーンの VIP アドレスのポート 443 にアクセスできます。このアクセス権は、ユーザーノードと Pod で API サーバーと通信するために必要です。