问题描述
如何通过Azure REST API 获取到虚拟机(VM)所使用的公共IP地址信息
问题解答
由于直接获取到的虚拟机信息(Virtual Machines - Get)中,并不会包含虚拟机的公共IP信息,但是可以根据查询出的虚拟机网卡信息,来找到对应的关联的IP。
验证步骤:
1) 通过REST API获取虚拟机信息:
GET https://management.chinacloudapi.cn/{虚拟机Resource ID}?api-version=2021-03-01
注:中国区 Azure REST API的终结点为:https://management.chinacloudapi.cn
2) 从返回的消息体中,找到NetworkInterfaces中的ID信息
3) 根据第二步中的 NetworkInterfaces id,进行进一步查询Network Interfaces 信息:
GET https://management.chinacloudapi.cn/{networkInterfaces id}?api-version=2021-02-01&$expand=ipConfigurations/publicIPAddress,networkSecurityGroup
注:中国区 Azure REST API的终结点为:https://management.chinacloudapi.cn
4)从第三步的返回消息体中, properties 中的 ipAddress 就是需要的公共IP地址
参考资料
Virtual Machines - Get :https://docs.microsoft.com/en-us/rest/api/compute/virtual-machines/get
Network Interfaces - Get :https://docs.microsoft.com/en-us/rest/api/virtualnetwork/network-interfaces/get
当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!
标签: Azure REST API, Network Interfaces - Get, Virtual Machines - Get, 公共IP地址信息, Azure Developer