为了进一步了解云技术,我尝试使用6个Raspberry Pi 3创建一个Kubernetes高可用性集群。目标是3位堆叠的主人和3位工人。
我已经按照https://kubernetes.io/docs/setup/independent/high-availability/上的说明进行操作,但是无论何时加入:
api:
controlPlaneEndpoint: "master"
在kubeadm-config.yaml中,我最终遇到未部署CoreDNS服务的情况:
root@master-1:~# kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system etcd-master-1 1/1 Running 0 39m
kube-system kube-apiserver-master-1 1/1 Running 0 39m
kube-system kube-controller-manager-master-1 1/1 Running 0 39m
kube-system kube-scheduler-master-1 1/1 Running 0 38m
已安装部署,但由于某些原因,当我使用controlPlaneEndpoint指令时,该部署未激活。
root@master-1:~# kubectl get deployments -n kube-system
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
coredns 2 0 0 0 41m
好像根本没有尝试。
如果我从kubeadm-conf.yaml中排除了controlPlaneEndpoint指令,则它的部署正确,但是如果没有来自kube-controller-manager和kube-scheduler的错误,我将无法添加其他主节点
root@master-1:~# kubectl logs -n kube-system kube-controller-manager-master-2
invalid configuration: no configuration has been provided
root@master-1:~# kubectl logs -n kube-system kube-scheduler-master-2
invalid configuration: no configuration has been provided
在安装CNI插件之前,我希望CoreDNS成为“待处理”。
这真让我发疯。感觉好像已经很接近了!
欢迎使用任何指针。
谢谢
// Fredrik