我正在尝试使用Python REST API包装器以编程方式启动Azure VM。我想要的只是一个简单的虚拟机,不是部署的一部分或类似的东西。我按照这里的例子:http://www.windowsazure.com/en-us/develop/python/how-to-guides/service-management/#CreateVM
我已经运行了代码,但我没有在门户中看到任何新的VM;它所做的只是创建一个新的云服务,上面写着“你没有任何部署到生产环境中”。我做错了什么?
答案 0 :(得分:3)
您已创建了hosted_service(云服务),但尚未在该服务中部署任何内容。你需要做更多的事情,所以我将从你离开的地方继续,其中name
是VM的名称:
# Where should the OS VHD be created:
media_link = 'http://portalvhdsexample.blob.core.windows.net/vhds/%s.vhd' % name
# Linux username/password details:
linux_config = azure.servicemanagement.LinuxConfigurationSet(name, 'username', 'password', True)
# Endpoint (port) configuration example, since documentation on this is lacking:
endpoint_config = azure.servicemanagement.ConfigurationSet()
endpoint_config.configuration_set_type = 'NetworkConfiguration'
endpoint1 = azure.servicemanagement.ConfigurationSetInputEndpoint(name='HTTP', protocol='tcp', port='80', local_port='80', load_balanced_endpoint_set_name=None, enable_direct_server_return=False)
endpoint2 = azure.servicemanagement.ConfigurationSetInputEndpoint(name='SSH', protocol='tcp', port='22', local_port='22', load_balanced_endpoint_set_name=None, enable_direct_server_return=False)
endpoint_config.input_endpoints.input_endpoints.append(endpoint1)
endpoint_config.input_endpoints.input_endpoints.append(endpoint2)
# Set the OS HD up for the API:
os_hd = azure.servicemanagement.OSVirtualHardDisk(image_name, media_link)
# Actually create the machine and start it up:
try:
sms.create_virtual_machine_deployment(service_name=name, deployment_name=name,
deployment_slot='production', label=name, role_name=name,
system_config=linux_config, network_config=endpoint_config,
os_virtual_hard_disk=os_hd, role_size='Small')
except Exception as e:
logging.error('AZURE ERROR: %s' % str(e))
return False
return True
答案 1 :(得分:0)
也许我不了解您的问题,但VM本质上是云服务中的部署(将其视为机器的逻辑容器)。