问题标签 [kubernetes-python-client]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何使用 Kubernetes Python 客户端创建秘密?
我一直在尝试使用 python 客户端为 Kubernetes 集群创建秘密。我不断收到一条错误消息
这是我试图执行以创建秘密的代码。
我在这里想念什么?
python - 无法使用 Kubernetes python 客户端进行身份验证?
我正在运行一个通过 python 客户端调用 kubernetes 的简单脚本:
.
但是,它似乎无法获得正确的凭据。我可以使用 kubectl 命令行界面,我注意到.kube/config
每当我发出命令(例如,kubectl get pods
)时,它都会使用访问令牌和到期时间填充我的文件。
只要该令牌尚未过期,我的 python 脚本就可以正常运行。但是,一旦该令牌过期,它似乎无法刷新它,而是失败并告诉我 set GOOGLE_APPLICATION_CREDENTIALS
。当然,当我使用密钥文件创建服务帐户并指向GOOGLE_APPLICATION_CREDENTIALS
该密钥文件时,它给了我以下错误:
我对这个客户的理解有问题吗?感谢您对此的任何帮助!
我正在使用 kubernetes python 库的 3.0.0 版本。如果它有帮助,这是我的.kube/config
:
kubernetes - Kubernetes python客户端:身份验证问题
我们将 kubernetes python 客户端(4.0.0)与 google 的 kubernetes 引擎(master + nodepools 运行 k8s 1.8.4)结合使用,以定期在 kubernetes 上调度工作负载。我们用于创建 pod、附加到日志并报告 pod 结束状态的脚本的简化版本如下所示:
一切正常,但是我们遇到了一些身份验证问题。身份验证通过默认的auth-provider 进行,为此我通过在调度程序上手动gcp
运行来获得初始访问令牌。kubectl container cluster get-credentials
在某些随机时间范围内,某些 API 调用会导致来自 API 服务器的 401 响应。我的猜测是,只要访问令牌过期,就会发生这种情况,并且脚本会尝试获取新的访问令牌。但是,调度程序上会同时运行多个脚本,导致多次获取新的 API 密钥,其中只有一个仍然有效。我尝试了多种方法来解决这个问题(使用persist_config=True
,重新加载配置后重试401,...)没有任何成功。由于我不完全了解 gcp 身份验证和 kubernetes python 客户端配置是如何工作的(两者的文档都相当稀缺),所以我有点不知所措。
我们应该使用另一种身份验证方法而不是gcp
auth-provider 吗?这是 kubernetes python 客户端中的错误吗?我们应该使用多个配置文件吗?
kubernetes - 我在哪里可以获得 Kubernetes 安装中的 API_KEY
一直试图让 kubernetes 的 python 客户端按预期工作。祝你好运config.load_kube_config()
现在我想从一台既没有也没有在它上面的远程机器上使用 Python 客户kubectl
端~/.kube/config
。尝试了这样的python客户端API参考
片段:
起初,我似乎需要使用默认的服务帐户令牌,它说:
configuration.api_key['authorization'] = 'YOUR_API_KEY
看了很多之后很快意识到不是这样的[SSL: CERTIFICATE_VERIFY_FAILED]
有人可以提示我可以从我的新安装中获得这个吗?使用 kubeadm 启动此集群。
<--------- 下面编辑 ---------->
使用以下方法管理从 master 获取令牌:
ApiToken
上面的结果在下面的 Python 代码段中命名。
响应是一条HTTP/1.1 403 Forbidden
消息。
现在解决这个阶段。
kubernetes - 无法通过 kubernetes python 客户端删除 kubernetes 入口对象
删除入口对象时出现此错误。
这是我用来执行删除的代码片段......
我确保入口对象确实存在并具有正确的 API 版本控制。在尝试删除部署对象时遇到类似的错误!
kubernetes - 使用 K8s Python 客户端获取服务选择器
我正在尝试label selectors
通过Kubernetes Python Client获得服务。我正在使用list_service_for_all_namespaces方法来检索服务,并使用以下field_selector
参数对其进行过滤:
我收到此错误:
因此,似乎只有name
和namespace
是有效参数,没有记录:
field_selector = 'field_selector_example' # str | 通过字段限制返回对象列表的选择器。默认为一切。(可选的)
现在我的解决方法是为服务设置与标签选择器相同的标签,然后通过参数检索它,但我希望能够通过.label_selector
label selectors
问题是从一开始我就需要获取服务背后的端点(后端 pod),但是 API 调用甚至没有返回此信息,所以我虽然会得到选择器,但将它们与 pod 上的标签进行匹配,然后我们开始了,但现在我意识到选择器也无法获得。
这限制太多了。我在想可能是我的方法是错误的。有谁知道label selectors
从服务中获取的方法?
python - 通过 pod 访问 kubernetes python api
所以我需要通过一个pod连接到python kubernetes客户端。我一直在尝试使用config.load_incluster_config()
,基本上是按照这里的例子。但是它抛出了这些错误。
我正在使用 Python 2.7 和 Minikube 任何提示或建议将不胜感激。谢谢你。
kubernetes - python kubernetes api连接未授权401
我在连接到 python kubernetes 客户端时遇到问题,但是我在运行时遇到了这个 404 url not found 错误,curl -k https://ip-address:30000/pods
这是我编写的用于连接到 kubernetes 和列出 pod 的端点。我正在通过 minikube 在本地运行它,有什么建议吗?
错误:
我如何连接到 api:
我获取 api 密钥的方式是从我创建的服务帐户中获取解码的令牌,但是根据此处的文档, 它说
在配置了令牌身份验证并启用匿名访问的服务器上,提供无效承载令牌的请求将收到 401 Unauthorized 错误。不提供不记名令牌的请求将被视为匿名请求。
所以看起来我的 api 令牌在某种程度上是无效的?但是我按照步骤对它和所有内容进行了解码。我非常关注这个
我的 yaml 文件:
kubernetes - 是否可以使用 python API 观看 Kubernetes 集群上的所有事件?
使用 kubernetes Python API< 您必须指定要观看的事件吗?是否可以监视集群中的所有事件