龚兴众 发表于 2023-5-16 00:34:15

K8S单Master集群安装(Containerd)

原创文档编写不易,未经许可请勿转载。文档中有疑问的可以邮件联系我。 邮箱: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.8c_node01.lvan192.168.100.201CentOS Linux release 7.8c_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子节点1192.168.100.202k8s子节点210.244.0.0/16Pod网段地址表 2 ip地址规划
 
步骤预览


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

一、操作系统配置

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

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

该章节的所有操作所有节点上均要执行。
安装cni插件
在网址:https://github.com/containernetworking/plugins/releases/ 中下载软件包。
# cat >> /etc/hosts <<EOF
192.168.100.200 cmaster01.lvanmaster01
192.168.100.201 cnode01.lvan    node01
192.168.100.202 cnode02.lvan    node02
EOF安装nerdctl工具
nerdctl工具是操作containerd的客户端,可以实现操作containerd和docker一样命令集操作。
在网址:https://github.com/containerd/nerdctl/releases 中下载软件包只需下载精简包即可(不带full字样的)。
# 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
页: [1]
查看完整版本: K8S单Master集群安装(Containerd)