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

 

posted @   LiShiChao  阅读(444)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2018-10-29 Docker网络访问和数据管理(三)
点击右上角即可分享
微信分享提示