Security 如何配置kubernetes,以便我可以从笔记本电脑对主机发出命令?

Security 如何配置kubernetes,以便我可以从笔记本电脑对主机发出命令?,security,kubernetes,x509,kubeadm,Security,Kubernetes,X509,Kubeadm,我现在正在尝试设置一台机器的集群。我知道我可以让API服务器运行并监听一些端口 我希望通过我的笔记本电脑对主机发出命令 主kubectl get节点的KUBECONFIG=/home/slackware/KUBECONFIG\u应向主计算机发送请求,点击API服务器,并获取运行节点的响应 但是,我遇到了权限问题。一个类似于x509:证书的有效期为10.61.164.153,而不是10.0.0.1。另一个是403,如果我点击主计算机上运行的kubectl代理--port=8080 我认为有两种解决

我现在正在尝试设置一台机器的集群。我知道我可以让API服务器运行并监听一些端口

我希望通过我的笔记本电脑对主机发出命令

主kubectl get节点的KUBECONFIG=/home/slackware/KUBECONFIG\u应向主计算机发送请求,点击API服务器,并获取运行节点的响应

但是,我遇到了权限问题。一个类似于
x509:证书的有效期为10.61.164.153,而不是10.0.0.1
。另一个是403,如果我点击主计算机上运行的
kubectl代理--port=8080

我认为有两种解决方案是可行的,其中一种更好(B):

A.将我的笔记本电脑的ip地址添加到API服务器或证书或证书代理持有的可接受ip地址列表中。我该怎么做?这是我可以在
kubeadm init
中设置的吗

B.将
127.0.0.1
添加到API服务器或证书或证书代理持有的可接受ip地址列表中。我该怎么做?这是我可以在
kubeadm init
中设置的吗

我认为B会更好,因为我可以创建一个从我的笔记本电脑到远程机器的ssh隧道,并允许我的队友(如果我有)也这样做

谢谢,

Slackware

您应该将
--apiserver cert extra SAN 10.0.0.1
添加到
kubeadm init
命令中

您还应使用配置文件:

apiVersion: kubeadm.k8s.io/v1beta2
kind: ClusterConfiguration
kubernetesVersion: v1.16.2
apiServer:
  certSANs:
  - 10.0.0.1

您可以在此处找到所有相关信息:

您正在执行
kubectl--kubeconfig kubeconfig get nodes
?根据任何请求,API服务器发送其证书,并由kubectl进行验证。您的第一条错误消息可能意味着API服务器的证书对IP地址10.61.164.153有效,但API服务器实际上是在IP地址10.0.0.1上运行的,因此kubectl无法验证此证书。您可以找到一个很好的解释来实现此目标。