首页 > 解决方案 > 快速检测 VM 是否在 Azure 上运行

问题描述

检测 VM(在我的例子中是在 Linux VM 上运行的 Docker 容器)是否在 Azure 上运行的一种方法是使用 HTTP 查询元数据服务以获取某些信息。

这个技巧在 AWS 和 GCP 上运行良好,可以使用 DNS 名称 (instance-data.ec2.internalmetadata.google.internal) 完成查询,因此在完成 DNS 查找时查询将很快失败。

但是对于 Azure,我不知道元数据服务的任何 DNS 名称,只有它的原始 IP 地址 ( 169.254.169.254) 和代码必须等待请求超时,而不是需要更长的时间。

一种解决方案是为 Azure 元数据服务查找 DNS 名称,但也可能有其他解决方案。

标签: azurevirtual-machinemetadata

解决方案


推荐阅读