-
部署前准备 -- 前提条件
-
检查虚拟机默认网卡配置:
a. 默认网卡为
eth0
, 如果环境实际网卡不是eth0
,则需要手动指定网卡名称:编辑 /etc/kubez/globals.yml 文件,取消 network_interface: "eth0" 的注解,并修改为实际网卡名称
-
确认集群环境连接地址:
a. 内网连接: 无需更改
b. 公网地址:
编辑 /etc/kubez/globals.yml 文件,取消 #kube_vip_address: "172.16.50.250" 的注解,并修改为实际公网地址 云平台环境需要放通公网ip到后面节点的6443端口
-
配置工作目录下的 multinode , 根据实际情况添加主机信息, 并完成如下配置
a. 打通部署节点(运行 kubez-ansible 的节点) 到其他节点的免密登陆 b. 配置部署节点的 /etc/hosts , 添加 kubernetes 节点的ip和主机名解析 c. multinode 配置格式,推荐: # 如果 cri 选择 docker,则仅需配置 [docker-master] 和 [docker-node] [docker-master] kube01 [docker-node] kube02 # 如果 cni 选择 containerd,则仅需配置 [containerd-master] 和 [containerd-node] [containerd-master] kube01 [containerd-node] kube02 [storage] kube01
-
执行如下命令,进行
kubernetes
的依赖安装kubez-ansible -i multinode bootstrap-servers
-
根据实际需要,调整配置文件
/etc/kubez/globals.yml
enable_kubernetes_ha: "yes" # (可选)启用多控高可用, 需保证 multinode 的 control 组为奇数 cluster_cidr: "172.30.0.0/16" # pod network service_cidr: "10.254.0.0/16" # service network # network cni, 现支持flannel 和 calico, 默认是 flannel enable_calico: "no" enable_registry: "yes" # (可选)开启私有仓库 registry_server: `registry_server_ip:4000`
-
执行如下命令,进行
kubernetes
的集群安装kubez-ansible -i multinode deploy
-
验证环境
[root@kube01 ~]# kubectl get node NAME STATUS ROLES AGE VERSION kube01 Ready control-plane,master 21h v1.23.6 kube02 Ready <none> 21h v1.23.6 kube03 Ready <none> 3h48m v1.23.6