当前位置: 首页 > news >正文

centos部署k8s v1.33版本

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

相关文章:

  • 亚马逊AWS云服务器高效使用指南:最大限度降低成本的实战策略
  • iOS 项目怎么构建稳定性保障机制?一次系统性防错经验分享(含 KeyMob 工具应用)
  • 从零搭建到 App Store 上架:跨平台开发者使用 Appuploader与其他工具的实战经验
  • element-plus 单选组件 el-radio,选不上,又没报错,直接复制官网也不行解决方案
  • Jenkins自动化部署Maven项目
  • React Router 中 navigate 后浏览器返回按钮不起作用的问题记录
  • vue对axios的封装和使用
  • React从基础入门到高级实战:React 实战项目 - 项目二:电商平台前端
  • 网页前端开发(基础进阶4--axios)
  • 智能照明系统:具备认知能力的“光神经网络”
  • .net ORM框架dapper批量插入
  • Socket编程UDP\TCP
  • 智慧赋能:移动充电桩的能源供给革命与便捷服务升级
  • 数字孪生在建设智慧城市中可以起到哪些作用或帮助?
  • SpringBoot+Mysql实现的停车场收费小程序系统+文档
  • 基于 TensorFlow 2 的 WGAN来生成表格数据、数值数据和序列数据。 WGAN生成对抗网络。代码仅供参考
  • 【Java工程师面试全攻略】Day5:MySQL数据库面试精要
  • 【Linux】POSIX信号量
  • C#入门学习笔记 #8(委托)
  • 中达瑞和SHIS高光谱相机在黑色水彩笔墨迹鉴定中的应用
  • 在哪个网站上可以找兼职做/谷歌官方网站登录入口
  • 用三权重的网站做友链有好处没/东莞关键词优化平台
  • 网站建设怎么做帐/青岛关键词网站排名
  • 临朐网站建设建站/软文广告300字范文
  • 郴州网站建设/网站排名优化培训
  • 简单网站首页/关键词排名方法