gpt4 book ai didi

kubernetes - kubectl 从头开始​​连接远程集群

转载 作者:行者123 更新时间:2023-12-02 11:44:49 35 4
gpt4 key购买 nike

我创建了一个 local Kubernetes cluster using ansible .一切都在运行,但现在我尝试将我的 kubectl 连接到集群(在 VM 中)。

我的集群正在 https://IP:6443

上运行

首先我得到:

$ kubectl get pods
The connection to the server localhost:8080 was refused - did you specify the right host or port?

所以我尝试了this solution :

kubectl config set-credentials kubeuser/IP --username=kubeuser --password=kubepassword
kubectl config set-cluster IP --insecure-skip-tls-verify=true --server=https://IP:6443
kubectl config set-context default/IP/kubeuser --user=kubeuser/IP --namespace=default --cluster=IP
kubectl config use-context default/IP/kubeuser

再次尝试:

$ kubectl get pods
Error from server (Forbidden): pods is forbidden: User "system:anonymous" cannot list pods in the namespace "default"

我知道我需要创建一个 clusterrolebinding,但我仍然需要一个初始的“admin-ownership”?我错过或做错了什么步骤,以便我可以使用 kubectl 访问我的集群并获取我的 pod?

最佳答案

Kubectl 是一个用于远程管理 Kubernetes 集群的命令行工具。

Kubectl 正在使用连接到集群时必须具备的配置文件。由于许多主要或次要的更改,您的配置文件可能不一致。如果对问题的进一步分析没有显示出良好的结果,请尝试 rm -f ~/.kube/config 并从头开始。

据我所知,您怀疑问题出在自签名证书上。它可能需要更新客户端上的集群根证书颁发机构 (CA),然后刷新有效证书的本地列表。

进入本地CA目录,检查ca.crt文件是否存在,然后将其复制到客户端。对于客户端,执行以下操作:

sudo cp ca.crt /usr/local/share/ca-certificates/kubernetes.crt
sudo update-ca-certificates

我同意 Matthew L. Daniel 提供的建议:

cluster: tag accepts either the filename of the CA certificate or an "inline" base64-ed version of the PEM you can see it with:

kubectl config set-cluster $foo --certificate-authority=... --embed-certs=true

or you can cheat and use --insecure-skip-tls-verify=true to switch off the CA verification for testing things

如果在安装 Kubernetes 期间没有生成证书,我建议从 Kubernetes TLS documentation 开始.您可以查看 GKE 或 AKS 等 Kubernetes 云提供商——它们提供了远程创建包含所有证书的 Kubernetes 配置文件的可能性,然后将其下载到本地 ~/.kube 目录。如果您将其采用到本地安装,也许这将解决配置的一些问题。它就像一个魅力,节省了很多时间。如果您仍然犹豫不决,请在此处提供 kubectl config view 的输出,以便我们帮助您解决问题。 (请在此处发布之前从中删除敏感数据)。

关于kubernetes - kubectl 从头开始​​连接远程集群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50304978/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com