gpt4 book ai didi

python - 使用 Azure AKS 群集的 Kubernetes Python 客户端填充 Pod CPU 限制

转载 作者:行者123 更新时间:2023-12-02 06:16:32 25 4
gpt4 key购买 nike

我需要使用Azure Python SDKKubernetes Python Client列出 AKS 中运行的集群的 Pods CPU 限制。

虽然使用 CLI/PowerShell 很简单,但我需要专门使用 Python。不得使用subprocess calls .

这是在使用 Azure 进行身份验证后获取 KubeConfig 对象的代码片段:

from azure.identity import DefaultAzureCredential
from azure.mgmt.containerservice import ContainerServiceClient

credential = DefaultAzureCredential(exclude_cli_credential=True)
subscription_id = "XXX"
resource_group_name= 'MY-SUB'
cluster_name = "my-aks-clustername"
container_service_client = ContainerServiceClient(credential, subscription_id)

kubeconfig = container_service_client.managed_clusters. \
list_cluster_user_credentials(resource_group_name, cluster_name). \
kubeconfigs[0]

但我不确定如何将其用于 K8s Python 客户端:

from kubernetes import client, config
config.load_kube_config() ## How to pass?

v1 = client.CoreV1Api()
print("Listing pods with their IPs:")
ret = v1.list_pod_for_all_namespaces(watch=False)
for i in ret.items:
print("%s\t%s\t%s" % (i.status.pod_ip, i.metadata.namespace, i.metadata.name))

最佳答案

您可以使用 config.load_kube_config 方法并将之前获取的 kubeconfig 对象作为参数传入。该方法接受 config_file 参数,该参数可以是文件对象、类文件对象或字符串文件路径。

由于 kubeconfig 是一个字符串,因此您可以将其作为字符串文件路径传递,如下所示:

from kubernetes import client, config

# Pass the kubeconfig string as a file path
config.load_kube_config(config_file=kubeconfig)

v1 = client.CoreV1Api()
print("Listing pods with their IPs:")
ret = v1.list_pod_for_all_namespaces(watch=False)
for i in ret.items:
print("%s\t%s\t%s" % (i.status.pod_ip, i.metadata.namespace, i.metadata.name))

关于python - 使用 Azure AKS 群集的 Kubernetes Python 客户端填充 Pod CPU 限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75148002/

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