我正在制作一个将使用K8S(EKS)协调集群上的部署的应用程序。当前,我正在使用Minikube进行开发,因此可以按预期进行,但是它使用$HOME/.kube/config
文件加载配置。连接到EKS的其他方法还有哪些?
我用于工作证明的示例代码:
from kubernetes import client, config
# Configs can be set in Configuration class directly or using helper utility
config.load_kube_config()
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))
答案 0 :(得分:0)
根据“ load_authentication”的文档:
此功能将通过kube-config用户部分中的各种身份验证方法,并在找到有效的身份验证方法时停止。身份验证方法的顺序为:
- auth-provider(gcp,azure,oidc)
- 令牌字段(指向令牌文件)
- exec提供的插件
- 用户名/密码
_load_authentication_-从kube-config用户部分读取身份验证(如果存在)。
这是一个将client.Configuration()
与barer token to authenticate结合使用的示例。
也请看看Authenticate with the Azure Management Libraries for Python
### 更新 ###
对于特定于AWS的环境,您可以使用AWS SDK for Python (Boto 3)和Create a kubeconfig for Amazon EKS
有一个社区示例-如何将AWS凭证设置为kubeconfig或构建配置using boto3
希望获得帮助。