Kubernetes python客户端:身份验证问题
我试图使用用于kubernetes的python API,但似乎无法执行该请求。我认为管道对我来说并不清楚 我在这里遵循以下步骤: 在远程服务器上:Kubernetes python客户端:身份验证问题,kubernetes,kubernetes-python-client,Kubernetes,Kubernetes Python Client,我试图使用用于kubernetes的python API,但似乎无法执行该请求。我认为管道对我来说并不清楚 我在这里遵循以下步骤: 在远程服务器上: 我设置了我的服务帐户并生成了链接中描述的秘密 我将令牌添加到我的代码中 我被拒绝了 我应该将任何信息从集群导入本地客户端吗 港口还好吗 来自kubernetes导入客户端,配置 def main(): configuration=client.configuration() configuration.host=”http://my_ip:
- 我设置了我的服务帐户并生成了链接中描述的秘密
- 我将令牌添加到我的代码中
- 我应该将任何信息从集群导入本地客户端吗李>
- 港口还好吗
来自kubernetes导入客户端,配置
def main():
configuration=client.configuration()
configuration.host=”http://my_ip:8080"
配置。api_密钥_前缀['authorization']=“载体”
configuration.api_key['authorization']=“我的令牌”
v1=client.CoreV1Api()
打印(“列出带IP的播客:”)
ret=v1.列出所有名称空间的pod(watch=False)
对于ret.items中的i:
打印(“%s\t%s\t%s”%
(i.status.pod_ip,i.metadata.namespace,i.metadata.name))
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
main()
输出:
引发MaxRetryError(_池、url、错误或响应错误(原因))
urllib3.exceptions.MaxRetryError:HTTPConnectionPool(host='xx.xx.xx.xx',port=8080):url超过最大重试次数:/api/v1/pods?watch=False(由NewConnectionError引起)(':未能建立新连接:[Errno 61]连接被拒绝'
当前本地客户端kubectl配置视图:
apiVersion: v1
clusters: []
contexts: []
current-context: ""
kind: Config
preferences: {}
users: []
首先,检查kubectl是否正确配置,如下面的 配置kubectl 为了让kubectl找到并访问Kubernetes群集,它需要一个kubeconfig文件,该文件在您使用
kube up.sh
创建群集或成功部署Minikube群集时自动创建。[…]默认情况下,kubectl配置位于~/.kube/config
检查kubectl配置
通过获取集群状态,检查kubectl是否正确配置:
kubectl集群信息
如果看到URL响应,则kubectl已正确配置为访问集群。
如果您看到与以下类似的消息,则说明kubectl未正确配置或无法连接到Kubernetes群集
与服务器的连接被拒绝-是否指定了正确的主机或端口?
因为它看起来没有连接到群集。如果它没有返回URL,您可以从远程服务器(从
$HOME/.kube
目录)获取config
文件
您可以将该文件放在本地计算机上,类似地命名为$HOME/.kube/config
然后,您可以使用以下命令在Python脚本中加载该配置文件:
def main():
config.load_kube_config()
可以找到示例。您忽略了在配置中指定API服务器证书。您包含的链接具有以下内容:
configuration.ssl_ca_cert = '<path_to_cluster_ca_certificate>'
configuration.ssl\u ca\u cert=''