如何使用python列出Azure VM?

时间:2019-07-12 17:51:15

标签: python azure listview azure-vm-templates

我正在尝试使用python代码列出Azure VM。有人可以帮我解决这个问题吗?

我已经尝试浏览Microsoft网站上的代码,但是我不清楚。

1 个答案:

答案 0 :(得分:0)

首先,您需要按照Azure官方文档Azure REST API Reference的{​​{3}}部分在Azure门户上向Azure AD注册应用程序,以获取所需的参数client_id和{{1} }以列出虚拟机。

然后,您将继续获得其他必需的参数secretsubscription_id

然后,在Python中创建虚拟环境,以通过tenant_id安装适用于Python的Azure SDK,或仅通过pip install azure安装适用于Python的Azure Compute Management。

这是我的示例代码。

pip install azure-mgmt-compute

如果仅按资源组列出虚拟机,则使用功能Register your client application with Azure AD作为下面的代码。

from azure.common.credentials import ServicePrincipalCredentials
from azure.mgmt.compute import ComputeManagementClient

credentials = ServicePrincipalCredentials(
    client_id='<your client id>',
    secret='<your client secret>',
    tenant='<your tenant id>'
)

subscription_id = '<your subscription id>'
client = ComputeManagementClient(credentials, subscription_id)

或者您要列出预订中的所有VM,以使用功能list(resource_group_name, custom_headers=None, raw=False, **operation_config)作为下面的代码。

resource_group_name = '<your resource group name>'
vms_by_resource_group = client.virtual_machines.list(resource_group_name)

作为参考,我认为有两个SO线程可能有助于更深入地理解:list_all(custom_headers=None, raw=False, **operation_config)How to get list of Azure VMs (non-classic/Resource Managed) using Java API

希望有帮助。