我在vSphere环境中尝试安装TKGv1.6
我已经在vSphere环境中安装了Tanzu Kubernetes Grid(TKG)v1.6。
我在参考 TKGv1.6 的官方文档的同时进行工作。
-
- VMware Tanzu Kubernetes Grid 1.6 Documentation
- https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-index.html
在完成作业时遇到困难时,TUNA-JP社区上的问题帮助了我。
当考虑使用Tanzu的OSS时,请务必参加。
-
- TUNA-JP へようこそ | Tanzu User kNowledge Assembly Japan
- https://tuna-jp.net/
请查看参考文章中关于各个版本的安装尝试的详细信息。
索引
-
- 安装Tanzu CLI、docker、kubectl等工具
-
- 安装管理集群
-
- 安装工作负载集群
-
- 难点
- 参考文献
安装Tanzu CLI、docker、kubectl等工具。
我会参考以下的文件来进行工作。
-
- Install the Tanzu CLI and Other Tools
- https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-install-cli.html
这次我搭建了Ubuntu 22.04,并在上面进行了安装。
在安装Docker时,我参考了官方文档和博客等进行了安装。
Install on Ubuntu | Docker Documentation
https://docs.docker.com/desktop/install/ubuntu/
How To Install and Use Docker on Ubuntu 22.04 | DigitalOcean
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-22-04
只要按照文档的指示,您可以冷静地安装所需的软件包,其他的都不需要。
安装管理集群。
准备
我会参考以下的文件来进行工作。
-
- Prepare to Deploy Management Clusters to vSphere
- https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-mgmt-clusters-vsphere.html
在查看文档并确认需求的同时,我将继续进行准备工作。然而,我在忽略以下要求。
- Traffic allowed out to vCenter Server from the network on which clusters will run
由于管理集群无法连接到互联网,导致部署失败,出现了堵塞的情况。
またKub-Vipを利用する場合、マネジメントクラスタ、ワークロードクラスタ共に、クラスターAPIサーバーからのリクエストを受けるために性的なアドレスが必要になります。こちらも各1つずつ計2つ用意しておきましょう。
外部インターネットへのアクセスができない環境の場合、
以下のドキュメントを参考にして準備を進める必要があります。
Prepare an Internet-Restricted Environment
https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-mgmt-clusters-airgapped-environments.html
关于其他事项,将按照文件中的内容进行推进。
部署
我会根据以下文件进行工作参考并继续进行。
-
- Deploy Management Clusters
- https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-mgmt-clusters-deploy-management-clusters.html
在跳板服务器上执行以下命令,并启动GUI进行安装。
$ tanzu management-cluster create --ui
由于无法直接从本地环境访问,所以在连接跳板服务器时需要进行端口转发的设置。
由于我正在使用Windows环境,因此我使用PuTTY进行操作,
在PuTTY Configuration -> Connection -> SSH -> Tunnels中进行以下设置:
源端口:800 <–我要连接的本地环境的端口
目标端口:127.0.0.1:8080,Local <–因为我想要访问跳板服务器上运行的GUI界面http://127.0.0.1:8080。
如果您的本地环境是Linux或其他操作系统,您可以使用以下命令执行相同操作:
ssh <跳板服务器的IP地址> -L 800:localhost:8080
您可以在本地环境中的浏览器中访问 http://127.0.0.1:<设置的端口> 以确认设置是否成功。
(由于经常忘记如何进行端口转发,所以在这里详细记录一下。)
安装工作负载集群
我将参考以下文档来进行工作进展:
https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-tanzu-k8s-clusters-index.html#deploy
在使用GUI部署管理集群时,底部会显示使用CLI安装时的命令。
使用以下命令使用CLI安装:
tanzu management-cluster create –file /home//.config/tanzu/tkg/clusterconfigs/z40ywhax64.yaml -v 6
使用以下命令复制配置文件:/home//.config/tanzu/tkg/clusterconfigs/z40ywhax64.yaml,并对所需的设置进行更改,以便通过类似于”tanzu cluster create –file .config/tanzu/tkg/clusterconfigs/my-vsphere-tkc.yaml”的命令进行部署。
变更的设置值如下所示。
-
- CLUSTER_NAMEの追加 – 設定されていなかったので追加しました。
- VSPHERE_CONTROL_PLANE_ENDPOINT – ワークロードクラスタ用のエンドポイントIPアドレス
問題的關鍵所在
$ tanzu management-cluster delete
Deleting management cluster 'tkg-mgmt-vsphere-20230106020419'. Are you sure? [y/N]: y
Verifying management cluster...
Setting up cleanup cluster...
Error: unable to delete management cluster: unable to create cleanup cluster: failed to create kind cluster tkg-kind-cerohqveb64pi7c0smf0: failed to generate kubeadm config content: failed to get kubernetes version from node: failed to get file: command "docker exec --privileged tkg-kind-cerohqveb64pi7c0smf0-control-plane cat /kind/version" failed with error: exit status 126
Error: exit status 1
根据以下文件中的“在管理集群部署失败后清理”的指南,删除通过vSphere部署的虚拟机和kind集群。
-
- Troubleshooting Tanzu Kubernetes Grid Issues
- https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/1.6/vmware-tanzu-kubernetes-grid-16/GUID-troubleshooting-tkg-tips.html
文章的参考
-
- Tanzu Kubernetes Grid 1.3を使ってみた – Qiita
-
- https://qiita.com/masanara/items/eb6f28eb402cbf53b8c6
Tanzu Kubernetes Grid 1.4を新規構築した – Cloud Penguins
Tanzu Kubernetes Grid 1.5 をvSphere にデプロイしてみる – VMware Japan Blog
https://blogs.vmware.com/vmware-japan/2022/03/tkg-1-5-1-install.html
随想
因为有很多有关部署的文章,所以我以为很容易就可以部署,
但实际上却意外地遇到了困难,让我感到手足无措。
只要理解了一次步骤,就可以方便地将Kubernetes环境部署到各种环境中,我觉得这非常方便。