1
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

updated at

NUCで始めるVMware Tanzu - TKGSの有効化

ではいよいよ、Tanzu Kubernetes Grid Service(TKGS)を有効化してみましょう!

Tanzuエディションについて

さっそく、「ワークロード管理」に移動してみると・・・、
スクリーンショット 2020-12-17 13 53 00
「Tanzu エディション ライセンスをお持ちですか?」と聞かれます。
スクリーンショット 2020-12-17 14 00 10
「はて、Tanzuエディションってなんぞ?」と思う方もいらっしゃるかもしれません。実はこのTanzuエディション、vSphere 7 Update 1から導入された概念なんです。(VMware Blog)
tanzu-editions
Day3で、Tanzuポートフォリオについてご紹介しましたが、以前は各Tanzu製品を個別に買う形となり、窓口も違うため、購入すること自体がややこしくなっていました。Tanzuエディションでは、企業の導入フェーズに合わせて4つのペルソナに分類し、顧客層を基準としたシンプルなパッケージプライスとなった訳です。
それぞれのエディションがどういうものか、簡単に説明します。

  1. Tanzu Basic : まずはオンプレでK8sを導入しようと思う企業向けで、vSphere上のインフラのみが対象です。今回紹介した、TKGとvSphere with Tanzuが利用可能です。具体的な価格を私は言えませんが、最もお手頃価格となっているとのことです。また、vSphere 7 Ent+とのバンドルとして、またはvSphere 6.7u3にデプロイするアドオンとしてライセンスを受けることができます。
  2. Tanzu Standard : マルチクラウド向けにスケール管理するためのパッケージ。TKGがサポートする他のプラットフォーム(2020年12月17日時点では、AWS(EC2)と、VMC on AWSと、Azure)が対象に加わってきます。また、Tanzu Mission Controlの機能の一部が利用可能であり、Prometheus/GrafanaなどOSSのサポート対象も拡大されます。
  3. Tanzu Advanced : DevOpsプラクティスを構築するためのパッケージとして、Tanzuポートフォリオの多くの製品が同梱されてくる予定となっています。詳細は、今後発表予定とのこと。
  4. Tanzu Enterprise : Tanzuポートフォリオをフル活用できる最上位パッケージ。自動化されたアプリケーションプラットフォームで開発者のエクスペリエンスとベロシティを向上させたい場合に最適なソリューションです。こちらも詳細は、近日発表予定とのこと。

こちらによると、他のVMware製品同様、60日の評価利用が可能です。さらに、評価期間が終了しても、評価期間中に作成したTKCは引き続き利用可能(構成変更は不可)なようなので、安心して使ってみましょうw

基本情報を入力して・・・、「登録」。
はい、これで、ワークロード管理の初期画面が現れました!
スクリーンショット 2020-12-18 22 43 04

HAProxyのCA Certの取得

