1. 前言
之前文章安装 kubernetes 集群,都是使用 kubeadm 安装,然鹅很多公司也采用二进制方式搭建集群。这篇文章主要讲解,如何采用二进制包来搭建完整的高可用集群。相比使用 kubeadm 搭建,二进制搭建要繁琐很多,需要自己配置签名证书,每个组件都需要一步步配置安装。
2. 环境准备
2.1 机器规划
IP地址 | 机器名称 | 机器配置 | 操作系统 | 机器角色 | 安装软件 |
---|---|---|---|---|---|
172.10.1.11 | master1 | 2C4G | CentOS7.6 | master | kube-apiserver、kube-controller-manager、kube-scheduler、etcd |
172.10.1.12 | msater2 | 2C4G | CentOS7.6 | master | kube-apiserver、kube-controller-manager、kube-scheduler、etcd |
172.10.1.13 | master3 | 2C4G | CentOS7.6 | master | kube-apiserver、kube-controller-manager、kube-scheduler、etcd |
172.10.1.14 | node1 | 2C4G | CentOS7.6 | worker | kubelet、kube-proxy |
172.10.1.15 | node2 | 2C4G | CentOS7.6 | worker | kubelet、kube-proxy |
172.10.1.16 | node2 | 2C4G | CentOS7.6 | worker | kubelet、kube-proxy |
172.10.0.20 | / | / | / | 负载均衡VIP | / |
注:此处VIP是采用的云厂商的SLB,你也可以使用haproxy + keepalived的方式实现。
2.2 软件版本
软件 | 版本 |
---|---|
kube-apiserver、kube-controller-manager、kube-scheduler、kubelet、kube-proxy | v1.20.2 |
kube-apiserver、kube-controller-manager、kube-scheduler、kubelet、kube-proxy | v1.20.2 |
etcd | v3.4.13 |
calico | v3.14 |
coredns | 1.7.0 |
3. 搭建集群
3.1 机器基本配置
以下配置在6台机器上面操作
3.1.1 修改主机名
修改主机名称:master1、master2、master3、node1、node2、node3
3.1.2 配置hosts文件
修改机器的/etc/hosts文件
3.1.3 关闭防火墙和selinux
3.1.4 关闭交换分区
3.1.5 时间同步
3.1.6 修改内核参数
3.1.7 加载ipvs模块
3.2 配置工作目录
每台机器都需要配置证书文件、组件的配置文件、组件的服务启动文件,现专门选择 master1 来统一生成这些文件,然后再分发到其他机器。以下操作在 master1 上进行
3.3 搭建etcd集群
3.3.1 配置etcd工作目录
3.3.2 创建etcd证书
工具下载
工具配置
配置ca请求文件
注:
CN:Common Name,kube-apiserver 从证书中提取该字段作为请求的用户名 (User Name);浏览器使用该字段验证 站是否合法;
O:Organization,kube-apiserver 从证书中提取该字段作为请求用户所属的组 (Group)
创建ca证书
配置ca证书策略
配置etcd请求csr文件
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!