centos部署k8s v1.33版本

发布于:2025-06-06 ⋅ 阅读:(28) ⋅ 点赞:(0)

centos部署k8s v1.33版本

1、设置主机名称

hostnamectl set-hostname mast01
hostnamectl set-hostname node01

2、升级内核版本

3、环境设置

# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

# 关闭selinux
setenforce 0
sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

# 关闭 swap
swapoff -a
sed -i '/swap/s/^$.*$$/#\1/g' /etc/fstab

# 加载内核模块
modprobe br_netfilter
modprobe overlay
echo "overlay" >> /etc/modules-load.d/overlay.conf
echo "br_netfilter" >> /etc/modules-load.d/br_netfilter.conf

# 优化内核参数
cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
vm.swappiness = 0
EOF
sysctl --system

4、安装容器运行时

yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y containerd.io

5、配置容器运行时

# 生成默认配置文件
containerd config default | sudo tee /etc/containerd/config.toml
# 修改配置文件:启用systemd cgroup驱动
sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml
# 修改配置文件中的pause镜像  vi /etc/containerd/config.toml
sandbox_image = "registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.10"
# 启动containerd并设置开机启动
systemctl enable --now containerd

6、安装kubectl、kubelet、kubeadm

cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.33/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.33/rpm/repodata/repomd.xml.key
EOF
yum clean all
yum makecache
# 安装
yum install -y kubelet-1.33.1 kubeadm-1.33.1 kubectl-1.33.1
# 启用kubelet服务
systemctl enable --now kubelet

7、初始化控制面节点

kubeadm init \
  --apiserver-advertise-address=192.168.74.180 \
  --image-repository=registry.aliyuncs.com/google_containers \
  --kubernetes-version=v1.33.1 \
  --pod-network-cidr=10.244.0.0/16 \
  --cri-socket=unix:///var/run/containerd/containerd.sock

8、配置kubectl

mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config

# 设置别名
echo "alias k='kubectl'" >> ~/.bashrc
source ~/.bashrc

9、安装网络插件calico

# 下载calico.yaml,calico.tar.gz,导入calico镜像
# 需要本地下载,不好找
ctr -n=k8s.io images import calico.tar.gz
kubectl apply -f calico.yaml

10、验证mast节点

[root@mast01 soft]# kubectl get nodes
NAME     STATUS   ROLES           AGE   VERSION
mast01   Ready    control-plane   60m   v1.33.1
[root@mast01 soft]# kubectl get pods -A
NAMESPACE     NAME                                       READY   STATUS    RESTARTS   AGE
kube-system   calico-kube-controllers-689744956f-w4khs   1/1     Running   0          20m
kube-system   calico-node-gr4tw                          1/1     Running   0          20m
kube-system   coredns-757cc6c8f8-ghhtg                   1/1     Running   0          60m
kube-system   coredns-757cc6c8f8-rv8lw                   1/1     Running   0          60m
kube-system   etcd-mast01                                1/1     Running   1          60m
kube-system   kube-apiserver-mast01                      1/1     Running   1          60m
kube-system   kube-controller-manager-mast01             1/1     Running   1          60m
kube-system   kube-proxy-mcxfc                           1/1     Running   0          60m
kube-system   kube-scheduler-mast01                      1/1     Running   1          60m

11、加入node节点

# mast上执行
kubeadm token create --print-join-command
# node上执行
kubeadm join 192.168.74.180:6443 \
  --token 1fik86.bmm71kteysd8g7up \
  --discovery-token-ca-cert-hash \
  sha256:98a92989b7377d06135786b1ca2c51809d596d3e7ef54d6b150143e9fa2fca28

12、在mast上查看集群状况

[root@mast01 soft]# kubectl get nodes
NAME     STATUS   ROLES           AGE     VERSION
mast01   Ready    control-plane   94m     v1.33.1
node01   Ready    <none>          4m41s   v1.33.1
[root@mast01 soft]# kubectl get pods -A
NAMESPACE     NAME                                       READY   STATUS    RESTARTS   AGE
kube-system   calico-kube-controllers-689744956f-w4khs   1/1     Running   0          54m
kube-system   calico-node-gr4tw                          1/1     Running   0          54m
kube-system   calico-node-v8cfz                          1/1     Running   0          4m44s
kube-system   coredns-757cc6c8f8-ghhtg                   1/1     Running   0          94m
kube-system   coredns-757cc6c8f8-rv8lw                   1/1     Running   0          94m
kube-system   etcd-mast01                                1/1     Running   1          94m
kube-system   kube-apiserver-mast01                      1/1     Running   1          94m
kube-system   kube-controller-manager-mast01             1/1     Running   1          94m
kube-system   kube-proxy-mcxfc                           1/1     Running   0          94m
kube-system   kube-proxy-qv9lp                           1/1     Running   0          4m44s
kube-system   kube-scheduler-mast01                      1/1     Running   1          94m

网站公告

今日签到

点亮在社区的每一天
去签到