Server 51: 192.168.2.51 , ubuntu -->set to master & worker
Server 51: 192.168.2.52, ubuntu -->set to worker node
Intel(R) Xeon(R) Silver 4210R CPU @ 2.40GHz x 2 Sockets
共40 vCPU:
NUMA node0 CPU(s): 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38
NUMA node1 CPU(s): 1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,3
内存共64G
主机操作系统版本:
Linux c-PowerEdge-R740 5.11.0-27-generic #29~20.04.1-Ubuntu SMP Wed Aug 11 15:58:17 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
来自
cat < br_netfilter
> EOF
cat < net.bridge.bridge-nf-call-ip6tables = 1
> net.bridge.bridge-nf-call-iptables = 1
> EOF
加这个,后面安装network要用:199.232.68.133 raw.githubusercontent.com
临时去掉
sudo swapoff -a
长久去掉
sed -ri 's/.*swap.*/#&/' /etc/fstab
或直接注释掉
来自
#然后重启服务
sudo sysctl --system
Docker的安装流程参考官网链接:
Install Docker Engine on Ubuntu | Docker Documentation
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] Index of linux/ubuntu/ \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
Docker安装完成之后,还需要进行配置,配置Docker使用systemd作为cgroup driver,具体如下:
sudo mkdir /etc/docker
cat <
国内无法访问Docker Hub,所以这里可以选择性的给Docker设置一个代理,
/etc/docker/daemon.json里加一行:
sudo mkdir /etc/docker
cat <
sudo systemctl daemon-reload
sudo systemctl restart docker
这个安装流程参考官网链接:
1 |
Installing kubeadm | Kubernetes |
(1条消息) 国内安装K8S镜像源_寰宇001的博客-CSDN博客_k8s 镜像源
sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg
echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-get install -y kubelet=1.23.6-00 kubeadm=1.23.6-00 kubectl=1.23.5-00 --allow-downgrades #版本降级,否则worker node可能会因为版本问题出现flannel错误的问题:
sudo apt-mark hold kubelet kubeadm kubectl
c@master-node:~$ kubeadm config images list
k8s.gcr.io/kube-apiserver:v1.23.3
k8s.gcr.io/kube-controller-manager:v1.23.3
k8s.gcr.io/kube-scheduler:v1.23.3
k8s.gcr.io/kube-proxy:v1.23.3
k8s.gcr.io/pause:3.6
k8s.gcr.io/etcd:3.5.1-0
k8s.gcr.io/coredns/coredns:v1.8.6
kubeadm config images pull
失败的话,需要使用国内镜像 国内镜像 - Kubernetes指南 (feisky.xyz)
来自
sudo kubeadm init --apiserver-advertise-address=192.168.2.51 --image-repository registry.aliyuncs.com/google_containers --pod-network-cidr=10.244.0.0/16
失败:reboot后,kubeadm reset再kubeadm init 就好了
如果在初始化过程中出现了任何Error导致初始化终止了,使用kubeadm reset重置之后再重新进行初始化。
To start using your cluster, you need to run the following as a regular user:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Alternatively, if you are the root user, you can run:
export KUBECONFIG=/etc/kubernetes/admin.conf
关了窗口,重进入,就可以显示了
You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
Installing Addons | Kubernetes
node是NotReady,需要安装网络才可以Ready
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
进行网络插件安装前,先配置名称解析,防止访问不了:
vim /etc/hosts,添加如下(前面已经添加)
199.232.68.133 raw.githubusercontent.com
来自
再执行:
检查pod状态发现一直处于pending状态,是因为master结点默认不允许部署pod。设置master部署pod命令如下:
kubectl taint nodes --all node-role.kubernetes.io/master-
master禁止部署pod命令如下:
kubectl taint nodes k8s node-role.kubernetes.io/master=true:NoSchedule
把 master node加入到/etc/hosts里; 也要修改master node上的/etc/hosts把worker-node加入
Then you can join any number of worker nodes by running the following on each as root:
kubeadm join 192.168.2.51:6443 --token 3hy85l.jsfa8f0hc5pja1b7 \
--discovery-token-ca-cert-hash sha256:da37b4d18b6bd45bdefc182f97a607c70729e46cd632652f1a279767be43b493
在 master 显示出worker-node: