由于本次搭建CI/CD流程的资源有限,所以这里只能搭建一个单节点的kubernetes集群
一、安装docker
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum -y install docker-ce
systemctl start docker && systemctl enable docker
二、配置镜像加速和信任的harbor仓库
vim /etc/docker/daemon.json
添加以下内容:
{
"registry-mirrors": [
"https://mirror.ccs.tencentyun.com"
],
"insecure-registries": [
"192.168.100.100:888"
]
}
harbor仓库后面会搭建的,这里提前就配置了信任的harbor仓库,因为harbor仓库是搭建在docker上的,后面搭建好harbor仓库再添加信任的harbor仓库的话,有可能会因为重启docker而导致harbor仓库出问题(假如遇到harbor仓库出问题的话,重启一下harbor仓库就行)
三、重启docker
systemctl daemon-reload && systemctl restart docker
四、安装sealos
本次使用sealos工具来搭建kubernetes集群,用sealos来搭建kubernetes集群真的是快速又简单,想当初刚刚学kubernetes的时候,用kubeadm来搭建kubernetes集群,坑又多又复杂,白白搭了老子两天时间。至于用sealos搭建出来的kubernetes集群与其他方式搭建出来的kubernetes集群相比优缺点在哪也不是本文的重点,这里就不过多赘述了。
sealos工具的官网:https://www.sealyun.com(上面有更加详细的使用说明)
wget -c https://sealyun-home.oss-cn-beijing.aliyuncs.com/sealos/latest/sealos
chmod +x sealos
mv sealos /usr/bin
五、下载kubernetes安装包
这里建议下载1.20之前的版本,1.20之后的版本会报错,好像不支持docker
wget -c https://sealyun.oss-cn-beijing.aliyuncs.com/d551b0b9e67e0416d0f9dce870a16665-1.18.0/kube1.18.0.tar.gz
六、搭建kubernetes集群
我搭建这个CI/CD流程的时候用的是云服务器,云服务器本来就关闭了防火墙,selinux和swap交换分区,同时所有的端口我都设置成开放的,所以直接init就完事了,假如你用的是虚拟机,可能你还需要执行刚刚说的那些步骤,这些步骤可以上网查一下或者看看别人搭建kubernetes的文章,总之遇到报错就查一下吧,会有解决的办法的
sealos init --passwd 123456 --master 192.168.100.100 --pkg-url /root/kube1.18.0.tar.gz --version v1.18.0
参数解释:
--passwd:服务器的密码
--master:master节点的IP地址
--pkg:k8s安装包的存放路径
--version:k8s集群的版本
这样就算搭建好了,当然你也可以用kubectl get node看一下节点状态,看看有没有Ready
七、配置kubectl命令补全,去除master节点上的污点
由于单节点搭建,所以pod只能跑在master节点上,但master节点天生带有污点,所以要将污点去除(多节点搭建可以忽略这步)
配置kubectl命令补全:
source <(kubectl completion bash)
去除master节点上的污点:
kubectl taint node chezonghua node-role.kubernetes.io/master:NoSchedule-
注意:去除污点的时候,kubectl taint node 后面跟的是节点的名字,不知道的可以kubectl get node看一下,一般就是主机名