从容器引擎中的pod获取主节点的区域

时间:2017-12-19 17:18:25

标签: kubernetes google-cloud-platform google-kubernetes-engine stackdriver google-cloud-stackdriver

对于多分区,多群集设置。是否可以从pod动态公开或检索运行主节点的区域?由于需要将我们的指标正确地推送到stackdriver,以便根据它们运行horizontal pod autoscaler

我可以在单个部署中对其进行硬编码,但我想避免这种情况。

我已经尝试查看计算内部元数据端点,并且在reference variables kubernetes中,但似乎没有公开主服务器区域。

1 个答案:

答案 0 :(得分:2)

通过解析节点上的kube-env元数据条目,可以通过非官方方式确定主服务器所在的区域(或区域)。 kube-env是键值存储,其中键全部为大写,后跟冒号,后跟值。如果您查找密钥ZONE,则该值将是群集位置(例如,具有单个区域主服务器的多区域群集的主区域或区域群集的主区域)。

请注意,这不是受支持的API,因此它可能会在将来的GKE版本中消失,但是现在它是从任何节点获取群集位置的简单方法。