在上一篇文章中, 我们已经完成了集群的搭建. 接下来我们将进行kuboard可视化插件的搭建.
在此笔者强烈给大家推荐kuboard, 功能不亚于阿里云的kubernetes可视化界面.
该插件运行运行在Docker容器中.在安装可视化之前, 我们需要安装Docker容器服务.
安装Docker
建议Master和Work节点都安装. 因为后期我们搭建Jenkins+Harbor+GitLab的CI/CD时需要Docker容器.
设置仓库
安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
设置镜像仓库
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装 Docker Engine-Community
安装最新版本的 Docker Engine-Community
containerd.io在上一篇文章中的脚本文件已经自动安装, 所以这只需要安装docker-ce 和 docker-ce-cli
sudo yum install docker-ce docker-ce-cli
安装完成后启动Docker并设置开机启动
sudo systemctl enable docker
sudo systemctl start docker
查看Docker状态
[root@xxx~]# docker version
Client: Docker Engine - Community
Version: 20.10.10
API version: 1.41
Go version: go1.16.9
Git commit: b485636
Built: Mon Oct 25 07:42:56 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.10
API version: 1.41 (minimum version 1.12)
Go version: go1.16.9
Git commit: e2f740d
Built: Mon Oct 25 07:41:17 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.11
GitCommit: 5b46e404f6b9f661a205e28d59c982d3634148f8
runc:
Version: 1.0.2
GitCommit: v1.0.2-0-g52b36a2
docker-init:
Version: 0.19.0
GitCommit: de40ad0
安装Kuboard可视化插件
详细的安装教程可以参考kuboard官网. 笔者为了后期升级方便, 写了一个脚本文件. 如果大家觉得安装教程繁琐, 可以执行此脚本进行安装.
#! /bin/bash
read -p "请要部署的kuboard版本号, 不输入将采用默认版本:v3.3.0.6:" version
read -p "请输入部署端口号,不输入将采用默认端口31080:" port
read -p "请输入部署服务器公网Ip(必填):" ip
if [ -z "$port" ];then
port=31080
fi
if [ -z "$version" ];then
version=v3.3.0.6
fi
if [ -z "$ip" ]; then
echo "公网IP未填写,退出脚本"
exit 1
fi
host=${ip}":"${port}
echo "kuboard部署版本号为:"${version}
echo "公网IP:"${host}
echo "正在停止旧版本kuboard容器"
docker stop $(docker ps -a | grep "eipwork/kuboard" | awk '{print $1 }')
echo "旧版本kuboard容器已停止"
echo "删除旧版本kuboard容器"
docker rm $(docker ps -a | grep "eipwork/kuboard" | awk '{print $1 }')
echo "正在部署kuboard:"${version}
sudo docker run -d \
--restart=unless-stopped \
--name=kuboard \
-p ${port}:80/tcp \
-p 10081:10081/tcp \
-e KUBOARD_ENDPOINT="http://172.29.27.188:31080" \
-e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \
-v /root/kuboard-data:/data \
eipwork/kuboard:${version}
echo "kuboard部署成功"
echo "部署版本号:"$version
echo "公网IP:"${host}
将以上脚本保存为名为install_or_update_kuboard.sh
命令行执行脚本, 输入需要暴露的端口号,公网IP和Kuboard版本号即可完成部署.
[root@iZ8vbs0jt75pd3oh6dap24 ~]# sh install_or_update_kuboard.sh
控制台输出如下
请输入部署的kuboard版本号, 不输入将采用默认版本:v3.3.0.6:
请输入部署端口号,不输入将采用默认端口31080:
请输入部署服务器公网Ip(必填):127.0.0.1
kuboard部署版本号为:v3.3.0.6
公网IP:127.0.0.1:31080
正在停止旧版本kuboard容器
旧版本kuboard容器已停止
删除旧版本kuboard容器
正在部署kuboard:v3.3.0.6
kuboard部署成功
部署版本号:v3.3.0.6
公网IP:127.0.0.1:31080
以后如果要升级Kuboard只需要再次执行此脚本, 输入新的版本号即可完成升级.
脚本安装完成后会在控制图输出访问地址. 在浏览器中访问得到如下页面.
点击图中的添加集群,弹出如下对话框
在Master节点执行以下命令, 获取kubeconfig内容.
cat ~/.kube/config
将打印的所有内容复制到kubeconfig中. 之后点击确定. 完成集群的可视化配置.
最后附上集群概览
kuboard的Ui和交互做的非常不错, 相信大家很快就会使用.
至此, 我们完成了kubernetes的集群搭建和可视化配置.