用户的Kubernetes环境通常都会存在多个集群,分别用于生产、测试、开发等等。Veeam Kasten K10拥有业界领先的多集群管理功能。本文详细描述了Veeam Kasten K10 Multi-Cluster Manager部署配置步骤。
本文测试环境:OS:ubuntu20.04, Kubernetes版本:1.21.3,Veeam kasten 版本:5.5.0。
在ubuntu20.04上搭建了2个Kubernetes v1.21.3版本集群,每个kubernetes集群包含2个节点:
•cluster-131集群(包含ubuntu131和ubuntu132节点)
•cluster-133集群(包含ubuntu133和ubuntu134节点)
1.环境验证 在部署配置之前,首先要确认cluster之间已经配置好Kubernetes集群管理,可以通过kubectl config命令在指定节点上进行集中管理。本文的指定节点是ubuntu131。 通过下列命令进行验证:
kubectl config use-context 133-context
kubectl get node
编辑切换为居中
另外要确认2个cluster都已经分别成功安装了相同版本的Veeam Kasten k10 ,本文是5.5.0版本。
2.下载k10multicluster安装包及部署 如果你的linux可以直接访问下列网址,可以使用wget直接下载安装包: wget https://github.com/kastenhq/external-tools/releases/download/5.5.0/k10multicluster_5.5.0_linux_amd64.tar.gz 如果你的linux下无法直接访问上述网址,按照下列步骤下载安装包:
下载网址: https://github.com/kastenhq/external-tools/releases 右键点击下图红框链接,选择另存为。。。本地路径。
编辑切换为居中
使用类似winscp工具把下载文件上传到目标服务器,本例是ubuntu131。
编辑切换为居中
解压文件: tar -zxvf k10multicluster_5.5.0_linux_amd64.tar.gz
编辑切换为居中
修改文件属性为可执行:
chmod +x k10multicluster 拷贝文件到目录/usr/local/bin/:
cp k10multicluster /usr/local/bin/k10multicluster 查看k10multicluster命令是否可以运行:
k10multicluster
编辑切换为居中
3.设置primary cluster和secondary cluster 设置Primary cluster, 其中--context是指primary cluster的context,--name是指primary cluster的name,可以通过kubectl config get-contexts命令获取。 k10multicluster setup-primary --context=131-context --name=cluster-131
编辑切换为居中
在添加secondary cluster之前,先在unbuntu133节点上运行下列命令查询通过NodePort暴露的端口号,以下截图是32577。
kubectl get svc gateway-nodeport-svc -n kasten-io
编辑切换为居中
添加secondary cluster, 其中有--xxxx-context和--xxxx-name解释同上,可以通过kubectl config get-contexts命令获取,-- secondary-cluster-ingress是指cluster-133的ingress访问地址,即之前通过NodePort方式暴露该cluster的web管理地址。
k10multicluster bootstrap \
--primary-context=131-context \
--primary-name=cluster-131 \
--secondary-context=133-context \
--secondary-name=cluster-133 \
--secondary-cluster-ingress=http://192.168.249.133:32577/k10/
编辑切换为居中
如果secondary cluster之后重新部署,需要先删除之前的配置,再重新添加。
以下是删除secondary cluster的命令:
k10multicluster disconnect \
--primary-context=131-context \
--primary-name=cluster-131 \
--secondary-context=133-context \
--secondary-name=cluster-133
编辑切换为居中
4.访问Veeam Kasten K10 Multi-Cluster Dashboard
在通过浏览器访问Veeam Kasten K10 Multi-Cluster Dashboard之前,
首先,在unbuntu131节点上查询通过NodePort暴露的端口号,以下截图是31387:
kubectl get svc gateway-nodeport-svc -n kasten-io
编辑切换为居中
然后,确认已经在2个cluster的master节点(ubuntu131和ubuntu133)上都已经运行了下列命令:
kubectl -n kasten-io port-forward service/gateway 8080:8000
编辑切换为居中
编辑切换为居中
在浏览器输入下列网址,进入Veeam Kasten K10 Multi-Cluster Dashboard:
http://192.168.249.131:31387/k10/#/clusters
第一次进入,需要点击左下角红框内绿色的grant permission链接,
编辑切换为居中
在跳出的页面右下角,点击save按钮。
编辑切换为居中
返回Dashboard, 可以在页面左下角看到cluster-131和cluster-133两个集群。
编辑切换为居中
点击cluster-131,进入cluster-131的管理界面。
编辑切换为居中
点击cluster-133,进入cluster-133的管理界面。
编辑切换为居中
编辑切换为居中
至此,Veeam Kasten K10 Multi-Cluster的部署配置成功完成。