vm.gowatana.jp

NEOにほんごVMware(仮)

はじめての Tanzu Community Edition。(kube-vip 編)Part-01

VMware から Tanzu Community Edition(TCE)が提供開始されたので、自宅ラボの vSphere 環境に、Kubernetes クラスタを作成してみます。

Tanzu Community Edition(TCE)は、無償で利用できる Tanzu Kubernetes Grid です。

 

2022年10月ごろに TCE 提供が終了となり、非商用であれば TKG が 100 CPU Core まで無料利用できるようになりました。環境構築の様子は下記をどうぞ。

 

ドキュメントは下記にあります。

 

手順については、下記のあたりが参考になります。

 

今回の内容です。

 

今回の構成について

今回は、kube-vip を利用して、vSphere に  Managed Cluster を作成します。

 

Kubernetes クラスタの作成先

TCE では、Kubernetes クラスタ(Management & Workload Cluster)の作成先として、Docker、vSphere、Amazon EC2、Microsoft Azure から選択できます。今回は自宅ラボなので vSphere を選択します。

ちなみに、Docker は従来の TKG(TKG 1.4)にはなく、TCE から選択できるようになりました。これを選択すると、Kubernetes ノードが Docker コンテナで作成されます。

なお、ここで Dcoker 以外を選択した場合も、Bootstrap マシン(後述)には Docker が必要です。

 

作成するクラスタの種類

これまでのTanzu Kubernetes Grid(TKG)には、Bootstrap Cluster、Management Cluster と、Workload Cluster という3種類の Kubernetes クラスタが登場していました。

Tanzu Community Edition(TCE)では、Standalone Cluster という、Management Cluster を作成しない Workload Cluster を作成できるようになりました。しかし、今回は従来どおりの Workload Cluster を作成します。

ちなみに Standalone Cluster と区別して、従来からの Workload Cluster は Managed Cluster と呼ばれるようになったようです。

 

ロードバランサ(VIP)製品の選択

TCE では、制御プレーンの VIP を設定するために kube-vip か NSX Advanced Load Balancer(NSX ALB、通称 Avi)が利用できます。今回はセットアップの手軽さを重視して、あえて kube-vip を利用します。

ただし、おすすめは NSX ALB かなと思います。Avi Kubernetes Operator(AKO)が自動セットアップされて便利なので・・・

 

vSphere 環境の準備

TCE を利用するため、下記のような感じで vSphere 環境を準備しておきます。

  • vSphere 環境(vCenter と ESXi)を構築しておきます。今回は、vSphere 7.0 U2 を利用しています。vSphere HA / DRS は必須ではありませんが、このラボではどちらも有効にしています。
  • 管理ネットワークと、Kubernetes ノードを配置する DHCP ネットワークを用意してあります。それぞれポートグループを作成ずみです。どちらのネットワークも、ソフトウェアやコンテナのダウンロードのため、インターネットにアクセス可能にしておきます。
  • TKG / TCE で作成される Kubernetes ノードでは、DHCP が必要です。図では表現してありませんが、DHCP サーバも用意してあります。

 

このあと TCE で Kubernetes クラスタを作成する仮想マシン フォルダを作成しておきます。今回はわかりやすく Management Cluster と Workload Cluster とでフォルダを分けます。そしてリソースプール も、指定する場合は作成しておきます。

f:id:gowatana:20211015083243p:plain

 

OVA テンプレートのデプロイ

TCE で使用する OVA ファイルをデプロイし、テンプレートに変換しておきます。

OVA ファイルは、下記からダウンロードします。

 

OVA ファイルからデプロイした VM は、右クリックで「テンプレートに変換」しておきます。

f:id:gowatana:20211015084140p:plain

 

TCE での Kubernetes クラスタ作成の流れ

TCE では、tanzu CLI で操作します。このあとは、次のような手順を進めます。

  1. Bootstrap マシンでの環境準備
  2. Management Cluster の作成(Bootstrap Cluster も一時的に作成される)
  3. Workload Cluster の作成

 

f:id:gowatana:20211014231456p:plain

 

tanzu CLI を利用する Bootstrap マシンは、物理マシンでも VM でもかまわず、OS は  Linux / Windows / Mac が利用できます。

今回は、vSphere 上の Linux VM (lab-tceboot-01)を利用します。これは、Photon OS 4.0 の OVA ファイルをデプロイして作成しました。

f:id:gowatana:20211015083752p:plain

 

つづく。