🪬

[CI/CD] (1) Install k8s

正文

框架图

notion image

部署环境

硬件环境

  • i7-12700 32G 内存 1T HDD。

软件环境

  • 虚拟化软件: libvirt 8.0.0
  • 操作系统: Deepin 20.9
  • 内核版本: 5.15.77-amd64-desktop

部署 k8s 集群

虚拟机部署

虚拟机 5个
选择的系统:ubuntu-22.04.5-live-server-amd64.iso
虚拟机名称
hostname
IP
配置
备注
k8s-m1
master1
192.168.122.11
2C4G
k8s-m2
master2
192.168.122.12
2C4G
k8s-m3
master3
192.168.122.13
2C4G
k8s-w1
worker1
192.168.122.21
6C8G
k8s-w2
worker2
192.168.122.22
6C8G

安装基础软件(后续内容都请用 root 命令执行)

安装 k8s

关闭交换空间

设置 IPV4 转发

配置 CRI (运行时)

启动运行时及服务

将机器克隆 4 次(关机克隆)

虚拟机配置 IP

内容为:
注意:重启生效,修改 /etc/netplat/ 下的配置,重启后无效。其中 192.168.122.11 为各个节点的 IP,千万不要都设置成一样的。

修改 hostname

设置静态域名解析

注意:先设置成 master1 节点 IP,后面会设置成 kube-vip 的 IP。kube-vip 是一个 VIP(虚拟IP) + LB(负载均衡) 软件,实现 k8s API 的高可用。

拉取镜像

重启虚拟机

启动第一个 control-plane (控制平面) ,此内容仅在 master 1 节点执行

输出内容为

根据输出的内容配置一下默认登录

执行 kubectl get pod -A 查看部署情况

根据输出的内容去各个节点分别执行对应的节点加入命令

master 节点加入方式
worker 节点加入方式

添加 CNI 插件

下载 yaml 文件

修改镜像地址

应用 CNI

查看 CNI 状态

输出内容

部署 VIP (下方内容在 master1 节点执行)

确认集群状态正常的情况

输出内容

拉取镜像

设置 虚拟 IP 与 网卡名

生成静态 pod 文件,等待部署

注意:这里使用的是 0.7.2 版本。0.8 以上版本存在划分子网问题。如果未设置 192.168.122.0/24 子网会导致网络不通,但是传递参数怎么弄官网还没有更新,我就不使用了。

查看部署情况

输出情况

修改静态域名解析

验证 VIP 情况


 
 
第一部分结束