我现在正在尝试设置一台计算机的集群。我知道我可以让API服务器运行并监听某些端口。
我正在寻找从便携式计算机向主机发出命令的方法。
[KUBECONFIG=/home/slackware/kubeconfig_of_master kubectl get nodes
应该向主机发送请求,点击API服务器,并获得正在运行的节点的响应。
但是,我遇到了权限问题。一种类似于x509: certificate is valid for 10.61.164.153, not 10.0.0.1
。如果我按下了主机上运行的kubectl proxy --port=8080
,则另一个是403。
我认为有两种解决方案是可能的,最好是一种(B):
A。将我的笔记本电脑的IP地址添加到API服务器或证书或证书代理持有的接受的IP地址列表中。我该怎么做?我可以在kubeadm init
中设置吗?
B。将127.0.0.1
添加到API服务器或证书或证书代理持有的接受IP地址列表中。我该怎么做?我可以在kubeadm init
中设置吗?
我认为B会更好,因为我可以创建从笔记本电脑到远程计算机的ssh隧道,并允许我的队友(如果有的话)做类似的事情。
谢谢,
Slackware
您应将--apiserver-cert-extra-sans 10.0.0.1
添加到kubeadm init
命令中。
参考https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/#options
您还应该使用配置文件:
apiVersion: kubeadm.k8s.io/v1beta2
kind: ClusterConfiguration
kubernetesVersion: v1.16.2
apiServer:
certSANs:
- 10.0.0.1
您可以在这里找到所有相关信息:https://godoc.org/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta2