Is There Any Python Api Which Can Get The Ip Address (internal Or External) Of Virtual Machine In Azure
I want to control the VMs in Azure with python SDK. Is there any API that can get a VM's IP address (internal or external) according to VM's name?
Solution 1:
Based on my understanding, I think you want to get the public & private ip addresses of a Azure VM using Azure SDK for Python.
For getting these ip addresses (internal & external), please see the code below.
from azure.mgmt.network import NetworkManagementClient, NetworkManagementClientConfiguration
subscription_id = '33333333-3333-3333-3333-333333333333'
credentials = ...
network_client = NetworkManagementClient(
NetworkManagementClientConfiguration(
credentials,
subscription_id
)
)
GROUP_NAME = 'XXX'
VM_NAME = 'xxx'
PUBLIC_IP_NAME = VM_NAME
public_ip_address = network_client.public_ip_addresses.get(GROUP_NAME, PUBLIC_IP_NAME)
print(public_ip_address.ip_address)
print(public_ip_address.ip_configuration.private_ip_address)
As reference, you can refer to the documents below to know the details of the code above.
- Resource Management Authentication using Python for the variable
credentials
. - Create the management client for the variable
network_client
. - More details for the
azure.mgmt.network
package, please see http://azure-sdk-for-python.readthedocs.io/en/latest/ref/azure.mgmt.network.html.
Solution 2:
For the people that don't have public IP assigned to their VM there is a way to get the private IP without creating the public IP.
from azure.mgmt.network import NetworkManagementClient, NetworkManagementClientConfiguration
subscription_id = ''
credentials = UserPassCredentials(
'user@yes.com',
'password',
)
network_client = NetworkManagementClient(
credentials,
subscription_id
)
private_ip = network_client.network_interfaces.get(GROUP_NAME, NETWORK_INTERFACE_NAME).ip_configurations[0].private_ip_address
This works and is tested on azure-sdk-for-python version 2.0.0rc6.
Post a Comment for "Is There Any Python Api Which Can Get The Ip Address (internal Or External) Of Virtual Machine In Azure"