我在阿里云上创建了Kubernetes,并希望从客户端控制,例如kube master master / nodes kubectl
,kubernetes-dashboard
,从本地到云部署(清单)等,无需SSH。
我知道我们可以使用kubeconfig
,但现在不知道,请多多帮助我,谢谢。
答案 0 :(得分:3)
如果您使用kubeadm创建了一个集群,则需要通过SSH输入实例并从/ etc / kubernetes / pki下载kube-apiserver客户端证书和CA.
获得它们后,可以使用这些命令将配置添加到kubeconfig(基于https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/10-configuring-kubectl.md)。确保替换IP_ADDRESS_OF_YOUR_CLUSTER,CLIENT_CERTIFICATE,CLIENT_KEY占位符(而不是admin,您可以为凭据选择其他名称):
kubectl config set-cluster your cluster \
--certificate-authority=CA_CERTIFICATE \
--embed-certs=true \
--server=https://IP_ADDRESS_OF_YOUR_CLUSTER:6443
kubectl config set-credentials admin \
--client-certificate=CLIENT_CERTIFICATE \
--client-key=CLIENT_KEY
kubectl config set-context your-cluster-context \
--cluster=your-cluster \
--user=admin
如果您收到身份验证错误,则使用了不正确的证书。
此外,请确保在云防火墙中打开端口6443,否则您将无法访问。