https://www.kubernetes.org.cn/5462.html
这个并不是合适每一个人 比如我这个菜鸡就遇到了很多问题,如下:
1 我是一台阿里云的ECS 一个轻量级服务器 这样的话 这两个不在一个网段 当把node节点加入没什么事情 但是部署完flannel网络之后,node节点的flannel pod会报错 describe一下会显示tcp:10.96.x.x 访问不到 很明显 网络的问题(iptables没用) 起初 我觉得 可能是我的服务器问题(轻量级服务器 1C2G,很明显不符合基本要求),但是更换了另一台ESC后 还是不行,说明还是网络的问题。
关于 跨网段的部署,网上很少有相关的文章,git上有一个不错,推荐一下https://zhangguanzhang.github.io/2019/11/24/kubeadm-base-use/#%E5%AE%89%E8%A3%85docker感兴趣的可以看看 ,我还是没有实现,最后在本地搭建的虚拟机,很是惭愧。
2 关于服务器内网和外网的问题 我之前加入的时候 一直按照外网加入 但是不对 其实应该是内网ip 所以 要记清楚
3 关于kubeadm版本的问题 下载的时候要注意 你下载的版本和部署的版本要一致 否则会出现 你当前的版本 不符合
在这里yum install -y kubelet-1.14.2 kubeadm-1.14.2 kubectl-1.14.2
4 init
kubeadm init --image-repository registry.aliyuncs.com/google_containers --kubernetes-version=1.14.2 --apiserver-advertise-address=192.168.0.154 --pod-network-cidr=10.244.0.0/16
我的service-cidr使用的是默认的10.96.0.0/16 另外 pod-network 使用的是flannel网络所需要的 注意 你的pod network的地址不能和你的主机ip的地址重合 这样会报错
然后 再执行kubectl get nodes
发现如下
这就说明你的k8s集群搭建好啦 奥里给
补充,一些基本的命名,方便使用:
flannel网络:最近发现上边连接提供的flannel网络存在问题:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml 可以更正为这句话
查看状态
kubectl describe pod kube-flannel-ds-amd64-pbqjh --namespace kube-system
kubectl logs kube-flannel-ds-amd64-pbqjh -n kube-system
重装:
kubeadm reset
ifconfig cni0 down
ip link delete cni0
ifconfig flannel.1 down
ip link delete flannel.1
rm -rf /var/lib/cni/
查看状态:
kubectl get po -n kube-system -o wide
查看配置信息:
kubectl -n kube-system get cm kubeadm-config -oyaml
补充: 让master节点当作work节点
kubectl taint node master node-role.kubernetes.io/master-
禁用:kubectl taint node
master node-role.kubernetes.io/master=""
:NoSchedule