「開始する」に進みたいところですが・・・、
Day18で、HAProxyを作成した訳ですが、その際、CAを放置したのを覚えてますでしょうか?この後の設定の際に、HAProxyのCA証明書が必要になるので、事前に情報を取得しておく必要があります。(私はそれを知らずに、この後の工程で証明書を求められ、有効化作業を最初からやり直すハメにあいました・・・:sob:

そして、取得できる場所が分かりづらかった。haproxyの「設定の編集」を開き・・・
スクリーンショット 2020-12-18 18 44 51
「仮想マシンオプション」の詳細を開き・・
スクリーンショット 2020-12-18 18 45 30
「構成パラメータ」の「設定の編集...」をクリックし・・
スクリーンショット 2020-12-18 18 45 53
「guestinfo.dataplaneapi.cacert」にありましたw 階層が深いっ!
スクリーンショット_2020-12-18_18_46_37_mos
さらにもう一手間必要で、「echo "(取得した文字列をペースト)" | base64 -d」で、Base64をデコードしてあげる必要があります。
スクリーンショット_2020-12-18_18_59_58mos

ワークロード管理の有効化

ではいよいよ、「開始する」を押します!
スクリーンショット 2020-12-17 16 27 54
ステップ1. vCenterとネットワークの選択。NSX-Tを導入してないため、特に選択肢はないです。「次へ」
スクリーンショット 2020-12-17 16 32 26
なお、ここでDay18で作成した「コンテンツライブラリ」がないと、先に進めませんでした・・
スクリーンショット 2020-12-17 16 37 12
2ではvSphereクラスタを選択します。選んで「次へ」
スクリーンショット 2020-12-17 17 09 08
3は、ControlPlaneのサイズ。本番運用だと「中」以上がオススメですが、検証用途なので「極小」にしてみます
スクリーンショット 2020-12-17 23 03 46
4はストレージの選択ですね。事前に作成したポリシー選んで「次へ」
スクリーンショット 2020-12-18 18 03 46
5はLB情報を入力。ここで、事前に設計したIP情報や、作成したhaproxyや、CAが必要になります!
(2020年12月21日修正) 以下の設定で作り直しました。

  • 名前 : haproxy-lb (DNS名。小文字a-z、数字0-9、-(ハイフン)のみが使用可能とのこと)
  • タイプ : HA プロキシ (現時点ではこれしか選べない。。)
  • データプレーンAPIのアドレス : 172.18.0.45:5556 (※haproxyのIPアドレス:ポート)
  • ユーザー名&パスワード : (登録したものを入れる)
  • 仮想サーバのIPアドレス範囲 : 172.18.0.208-172.18.0.222 (事前に設計したVIPのレンジ内で指定)
  • サーバ認証局 : (先ほど取得したCA Certをコピペ)
    スクリーンショット 2020-12-18 23 05 38
    6は管理ネットワークです。「開始IPアドレス」から5IPsのアドレスを、Supervisor ControlPlane VMが使用するため、バッティングしないようご注意下さい。
    (2020年12月21日追記) ネットワークは「DSwitch-VM Natwork」とした
    スクリーンショット 2020-12-18 23 27 41
    7は、ワークロードネットワークです。ここはちょっと紛らわしくて、最初にあるサービスとは、K8sのServiceリソースのことです。つまり、コンテナネットワークです。特に最初から入っている値のままで良いでしょう。DNSサーバは、k8sのコンテナネットワークで良く使われる「8.8.8.8」を指定してみます。続いて、ワークロードネットワークを「追加」
    スクリーンショット 2020-12-18 23 36 22
    ワークロードネットワークには、TKCのControlPlaneやWorkerのVMにアサインされるIPを指定していき、「保存」
    (2020年12月21日追記) 以下の設定に作り直しました。

  • Name : network-1 (そのまま放置)

  • Port Group : DPortGroup-workload

  • Gateway : 172.18.0.1

  • Subnet : 255.255.255.0

  • IP Address Range : 172.18.0.129-172.18.0.191
    スクリーンショット 2020-12-19 0 13 32
    すると、このように情報が埋まります。このネットワークを選択して「次へ」
    スクリーンショット 2020-12-19 0 18 41
    8は、コンテンツライブラリを追加して、「次へ」
    スクリーンショット 2020-12-19 0 20 50
    9は確認画面。今までの設定が問題ないことを確認し、「完了」! さぁ、どうだ・・・?
    スクリーンショット 2020-12-19 0 24 41
    なんか画面下のタスクが色々と動き出した・・・結構時間がかかります。
    時折、「OVFテンプレートのデプロイ」や「リモートファイルのダウンロード」で、「ステータス404でHTTP通信を完了出来ませんでした。」とエラーが出てドキッとしますが、リトライしてなんとか処理してくれているようです。
    スクリーンショット 2020-12-19 0 26 17
    20分位して、Supervisor ControlPlaneVMのデプロイは一通り終わったように見えますが、引き続きSupervisor Namespaceの設定をなにかやっているようです。
    スクリーンショット 2020-12-19 0 50 55

さらに10分位して、「名前空間」メニューが使用可能となり、クラスタが「実行中」のステータスとなれば完了です!「完了」を押してからのトータル待ち時間は、30分ちょいといったところでした。
スクリーンショット 2020-12-19 1 00 41
スクリーンショット 2020-12-19 1 01 01

リソース魚拓

さて、今までのTKG環境に加え、今回、「Namespaces」というリソースプールが作成され、3台の「SupervisorControlPlaneVM」が作成されました。同居させるとどうなるかな?

SupervisorControlPlaneVM

Tinyでも結構消費しますね!VM毎にバラツキがあるのが興味深いです。

  • CPU : 500MHz 〜 1GHz
  • Mem : 1 GB 〜 2GB
  • Storage : 13 GB 〜 15 GB スクリーンショット 2020-12-19 1 10 36

Namespaces

Supervisor Clusterの分は、カウントしていなさそうですね。ほぼリソースなし
スクリーンショット 2020-12-19 1 19 41

HAProxy

CPUとメモリはほぼ0!省エネ設計ですね:blush:
スクリーンショット 2020-12-19 1 21 43

Nested ESXi

おぉ、結構使ってきましたね。。特にメモリが。でも、まだ入るな。SV ControlPlane VMが居るところが多めになる。

  • CPU : 1GHz 〜 1.5GHz
  • Mem : 21GB 〜 27GB スクリーンショット 2020-12-19 1 31 01

Nested vCenter

使用メモリが90GBを超えてきました。
スクリーンショット 2020-12-19 1 35 13

物理 vCenter

ざっくりいうと利用率50%といったところでしょうか。TKGとvSphere w/ Tanzuを組み合わせると、やはりメモリが2台では収まらないですね。
スクリーンショット 2020-12-19 1 39 02

ちょっと長くなってしまいましたね。vSphere with Tanzuの方が、導入するまでが大変な印象です。
明日は、実際に使ってみたいと思います!

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
1
Help us understand the problem. What are the problem?