介绍
通过ansible脚本+shell实现自动化部署k8s基础集群(v1.25.0)
部署结构
1. 通过二进制部署包镜像安装k8s集群、目录etcd节点只支持1-3个节点、最多三个etcd节点
2. 因k8s版本相对较新、需要升级内核来支持后台程序、当前版本只支持Cento7,内核版本(5.19.4-1.el7.elrepo.x86_64)
3. 采用k8s二进制安装,通过system进行管理,采用本地yum仓库,版本是:1.25.0
4. 部署节点安装docker的yum源是基于Centos7.5/7.6,版本是:19.03.14
5. 部署节点安装ansible时,使用离线安装,版本:2.9.27
操作步骤
环境准备
作用 | IP地址 | 操作系统 | 配置 |
---|---|---|---|
k8s-node01 | 192.168.59.143 | CentOS7 | 最低配置2C2G |
k8s-master01 | 192.168.59.142 | CentOS7 | 最低配置2C2G |
ansible | 192.168.59.144 | CentOS7 | 最低配置1C1G |
- node节点可以填写多个,根据实际情况确认,但是不能超出单master节点的限制
- master节点至少是三个少一个都不是高可用版本
- 高可用部署时需要为keepalived提前确认好vip的信息
备注
- 单独找一台机器用于部署ansible服务,升级内核时需要重启服务器
- 部署节点部署重启,否则会导致执行报错
- 但是需要确保机器资源充足,且相关的端口不会冲突(38081【yum】、38082【registry】)
- 相关的网络关系需要提前确认
关闭swap
swapoff -a # 临时
sed -ri 's/.*swap.*/#&/' /etc/fstab # 永久
echo "关闭swap !"