【发布时间】:2018-06-18 10:25:53
【问题描述】:
目前我有 python 脚本,它利用 MSI 收集必要的凭据以获取公共 IP 地址,但我也想获取 DNS 名称,这样连接起来会更容易(因为 IP 是动态的) 这是我当前的脚本:
from azure.mgmt.network import NetworkManagementClient
from azure.mgmt.resource import ResourceManagementClient, SubscriptionClient
from msrestazure.azure_active_directory import MSIAuthentication
from azure.common.credentials import ServicePrincipalCredentials
from azure.common.credentials import get_azure_cli_credentials
from azure.common.credentials import get_cli_profile
from azure.common.cloud import get_cli_active_cloud
import sys
# Create MSI Authentication
credentials = MSIAuthentication()
# Create a Subscription Client
subscription_client = SubscriptionClient(credentials)
subscription = next(subscription_client.subscriptions.list())
subscription_id = subscription.subscription_id
# Create a Resource Management client
resource_client = ResourceManagementClient(credentials, str(subscription_id))
resource_group_name = " "
for resource_group in resource_client.resource_groups.list():
print(resource_group.name)
resource_group_name = resource_group.name
network_client = NetworkManagementClient(credentials, subscription_id)
public_ip_name = []
for public_ip_names in network_client.public_ip_addresses.list(resource_group_name):
public_ip_name.append(public_ip_names.name)
print public_ip_name[0]
result_get = network_client.public_ip_addresses.get(resource_group_name, public_ip_name[0], )
print result_get.ip_address
我应该使用哪个类/方法?
【问题讨论】:
标签: python linux azure networking