Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes python客户端:身份验证问题_Kubernetes_Kubernetes Python Client - Fatal编程技术网

Kubernetes python客户端:身份验证问题

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的python API,但似乎无法执行该请求。我认为管道对我来说并不清楚

我在这里遵循以下步骤:

在远程服务器上:

  • 我设置了我的服务帐户并生成了链接中描述的秘密
  • 我将令牌添加到我的代码中
我被拒绝了

  • 我应该将任何信息从集群导入本地客户端吗
  • 港口还好吗
来自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=''