centos7上部署k8s 1.24.4集群
发现还没写过k8s的部署博客,虽然不复杂,但还是记录一下。
环境准备
1、系统要求
2、关闭防火墙和 SELinux
systemctl disable --now firewalld setenforce 0 sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
3、关闭Swap分区
swapoff -a sed -i '/swap/s/^/#/' /etc/fstab
4、设置主机名和 hosts 文件
# 每台服务器设置唯一主机名 hostnamectl set-hostname <hostname> # 所有服务器添加hosts记录 cat >> /etc/hosts << EOF 192.168.1.100 master 192.168.1.101 worker1 192.168.1.102 worker2 EOF
5、配置内核参数
cat > /etc/modules-load.d/k8s.conf << EOF overlay br_netfilter EOF modprobe overlay modprobe br_netfilter cat > /etc/sysctl.d/k8s.conf << EOF net.bridge.bridge-nf-call-iptables = 1 net.bridge.bridge-nf-call-ip6tables = 1 net.ipv4.ip_forward = 1 EOF sysctl --system
安装容器运行时(Containerd)
1、添加Docker仓库
国内环境配置阿里的docker仓库
yum install -y yum-utils yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
没有网络限制的可以配置官方的仓库
yum install -y yum-utils yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
2、安装Cintainerd
yum install -y containerd.io-1.6.6 mkdir -p /etc/containerd containerd config default > /etc/containerd/config.toml # 修改配置使用systemd cgroup驱动 sed -i 's/SystemdCgroup = false/SystemdCgroup = true/g' /etc/containerd/config.toml systemctl enable --now containerd
安装Kubernetes组件
1、添加 Kubernetes 仓库
阿里仓库
cat > /etc/yum.repos.d/kubernetes.repo << EOF [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled=1 gpgcheck=1 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF
官方仓库
cat > /etc/yum.repos.d/kubernetes.repo << EOF [kubernetes] name=Kubernetes baseurl=https://pkgs.k8s.io/core:/stable:/v1.24/rpm/ enabled=1 gpgcheck=1 gpgkey=https://pkgs.k8s.io/core:/stable:/v1.24/rpm/repodata/repomd.xml.key EOF
2、安装指定版本的 Kubernetes 组件
yum install -y kubelet-1.24.4 kubeadm-1.24.4 kubectl-1.24.4 systemctl enable --now kubelet
初始化 Master 节点
1、执行初始化命令
kubeadm init --kubernetes-version=1.24.4 \ --pod-network-cidr=10.244.0.0/16 \ --apiserver-advertise-address=192.168.1.100 \ --image-repository registry.aliyuncs.com/google_containers
2、配置 kubectl
mkdir -p $HOME/.kube cp -i /etc/kubernetes/admin.conf $HOME/.kube/config chown $(id -u):$(id -g) $HOME/.kube/config
安装网络插件(Flannel)
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/v0.19.0/Documentation/kube-flannel.yml
加入Worker节点
# 在master节点执行以下命令,得到加入集群的命令
kubeadm token create --print-join-command
# 在worker节点上执行加入的命令
kubeadm join 192.168.1.100:6443 --token abcdef.0123456789abcdef \
--discovery-token-ca-cert-hash sha256:1234567890abcdef1234567890abcdef1234567890abcdef1234567890

浙公网安备 33010602011771号