使kubernetes1.24+以docker运行
基础安装
基础环境准备
systemctl stop firewalld
systemctl disable firewalld
sed -i 's/enforcing/disabled/' /etc/selinux/config
setenforce 0
swapoff -a
yum install ntpdate -y
ntpdate ntp1.aliyun.com
cat >> /etc/hosts << EOF
172.27.195.128 k8s-master
172.30.222.22 k8s-node01
172.30.222.21 k8s-node02
EOF
cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system
安装docker
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
yum -y install docker-ce
systemctl enable docker && systemctl start docker
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://uzaf2bfx.mirror.aliyuncs.com"],
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl enable docker
sudo systemctl restart docker
docker info
安装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=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
yum install -y kubelet-1.24.2-0 kubeadm-1.24.2-0 kubectl-1.24.2-0 bash-completion
systemctl enable kubelet
安装cri-docker(需要所有节点)
github地址:https://github.com/Mirantis/cri-dockerd
wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.2.3/cri-dockerd-0.2.3-3.el7.x86_64.rpm
#如果太慢使用国内加速:https://ghproxy.com/https://github.com/Mirantis/cri-dockerd/releases/download/v0.2.3/cri-dockerd-0.2.3-3.el7.x86_64.rpm
yum -y localinsatll cri-dockerd-0.2.3-3.el7.x86_64.rpm
设置系统参数
cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF
sysctl -p /etc/sysctl.d/k8s.conf
设置开机自启
sed -e 's#ExecStart=.*#ExecStart=/usr/bin/cri-dockerd --network-plugin=cni --pod-infra-container-image=registry.aliyuncs.com/google_containers/pause:3.7#g' /usr/lib/systemd/system/cri-docker.service
sudo systemctl daemon-reload
systemctl restart cri-docker
systemctl enable cri-docker
运行初始化
kubeadm init \
--apiserver-advertise-address=172.27.195.128 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.24.2 \
--service-cidr=192.168.200.0/21 \
--pod-network-cidr=10.0.0.0/16 \
--ignore-preflight-errors=all \
--cri-socket /var/run/cri-dockerd.sock
重置初始化
kubeadm reset --cri-socket /var/run/cri-dockerd.sock
其他节点加入
kubeadm join 172.27.195.128:6443 --token b2m6wt.9dtk56kfafpl9td4 \
--discovery-token-ca-cert-hash sha256:0f1141d43c4e4b7449df7f3a97086cce8e0ec9657b45ae34924fa7c17edd7585 \
--cri-socket /var/run/cri-dockerd.sock
注意
所有需要节点执行的操作是都需要加--cri-socket /var/run/cri-dockerd.sock
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律