【发布时间】:2019-09-14 05:44:40
【问题描述】:
我在 AWS-ec2 上运行一个 kubernetes 集群,我想让 pod(容器)在运行时知道它在哪个区域运行,如何做到这一点?
【问题讨论】:
标签: amazon-web-services docker kubernetes
我在 AWS-ec2 上运行一个 kubernetes 集群,我想让 pod(容器)在运行时知道它在哪个区域运行,如何做到这一点?
【问题讨论】:
标签: amazon-web-services docker kubernetes
看看AWSInstance Metadata:
[...] 实例元数据可从您正在运行的实例中获得,您 不需要使用 Amazon EC2 控制台或 AWS CLI。这可以是 在您编写脚本以从您的实例运行时很有帮助
您可以在运行时查询给定容器的区域,从内部查询元数据。像这样:
curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone
placement/availability-zone:实例启动所在的可用区。
【讨论】:
在这个类似的问题中有一些建议:Inject node labels into Kubernetes pod
选项:
【讨论】:
获取节点的详细信息,您将能够看到节点的区域
kubectl get nodes -A
【讨论】: