vSphere 7.0 から、vSphere で Kubernetes ワークロードを実行する機能が追加されました。
vSphere with Kubernetesの設定と管理
vSphere with Kubernetes Configuration and Management (英語の原文)
この機能を「ちゃんとサポートされた構成」で構築するには、
ハードウェア/ソフトウェア要件がわりと厳しめです。
そこで今回は、とりあえず機能を体験するためのラボ環境構築をしてみます。
vSphere with Kubernetes を有効化したクラスタは Superviser Cluster や、Workload Control Plane(WCP)と呼ばれていて、
vCenter のインベントリで「名前空間(Namespace)」が作成できるようになります。
この環境での Kubernetes ワークロード実行には、主に 2パターンあります。
vSphere Pod
- ESXi が Kubernetes の Worker Node になる。
- Pod が作成されるたびに、Pod 専用の VM が起動される。
Tanzu Kubernetes Cluster
- ゲスト OS での Kubernetes クラスタを構成する。つまり VM が Kubernetes の Worker Node になる。
- Pod は、Worker Node の VM 上で起動される。(vSphere Client から見えるのは Wroker Node まで)
vSphere Client から見ると、それぞれ下記のように見えます。
環境説明。
Superviser Cluster での Kubernetes は、NSX-T の利用を前提としています。
これから構築するラボ環境のネットワーク構成は、下記のような感じになります。
NSX-T では、Tier-0 Gateway を手作業で作成しておく必要があります。
(NSX の各要素の設定については、のちほど説明するつもり・・・)
サーバ構成。
今回は、下記のようなサーバ構成にしています。
図の赤破線内の VM は、あらかじめ用意しておきます。
- 物理マシンは、サーバではなく、ちょっと性能がいい PC を利用します。
- ネステッド ハイパーバイザ環境です。(ESXi 上の VM に、ゲスト OS として ESXi をインストール)
- 頑張れば、もう少し CPU / メモリ リソースは削減できます。
- vCPU / vRAM 割り当てが大きい vCenter、NSX Manager、NSX Edge は、ネステッド ESXi の外側に配置。
- Superviser Cluster ラボ環境むけに、新規で vCenter を用意して、 ネステッド ESXi を登録しています。
ネストの内側の環境について。
まず、今回 Supervisor Cluster にする vSphere 環境です。
ESXi 3ノードの vSphere クラスタ(wcp-cluster-01)を構成しています。
バージョンは下記です。
- vCenter Server 7.0.0a
- ESXi 7.0 GA
ESXi の共有データストアは NFS です。
一般的には vSAN になると思いますが、ネステッド環境のスペックの都合上 NFS にしています。
シン プロビジョニングになるので、搭載 VM の VMDK 合計よりも少ない容量(500 GB程度)です。
ESXi には、「ワークロード管理」の機能をもつライセンスが必要です。
今回は、ESXi インストール直後の評価モード(60日間の)です。
ネストの外側の環境について。
ここまでに紹介した「ネステッド vSphere」の外側の vSphere です。
機能上ネステッド ESXi 上にのせる必要がない VM は、あえて外側の vSphere に配置しています。
下記の VM が稼働しています。
- ESXi の VM が 3つ
- vCenter
- NSX Manager
- NSX Edge (スクリーンショットにはまだ存在しない)
- NFS データストアにしている Linux VM
ネステッド ESXi(ESXi をインストールしている VM)の vNIC では、ネストむけのポートグループを割り当てます。
この環境では vDS を利用しており、分散ポートグループは次のように設定しておきます。
- VLAN トランク(0-4094)。※vSS の標準ポートグループの場合は VLAN 4095。
- 無差別モード、MAC アドレス変更、偽装転送を「承諾」。
また、この vDS も NSX-T オーバーレイ ネットワークの経路になるので、
MTU を 1600 に設定しておきます。
つづく。
vSphere with Kubernetes 環境構築。Part-02: vSphere 事前準備編