如何部署一个Kubernetes集群
... Conditions ... Ready False... KubeletNotReady runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized ... 可以看到节点处于“NodeNotReady”的原因在于尚未部署任何网络插件,为了进一步验证着一点还可以通过kubectl检查这个节点上各个Kubernetes系统Pod的状态,命令及执行效果如下: root@kubernetesnode01:/opt/kubernetes-config# kubectl get pods -n kube-system NAME READY STATUS RESTARTS AGE coredns-66bff467f8-l4wt6 0/1 Pending 0 64m coredns-66bff467f8-rcqx6 0/1 Pending 0 64m etcd-kubernetesnode01 1/1 Running 0 64m kube-apiserver-kubernetesnode01 1/1 Running 0 64m kube-controller-manager-kubernetesnode01 1/1 Running 0 64m kube-proxy-wjct7 1/1 Running 0 64m kube-scheduler-kubernetesnode01 1/1 Running 0 64m 命令中“kube-system”表示的是Kubernetes项目预留的系统Pod空间(Namespace),需要注意它并不是Linux Namespace,而是Kuebernetes划分的不同工作空间单位。回到命令输出结果,可以看到coredns等依赖于网络的Pod都处于Pending(调度失败)的状态,这样说明了该Master节点的网络尚未部署就绪。 5、部署Kubernetes网络插件 前面部署Master节点中由于没有部署网络插件,所以节点状态显示“NodeNotReady”状态。接下来的内容我们就来具体部署下网络插件。在Kubernetes“一切皆容器”的设计理念指导下,网络插件也会以独立Pod的方式运行在系统中,所以部署起来也很简单只需要执行“kubectl apply”指令即可,例如以Weave网络插件为例: root@kubernetesnode01:/opt/kubernetes-config# kubectl apply -f https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d ' ') serviceaccount/weave-net created clusterrole.rbac.authorization.k8s.io/weave-net created clusterrolebinding.rbac.authorization.k8s.io/weave-net created role.rbac.authorization.k8s.io/weave-net created rolebinding.rbac.authorization.k8s.io/weave-net created daemonset.apps/weave-net created 部署完成后通过“kubectl get”命令重新检查Pod的状态: root@kubernetesnode01:/opt/kubernetes-config# kubectl get pods -n kube-system NAME READY STATUS RESTARTS AGE coredns-66bff467f8-l4wt6 1/1 Running 0 116m coredns-66bff467f8-rcqx6 1/1 Running 0 116m etcd-kubernetesnode01 1/1 Running 0 116m kube-apiserver-kubernetesnode01 1/1 Running 0 116m kube-controller-manager-kubernetesnode01 1/1 Running 0 116m kube-proxy-wjct7 1/1 Running 0 116m kube-scheduler-kubernetesnode01 1/1 Running 0 116m weave-net-746qj 可以看到,此时所有的系统Pod都成功启动了,而刚才部署的Weave网络插件则在kube-system下面新建了一个名叫“weave-net-746qj”的Pod,而这个Pod就是容器网络插件在每个节点上的控制组件。 (编辑:应用网_阳江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |