在AWS中,这两个命令为我的配置提供了价值
export FQDN=`curl http://169.254.169.254/latest/meta-data/public-hostname`
export PRIVATE_FQDN=`curl http://169.254.169.254/latest/meta-data/hostname`
现在,如果我想在Azure中使用类似的Linux VM设置,我如何使用元数据服务检索它?
我知道的一个命令就是这个
curl -H元数据:真正的“http://169.254.169.254/metadata/instance?api-version=2017-08-01”
但是此命令仅返回Azure中的ip和计算机特定数据,而不返回主机名。
您可以使用curl -H Metadata:true "http://169.254.169.254/metadata/instance?api-version=2017-08-01"
检索实例的所有元数据。
如您所见,Azure不提供主机名。
所以,答案是不可能的。
不:默认情况下,VM的主机名等于VM的名称。
你几乎是对的,你输入的命令会返回网络信息,因为你已经指定/ network after / instance。如果您使用以下命令,则应获取所有实例元数据
curl -H元数据:真正的“http://169.254.169.254/metadata/instance?api-version=2017-08-01”
你可以在这里找到更多细节https://docs.microsoft.com/en-us/azure/virtual-machines/windows/instance-metadata-service
该命令应该返回一个'name'值,它是VM名称,也应该是主机名。您还可以查看/ etc / hostname
这里有更多细节,您需要进一步阅读。