翼度科技»论坛 云主机 LINUX 查看内容

K8S单Master集群安装(Containerd)

7

主题

7

帖子

21

积分

新手上路

Rank: 1

积分
21
原创文档编写不易,未经许可请勿转载。文档中有疑问的可以邮件联系我。 邮箱:yinwanit@163.com文章基于CentOS 7.8系统使用Containerdr作为容器运行时通过kubeadm指导搭建k8s单机master集群,使用calico作为k8s集群的网络插件。K8S官方在1.24版本彻底弃用docker。
需要服务器可以联网。
环境

节点说明

主机名IP地址操作系统
c_master01.lvan192.168.100.200CentOS Linux release 7.8
c_node01.lvan192.168.100.201CentOS Linux release 7.8
c_node02.lvan192.168.100.202CentOS Linux release 7.8
软件环境

软件名软件版本作用
CentOS Linux release7.8操作系统
containerd.io1.6.14-3.1容器运行时
cri-tools1.25.0-0containerd客户端
nerdctl1.1.0containerd客户端
cni-pluginsv1.1.1cni插件
metrics-serverv0.6.2k8s集群性能监控插件
kubectl1.26.0-0k8s控制工具
kubeadm1.26.0-0k8s服务端
kubelet1.26.0-0k8s客户端
calicov3.24.5K8S网络插件
pause3.7编车容器
表 1 软件环境ip地址规划

ip地址作用
192.168.100.200k8s主节点
192.168.100.201k8s子节点1
192.168.100.202k8s子节点2
10.244.0.0/16Pod网段地址
表 2 ip地址规划
 
步骤预览


  • 操作系统配置:配置IP地址、配置主机名、关闭防火墙、关闭selinux、关闭swap、修改/etc/hosts文件、配置yum源
  • 安装配置docker
  • 修改系统内核参数
  • 安装kubelet软件
  • 初始化K8S集群
  • 子节点加入k8s集群
  • 安装网络插件
  • 安装metrics-server监控集群性能数据
 
操作过程

一、操作系统配置

该章节的所有操作所有节点上均要执行。
设置主机名
按照规划文件中的名称依次设置每个节点的主机名。
  1. # hostnamectl set-hostname   规划的主机名
复制代码
IP地址配置
按照规划文件中的IP地址依次配置每个节点的IP地址。
  1. # systemctl stop NetworkManager;systemctl disabled NetworkManager;systemctl mask NetworkManager
  2. # cat <<EOF > /etc/sysconfig/network-scripts/ifcfg-修改为你的网卡名
  3. TYPE=Ethernet
  4. BOOTPROTO=none
  5. NAME=修改为你的网卡名
  6. DEVICE=修改为你的网卡名
  7. ONBOOT=yes
  8. IPADDR=修改为你需要设置的ip地址
  9. NETMASK=255.255.255.0
  10. GATEWAY=修改为你需要设置的ip地址网关
  11. DNS1=修改为你需要设置的ip地址DNS
  12. EOF
  13. # systemctl restart network
  14. # ip a
复制代码
 
二、安装配置containerd

该章节的所有操作所有节点上均要执行。
安装containerd
  1. # sed  -i 's/SELINUX=.*/SELINUX=disabled/g'  /etc/selinux/config
  2. # setenforce  0
复制代码
设置containerd镜像加速
containerd 运行时配置加速:在[plugins.”io.containerd.grpc.v1.cri”.registry.mirrors]行下添加内容:[plugins.”io.containerd.grpc.v1.cri”.registry.mirrors.”docker.io”] 换行再添加 endpoint = [“https://frz7i079.mirror.aliyuncs.com”]。蓝色字体及为需要添加的内容。
  1. # swapoff  -a
  2. # sed -i '/swap/d'  /etc/fstab
复制代码
设置cgroup驱动及sandbox_image地址
在/etc/containerd/config.toml文件修改runc.options选项SystemdCgroup = true。设置sandbox_image镜像下载地址为阿里云的地址。
  1. # systemctl stop firewalld;systemctl disable firewalld;systemctl mask firewalld
  2. # systemctl status firewalld
复制代码
 
三、安装容器工具

该章节的所有操作所有节点上均要执行。
安装cni插件
在网址:https://github.com/containernetworking/plugins/releases/ 中下载软件包。
  1. # cat >> /etc/hosts <<EOF
  2. 192.168.100.200 cmaster01.lvan  master01
  3. 192.168.100.201 cnode01.lvan    node01
  4. 192.168.100.202 cnode02.lvan    node02
  5. EOF
复制代码
安装nerdctl工具
nerdctl工具是操作containerd的客户端,可以实现操作containerd和docker一样命令集操作。
在网址:https://github.com/containerd/nerdctl/releases 中下载软件包只需下载精简包即可(不带full字样的)。
[code]# wget https://github.com/containerd/nerdctl/releases/download/v1.1.0/nerdctl-1.1.0-linux-amd64.tar.gz# tar -zxvf nerdctl-1.1.0-linux-amd64.tar.gz# mv nerdctl /bin/# echo 'source

举报 回复 使用道具