Google Distributed Cloud は、vSphere 環境内のオンプレミスで実行されます。このドキュメントでは、vSphere 環境の要件について説明します。
バージョンの互換性
vSphere の要件は、使用している Google Distributed Cloud のバージョンによって異なります。詳細については、完全にサポートされたバージョンと以前のバージョンのバージョン互換性マトリックスをご覧ください。
サポート対象のバージョン
vSphere は、VMware のサーバー仮想化ソフトウェアです。vSphere には ESXi と vCenter Server が含まれています。
Google Distributed Cloud は、次のバージョンの ESXi と vCenter Server をサポートしています。
- バージョン 7.0 の 7.0 Update 2 以降のアップデート
- バージョン 8.0 の 8.0 以降のアップデート
8.0 またはバージョン 7.0 の 7.0 Update 3 以降のアップデートを使用することをおすすめします。
CSI ボリューム スナップショットを作成する場合は、次のいずれかのバージョンが必要です。
- バージョン 7.0 の 7.0 Update 3 以降のアップデート
- バージョン 8.0 の 8.0 以降のアップデート
ライセンス要件
次のいずれかのアカウントが必要です。
vSphere Enterprise Plus ライセンス。このライセンスに加えて、有効なサポートのサブスクリプションが必要です。
vSphere Standard ライセンス。このライセンスに加えて、有効なサポートのサブスクリプションが必要です。このライセンスで、反アフィニティ グループは有効にできません。また、独自のリソースプールを指定することもできません。デフォルトのリソースプールを使用する必要があります。
ハードウェア要件
Google Distributed Cloud は、VMware ESXi ハイパーバイザを実行する一連の物理ホストで実行されます。ESXi のハードウェア要件については、ESXi ハードウェア要件をご覧ください。
本番環境では、次のことを強くおすすめします。
クラスタ VM で使用可能な ESXi ホストを 4 つ以上用意する。
Anthos clusters on VMware を、同じ vSphere データセンター内の別の vSphere クラスタまたはリソースプールにデプロイする場合は、OS テンプレートの共有を許可するために ESXi ホスト間のネットワーク ファイル コピー(NFC)トラフィックを有効にします。
クラスタ構成ファイルで、
antiAffinityGroups.enabled
をtrue
に設定する。
antiAffinityGroups.enabled
を true
に設定すると、Google Distributed Cloud はクラスタノード用に DRS 反アフィニティ ルールを作成し、3 つ以上の物理 ESXi ホストにそれらを分散させます。DRS ルールでは、クラスタノードを 3 つの ESXi ホストに分散することを要求していますが、少なくとも 4 つの ESXi ホストを用意することを強くおすすめします。これにより、クラスタ コントロール プレーンが失われなくなります。たとえば、ESXi ホストが 3 つだけで、管理クラスタのコントロール プレーン ノードが障害が発生した ESXi ホストにあるとします。DRS ルールにより、残りの 2 つの ESXi ホストのいずれにもコントロール プレーン ノードは配置されなくなります。
評価と概念実証のために、antiAffinityGroups.enabled
を false
に設定し、ESXi ホストを 1 つだけ使用できます。詳細については、最小限のインフラストラクチャを設定するをご覧ください。
vCenter ユーザー アカウントの権限
vSphere 環境を設定するために、組織管理者は vCenter Server 管理者のロールを持つ vCenter ユーザー アカウントを使用できます。このロールでは、すべての vSphere オブジェクトに対する完全アクセス権が付与されます。
vSphere 環境の設定後、クラスタ管理者は管理クラスタとユーザー クラスタを作成できます。クラスタ管理者に vCenter Server 管理者ロールのすべての権限は必要ありません。
クラスタ管理者またはデベロッパーがクラスタを作成すると、認証情報構成ファイルに vCenter ユーザー アカウントが作成されます。認証情報の構成ファイルにリストされる vCenter ユーザー アカウントには、クラスタの作成と管理に必要な最小限の権限を持つ 1 つ以上のカスタムロールを割り当てることをおすすめします。
組織管理者が実施できるアプローチは 2 つあります。
さまざまな権限レベルを持つ複数のロールを作成します。次に、個々の vSphere オブジェクトに対するこれらの制限付きロールをユーザーまたはグループに割り当てる権限を作成します。
必要な権限をすべて備えたロールを 1 つ作成します。次に、vSphere 階層内のすべてのオブジェクトで特定のユーザーまたはグループにそのロールを割り当てるグローバル権限を作成します。
アクセスが制限され、vCenter Server 環境のセキュリティを強化できることから、1 つ目のアプローチをおすすめします。詳細については、ロールを使用して権限を割り当てるとロールと権限に関するベスト プラクティスをご覧ください。
2 つ目のアプローチの実施については、グローバル権限を 1 つ作成するをご覧ください。
次の表に、組織管理者が作成できる 4 つのカスタムロールを示します。管理者はカスタムロールを使用して、特定の vSphere オブジェクトに対する権限を割り当てることができます。
カスタムロール | 権限 | オブジェクト | 子オブジェクトへの 伝播 |
---|---|---|---|
ClusterEditor |
System.Read System.View System.Anonymous Host.Inventory.Modify cluster |
クラスタ | ○ |
SessionValidator |
System.Read System.View System.Anonymous Sessions.Validate session Cns.Searchable Profile-driven storage.Profile-driven storage view |
ルート vCenter Server | × |
ReadOnly |
System.Read System.View System.Anonymous |
データセンター ネットワーク |
○ |
Anthos | Anthos のロールの特権 |
データストア リソースプール VM フォルダ ネットワーク |
○ |
Anthos カスタムロールでの権限
カスタムロールと権限を作成する
組織管理者は、govc コマンドライン ツールを使用してカスタムロールと権限を作成できます。
組織管理者には、ロールと権限を作成するために必要な権限を持つ vCenter Server アカウントが必要です。たとえば、管理者ロールを持つアカウントが適切です。
govc
を実行する前に、いくつかの環境変数を設定します。
GOVC_URL を vCenter Server インスタンスの URL に設定します。
GOVC_USERNAME を組織管理者の vCenter Server アカウントのユーザー名に設定します。
GOVC_PASSWORD を組織管理者の vCenter Server アカウントのパスワードに設定します。
次に例を示します。
export GOVC_URL=vc-01.example export GOVC_USERNAME=alice@vsphere.local export GOVC_PASSWORD=8ODQYHo2Yl@
カスタムロールを作成する
ClusterEditor、SessionValidator、ReadOnly のカスタムロールを作成します。
govc role.create ClusterEditor System.Read System.View System.Anonymous Host.Inventory.EditCluster govc role.create SessionValidator System.Read System.View System.Anonymous Sessions.ValidateSession Cns.Searchable StorageProfile.View govc role.create ReadOnly System.Read System.View System.Anonymous
ClusterEditor ロールを付与する権限を作成する
権限は、ペア(ユーザー、ロール)を取得しオブジェクトに関連付けます。オブジェクトに権限を割り当てる際、権限を子オブジェクトに伝播するかどうかを指定できます。govc
の場合は、--propagate
フラグを true
または false
に設定してこの処理を行います。デフォルトは false
です。
クラスタ オブジェクトのユーザーに ClusterEditor ロールを付与する権限を作成します。この権限は、クラスタ オブジェクトのすべての子オブジェクトに伝播されます。
govc permissions.set -principal ACCOUNT \ -role ClusterEditor -propagate=true CLUSTER_PATH`
次のように置き換えます。
ACCOUNT: ロールが付与される vCenter Server ユーザー アカウント
CLUSTER_PATH: vSphere オブジェクト階層内のクラスタのパス。
たとえば、次のコマンドはペア(bob@vsphere.local、ClusterEditor を my-dc/host/my-cluster に)関連付ける権限を作成します。権限は、my-dc/host/my-cluster のすべての子オブジェクトに伝播されます。
govc permissions.set -principal bob@vsphere.local \ -role ClusterEditor -propagate=true my-dc/host/my-cluster
追加の権限を作成する
このセクションでは、追加の権限を作成する例を示します。環境の必要に応じて、サンプル オブジェクト パスを置き換えます。
ルート vCenter Server オブジェクトのアカウントに SessionValidator ロールを付与する権限を作成します。この権限は、子オブジェクトに反映されません。
govc permissions.set -principal ACCOUNT \ -role SessionValidator -propagate=false
データセンター オブジェクトとネットワーク オブジェクトのアカウントに ReadOnly ロールを付与する権限を作成します。これらの権限は、子オブジェクトに伝播されます。
govc permissions.set -principal ACCOUNT \ -role ReadOnly -propagate=true \ /my-dc \ /my-dc/network/my-net
4 つのオブジェクト(データストア、VM フォルダ、リソースプール、ネットワーク)のアカウントに Anthos のロールを付与する権限を作成します。これらの権限は、子オブジェクトに伝播されます。
govc permissions.set -principal ACCOUNT -role Anthos -propagate=true \ /my-dc/datastore/my-ds \ /my-dc/vm/my-folder \ /my-dc/host/my-cluster/Resources/my-rp \ /my-dc/network/my-net
グローバル権限を 1 つ作成する
このセクションでは、複数のロールと複数の権限を作成する代替方法について説明します。この方法は、vSphere 階層内のすべてのオブジェクトに対して広範な権限を付与するため、おすすめしません。
Anthos カスタムロールをまだ作成していない場合は、今すぐ作成します。
グローバル権限を 1 つ作成します。
govc permissions.set -principal ACCOUNT \ -role Anthos -propagate=true
次のように置き換えます。
ACCOUNT は、ロールが付与される vCenter Server ユーザー アカウントに置き換えます。
たとえば、次のコマンドは、Anthos ロールを bob@vsphere.local に付与するグローバル権限を作成します。この権限は、vSphere 階層内のすべてのオブジェクトに伝播されます。
govc permissions.set -principal bob@vsphere.local -role Anthos -propagate=true
既知の問題
vSphere データディスクの作成時にインストーラが失敗するをご覧ください。