概述
一时兴起,尝试下K8S集群的搭建
步骤
请查看参考链接1
Q&A
Q: raw.githubusercontent.com被墙,导致kube-flannel.yml下不来
bash
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
The connection to the server raw.githubusercontent.com was refused - did you specify the right host or port?
A:
请查看参考链接2
Q: Worker节点加入集群报错
bash
[root@192 ~]# kubeadm join 192.168.0.109:6443 --token 24alfb.pv5eec2dtb6vh94e \
> --discovery-token-ca-cert-hash sha256:3c5d6820ee64d1d818bdab58a2f86a1316b09e5218258e96401ce73b3b4928b6 --node-name k8s-worker
[preflight] Running pre-flight checks
[WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/
[WARNING Hostname]: hostname "k8s-worker" could not be reached
[WARNING Hostname]: hostname "k8s-worker": lookup k8s-worker on 192.168.1.1:53: no such host
error execution phase preflight: [preflight] Some fatal errors occurred:
[ERROR Swap]: running with swap on is not supported. Please disable swap
[preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...`
To see the stack trace of this error execute with --v=5 or higher
A: Worker主机没有关闭交换内存导致的问题,执行"swapoff -a" 临时关闭内存后,重新执行成功
Q: Worker节点查看执行kubectl get pod报错
bash
[root@192 ~]# kubectl get nodes
The connection to the server localhost:8080 was refused - did you specify the right host or port?
A: 将master节点中的/etc/kubernetes/admin.conf文件拷贝到Worker节点相同目录,然后执行以下命令
bash
export KUBECONFIG=/etc/kubernetes/admin.conf
#设置用户环境变量,避免每次都需要export
#echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile
Q: 运行POD容器,报以下错误
bash
[root@192 myservice]# kubectl run -it busybox --rm=true --image=busybox:1.28.4 -- /bin/sh
If you don't see a command prompt, try pressing enter.
Error attaching, falling back to logs: error dialing backend: dial tcp 192.168.0.112:10250: connect: no route to host
pod "busybox" deleted
Error from server: Get "https://192.168.0.112:10250/containerLogs/default/busybox/busybox": dial tcp 192.168.0.112:10250: connect: no route to host
A: 经过排查,是Worker主机没有关闭防火墙引起的问题