目录

kubernetes ansible自动化部署

kubernetes ansible 自动化部署

服务器规划

角色 IP 组件
k8s-master1 10.12.12.15 kube-apiserver kube-controller-manager kube-scheduler etcd
k8s-master2 10.12.12.17 kube-apiserver kube-controller-manager kube-scheduler etcd
k8s-02 10.12.12.22 kubelet kube-proxy docker etcd
k8s-03 10.12.12.21 kubelet kube-proxy docker etcd
load Balancer(master) 10.12.12.15 10.12.12.23(VIP) nginx keepalived
load Balancer(backup) 10.12.12.17 nginx keepalived

系统初始化

  1. 关闭selinux,firewalld
  2. 关闭swap
  3. 时间同步
  4. 写hosts
  5. ssh免密(可选)

etcd集群部署

  1. 生成etcd证书
  2. 部署三个ETC集群
  3. 查看集群状态

部署Masterß

  1. 生成apiserver证书
  2. 部署apiserver、controller-manager和scheduler组件
  3. 启动TLS Bootstrapping

部署Node

  1. 安装Docker
  2. 部署Kubelet和kube-proxy
  3. 在Master上运行为新Node颁发证书
  4. 授权apiserver访问kubelet

部署插件(准备好镜像)

  1. Flannel
  2. Web UI
  3. CoreDNS
  4. Ingress Controller

Master高可用

  1. 增加Master节点(与Master1一致)
  2. 部署nginx负载均衡器
  3. Nginx+Keepalived 高可用
  4. 修改Node连接VIP