服务器集群IP如下
[root@node1 ~]# kubectl get nodes -owide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
node1 Ready <none> 15h v1.28.2 192.168.0.184 <none> Rocky Linux 9.2 (Blue Onyx) 5.14.0-284.30.1.el9_2.x86_64 containerd://1.6.24
node2 Ready <none> 15h v1.28.2 192.168.0.101 <none> Rocky Linux 9.2 (Blue Onyx) 5.14.0-284.25.1.el9_2.x86_64 containerd://1.6.24
node3 Ready <none> 15h v1.28.2 192.168.0.100 <none> Rocky Linux 9.2 (Blue Onyx) 5.14.0-284.25.1.el9_2.x86_64 containerd://1.6.24
node4 Ready <none> 15h v1.28.2 192.168.0.164 <none> Rocky Linux 9.2 (Blue Onyx) 5.14.0-284.30.1.el9_2.x86_64 containerd://1.6.24
node5 Ready <none> 15h v1.28.2 192.168.0.110 <none> Rocky Linux 9.2 (Blue Onyx) 5.14.0-284.30.1.el9_2.x86_64 containerd://1.6.24
在node1节点上运行docker容器
sudo docker run -d \
--restart=unless-stopped \
--name=kuboard \
-p 80:80/tcp \
-p 10081:10081/tcp \
-e KUBOARD_ENDPOINT="http://192.168.0.184:80" \
-e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \
-v /root/kuboard-data:/data \
eipwork/kuboard:v3
参数说明
- 第 4 行,将 Kuboard Web 端口 80 映射到宿主机的
80端口(您可以根据自己的情况选择宿主机的其他端口); - 第 5 行,将 Kuboard Agent Server 的端口
10081/tcp映射到宿主机的10081端口(您可以根据自己的情况选择宿主机的其他端口); - 第 6 行,指定 KUBOARD_ENDPOINT 为
http://192.168.0.184,该ip为安装在 Kubernetes 中的 Kuboard Agent 访问 Kuboard 的 Web 服务 - 第 7 行,指定 KUBOARD_AGENT_SERVER 的端口为
10081,此参数与第 5 行中的宿主机端口应保持一致,修改此参数不会改变容器内监听的端口10081,例如,如果第 5 行为-p 30081:10081/tcp则第 7 行应该修改为-e KUBOARD_AGENT_SERVER_TCP_PORT="30081"; - 第 8 行,将持久化数据
/data目录映射到宿主机的/root/kuboard-data路径,请根据您自己的情况调整宿主机路径;
访问web页面
当docker容器启动好后即可访问web页面http://192.168.0.184:80
- 默认用户为:admin
- 默认密码为:Kuboard123
在web界面中添加集群
添加集群可以选择使用kubeconf方式访问集群,因此就不需要安装agent多启动Pod了,如果使用创建agent方式访问集群,则会在k8s集群上创建kuboard-agent的Pod,该agent将会与前面启动docker容器时候配置的KUBOARD_ENDPOINT所指定的ip进行通信
添加集群方法一: 使用kubeconf添加集群
查看k8s集群的kubeconf配置
[root@node1 ~]# cat .kube/config
将上面输出的配置文件内容粘贴到web页面上,点击确定
添加集群方法二:使用agent添加集群
需要执行如下命令安装agent
执行命令
[root@node1 ~]# curl -k 'http://192.168.0.184:80/kuboard-api/cluster/rocky-k8s/kind/KubernetesCluster/rocky-k8s/resource/installAgentToKubernetes?token=JnBpQ39gvPkXolTpvbosdJ9L7FbP4eJ0' > kuboard-agent.yaml
[root@node1 ~]# kubectl apply -f ./kuboard-agent.yaml
查看Pod
[root@node1 ~]# kubectl get pods -n kuboard
NAME READY STATUS RESTARTS AGE
kuboard-agent-113ad00-2-69f479667f-wvgzl 1/1 Running 0 64s
kuboard-agent-113ad00-5c45f78c-wxq4b 1/1 Running 0 64s