この記事は TUNA Advent Calendar 2023 の 12 日目の記事です。
おうちクラウドを建てたいと思い立ってお手軽(?)に組んでみたものの、それ以来ずっと放置していた TKC をアップデートしてみました。
vCenter を 8.0u1 から u2 に更新したタイミングで、「そういえば TKC も更新しないとな?」と思い出したわけですが、みなさんも vCenter 更新したけど TKC 放置してたわ!という方多いのではないでしょうか。
TKGほどちゃんと触ってるわけでもないし。。情報も 7.0 の頃が多いですよね。
そんなわけで、vCenter をあげただけで放置していたおうちクラウド環境で、公式マニュアル中心に雰囲気だけで上げてみた記事を公開します。
大掃除をしているうちについついラボ環境まで綺麗にしたくなったときに是非どうぞ。
vCenter のアップデート
vCenter は先日 SRM/VR と一緒に u2 へアップデート済みです。Tanzu とかなにも考えずに vami からサクッとアップデートしてしまいました。
※U2a は後の検証用に取っておきたい。最新から1個前がいろいろ便利
https://vCenterのアドレス:5480/#/ui/update/availableUpdates
バージョン: 8.0.2
ビルド: 22385739 (8.0U2GA)
vSphere with Tanzu のアップデート
参考資料
公式のガイドに従ってみます。
VMware vSphere Product Documentation
Docs / VMware vSphere / Maintaining vSphere with Tanzu
Updated Information
https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-maintenance/GUID-1396A4BF-A815-414A-B65B-F8FE38B9A746.html
Updating the vSphere with Tanzu Environment
https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-maintenance/GUID-E491159F-645F-4810-B9A0-8B19AF3E9219.html
VMware vSphere with Tanzu 8.0 Release Notes
https://docs.vmware.com/en/VMware-vSphere/8.0/rn/vmware-vsphere-with-tanzu-80-release-notes/index.html#What's%20New-What's%20New%20September%2021,%202023
VMware Tanzu Kubernetes releases Release Notes
https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-releases/services/rn/vmware-tanzu-kubernetes-releases-release-notes/index.html
2023/12/12 時点の Tanzu Kubernetes releases(TKr)は 1.26.5 が最新でした。
互換性
Compatibility Matrix
https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-releases/services/rn/vmware-tanzu-kubernetes-releases-release-notes/index.html#Release-Note-Section-2001
TKr 1.26.5 をサポートする vCenter は 8.0U1c からとなっていて、1.24-1.26 までが対応するようです。
Interoperability でみると、1.26 が動くのは 8.0U2 ですね。1.26 化できればとりあえずオッケーということにしたいと思います。
Supervisor Version の更新
Home > ワークロード管理 > スーパーバイザ タブ > スーパバイザ名 > 監視 を見ると、バージョンに警告が出ていました。
現在利用可能なバージョンから、アップデートしたいバージョンを選択してアップデートします。
1.26 が最新なのになんで選べないんだろうと思いましたが、コンテンツライブラリが更新出来てなかったからでした。対応は後述します
コンテンツライブラリが問題なくイメージを取得しれいれば、v1.26 にも更新ができます
コンテンツライブラリが同期出来ない問題
利用できるイメージを確認すると、1.24 までしか同期出来ていません
root@mana:~# kubectl get tkr | grep -v v1.1
NAME VERSION READY COMPATIBLE CREATED
v1.20.12---vmware.1-tkg.1.b9a42f3 v1.20.12+vmware.1-tkg.1.b9a42f3 False False 225d
v1.20.2---vmware.1-tkg.1.1d4f79a v1.20.2+vmware.1-tkg.1.1d4f79a False False 225d
v1.20.2---vmware.1-tkg.2.3e10706 v1.20.2+vmware.1-tkg.2.3e10706 False False 225d
v1.20.7---vmware.1-tkg.1.7fb9067 v1.20.7+vmware.1-tkg.1.7fb9067 False False 225d
v1.20.8---vmware.1-tkg.2 v1.20.8+vmware.1-tkg.2 False False 225d
v1.20.9---vmware.1-tkg.1.a4cee5b v1.20.9+vmware.1-tkg.1.a4cee5b False False 225d
v1.21.2---vmware.1-tkg.1.ee25d55 v1.21.2+vmware.1-tkg.1.ee25d55 True True 225d
v1.21.6---vmware.1-tkg.1 v1.21.6+vmware.1-tkg.1 True True 225d
v1.21.6---vmware.1-tkg.1.b3d708a v1.21.6+vmware.1-tkg.1.b3d708a True True 225d
v1.22.9---vmware.1-tkg.1 v1.22.9+vmware.1-tkg.1 True True 225d
v1.22.9---vmware.1-tkg.1.cc71bc8 v1.22.9+vmware.1-tkg.1.cc71bc8 True True 225d
v1.23.15---vmware.1-tkg.4 v1.23.15+vmware.1-tkg.4 True True 225d
v1.23.8---vmware.2-tkg.2-zshippable v1.23.8+vmware.2-tkg.2-zshippable True True 225d
v1.23.8---vmware.3-tkg.1 v1.23.8+vmware.3-tkg.1 True True 225d
v1.24.9---vmware.1-tkg.4 v1.24.9+vmware.1-tkg.4 True True 225d
見たくない現実...
「ホスト wp-content.vmware.com の SSL 証明書を認証できません。」
既知事例でした。
https://docs.vmware.com/jp/VMware-vSphere/7.0/rn/vmware-vsphere-with-tanzu-70-release-notes/index.html
サブスクライブ済みコンテンツ ライブラリから Tanzu Kubernetes リリースを同期すると、「ホスト wp-content.vmware.com の SSL 証明書を認証できません」という HTTP 要求エラー メッセージが表示されて失敗する
説明:Tanzu Kubernetes クラスタの OVA 用のサブスクライブ済みコンテンツ ライブラリを構成すると、wp-content.vmware.com の SSL 証明書が生成されます。証明書のサムプリントを確認して証明書を手動で信頼するように求められます。ライブラリの初回セットアップ後に SSL 証明書が変更された場合は、サムプリントを更新して新しい証明書を再度信頼する必要があります。コンテンツ ライブラリの現在の SSL 証明書は、2021 年 6 月末に有効期限が切れます。wp-content.vmware.com をサブスクライブしているお客様はコンテンツ ライブラリの同期に失敗するため、「回避策」の手順を実行してサムプリントを更新する必要があります。詳細については、https://kb.vmware.com/s/article/85268 の関連する VMware ナレッジベースの記事を参照してください。
回避策:vSphere Client を使用して vCenter Server にログインします。サブスクライブ済みコンテンツ ライブラリを選択し、[設定の編集] をクリックします。このアクションにより、ライブラリに関する変更要求がない場合でも、サブスクリプション URL のプローブが開始されます。プローブを行うと SSL 証明書が信頼されていないことが検出され、信頼するように求められます。表示される [アクション] ドロップダウン メニューで [続行] を選択すると、フィンガープリントが更新されます。これで、ライブラリのコンテンツの同期を続行できます。
KBはこちら
Unable to pull images from vSphere with Tanzu's Subscribed Content Library with the error "A general system error occurred: HTTP request error: cannot authenticate SSL certificate for host wp-content.vmware.com." (85268)
https://kb.vmware.com/s/article/85268
ここでSSL 証明書を信頼するように求められるはずだけど出ない
TKC の作成(v1.26 ver)
イメージ名の確認
root@mana:~/k8s# kubectl get tkr
v1.23.8---vmware.3-tkg.1.ubuntu v1.23.8+vmware.3-tkg.1.ubuntu True True 99m
v1.24.11---vmware.1-fips.1-tkg.1 v1.24.11+vmware.1-fips.1-tkg.1 True True 101m
v1.24.11---vmware.1-fips.1-tkg.1.ubuntu v1.24.11+vmware.1-fips.1-tkg.1.ubuntu True True 84m
v1.24.9---vmware.1-tkg.4 v1.24.9+vmware.1-tkg.4 True True 225d
v1.25.7---vmware.3-fips.1-tkg.1 v1.25.7+vmware.3-fips.1-tkg.1 True True 100m
v1.26.5---vmware.2-fips.1-tkg.1 v1.26.5+vmware.2-fips.1-tkg.1 True True 99m
作成コマンド
v1.26.5---vmware.2-fips.1-tkg.1 を指定して、とりあえず小さな cluster を作ってみます。
root@mana:~/k8s# kubectl apply -f tkc26-v1.26.5-create-cluster.yaml
tanzukubernetescluster.run.tanzu.vmware.com/tkc-cluster26 created
お手軽デプロイ
---
apiVersion: run.tanzu.vmware.com/v1alpha2
kind: TanzuKubernetesCluster
metadata:
name: tkc-cluster26
namespace: namespace01
spec:
topology:
controlPlane:
replicas: 1
vmClass: best-effort-xsmall
storageClass: tanzu-ftt1
tkr:
reference:
name: v1.26.5---vmware.2-fips.1-tkg.1
nodePools:
- name: worker-nodepool-a1
replicas: 3
vmClass: best-effort-medium
storageClass: tanzu-ftt1
tkr:
reference:
name: v1.26.5---vmware.2-fips.1-tkg.1
新バージョンでの作成確認
v1.26.5 のイメージを使った tkc-cluster26 が作られている様子が伺えます
root@mana:~# kubectl get machine
NAME CLUSTER PHASE AGE VERSION
tkc-cluster03-wc5fj-mqbpr tkc-cluster03 Running 225d v1.24.9+vmware.1
tkc-cluster03-worker-nodepool-a1-tp6kc-6fc5944c76-2nvh8 tkc-cluster03 Running 95d v1.24.9+vmware.1
tkc-cluster03-worker-nodepool-a1-tp6kc-6fc5944c76-9zz9l tkc-cluster03 Running 95d v1.24.9+vmware.1
tkc-cluster03-worker-nodepool-a1-tp6kc-6fc5944c76-dgmbm tkc-cluster03 Running 95d v1.24.9+vmware.1
tkc-cluster26-sdbq5-4hmds tkc-cluster26 Provisioning 6m6s v1.26.5+vmware.2-fips.1
tkc-cluster26-worker-nodepool-a1-4jnfl-75c75967bb-8j4fb tkc-cluster26 Pending 6m10s v1.26.5+vmware.2-fips.1
tkc-cluster26-worker-nodepool-a1-4jnfl-75c75967bb-cxs44 tkc-cluster26 Pending 6m11s v1.26.5+vmware.2-fips.1
tkc-cluster26-worker-nodepool-a1-4jnfl-75c75967bb-s8qpd tkc-cluster26 Pending 6m10s v1.26.5+vmware.2-fips.1
まとめ
他にもアップデートが必要なコンポーネントはあるにはありますが、まずは新しいバージョンの
クラスタを作成するところまでを記事にしてみました。