k8s--使用 kubeadm 搭建 k8s 1.25.3 版本
環境準備
# 節點ip 172.25.131.227 k8s-master-01 # 設置主機名 ~]# hostnamectl set-hostname k8s-master-01 # 設置hosts解析 echo "172.25.131.227 k8s-master-01" >>/etc/hosts
Kubernetes 環境初始化
禁用交換分區。為了保證 kubelet 正常工作,你必須禁用交換分區。詳情見 安裝 kubeadm
~]# swapoff -a ~]# sed -i 's/.*swap.*/#&/' /etc/fstab
關閉selinux與防火墻
~]# setenforce 0 ~]# sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config ~]# systemctl disable firewalld ~]# systemctl stop firewalld
配置kubernetes
~]# cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf overlay br_netfilter EOF ~]# modprobe overlay ~]# modprobe br_netfilter # 配置內核轉發 ~]# cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-iptables = 1 net.bridge.bridge-nf-call-ip6tables = 1 net.ipv4.ip_forward = 1 EOF # 配置生效 sysctl --system
containerd 安裝
# 配置yum源 ~]# yum install -y yum-utils ~]# yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo # 安裝 ~]# yum install containerd.io -y # 啟動 ~]# systemctl enable containerd ~]# systemctl start containerd # 生成默認配置 ~]# containerd config default > /etc/containerd/config.toml # 修改默認配置 ~]# vim /etc/containerd/config.toml sandbox_image = "registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.8" # 修改為阿里云鏡像地址 SystemdCgroup = true # 使用systemd cgroup # 重啟 ~]# systemctl daemon-reload ~]# systemctl enable --now containerd ~]# systemctl restart containerd
安裝 Kubernetes 組件
# 配置aliyun 的源 ~]# cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF # 安裝kubelet kubeadm kubectl ~]# yum install kubelet kubeadm kubectl --nogpgcheck -y # 設置kubelet自啟動 ~]# systemctl enable kubelet # 設置crictl ~]# crictl config --set runtime-endpoint=unix:///run/containerd/containerd.sock
初始化集群
~]# kubeadm init --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers \
--apiserver-advertise-address=172.25.131.227 \
--kubernetes-version=v1.25.3 \
--service-cidr=192.16.0.0/16 \
--pod-network-cidr=10.0.0.0/16 # 參數說明 --image-repository 指定鏡像源 --apiserver-advertise-address apiserver地址 --service-cidr service ip網段 --pod-network-cidr pod網段 --kubernetes-version 指定版本
# 執行成功結果

配置網絡插件 calico
~]# kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
查看節點狀態
~]# kubectl get node

浙公網安備 33010602011771號