python libcloud在vAPP中创建VM

时间:2014-08-03 11:37:35

标签: python linux vcloud-director-rest-api libcloud

我可以使用libcloud在云中创建节点(vAPP),但是API没有提到在现有vAPP中创建VM的方法。有人试过吗?

http://libcloud.readthedocs.org/en/latest/compute/drivers/vcloud.html

from libcloud.compute.types import Provider
from libcloud.compute.providers import get_driver

import libcloud.security  

def testConnection():
    #libcloud.security.VERIFY_SSL_CERT = True
    vcloud = get_driver(Provider.VCLOUD)
    driver = vcloud("user@org", "xxxxx", host='portal.local', api_version='5.1')   

    nodes = driver.list_nodes()    
    for i in nodes:
        print i      
    images = driver.list_images()    
    image = [i for i in images if i.name == "New Base VM vApp"][0]
    print image   

    locations = driver.list_locations()
    print locations

    vdcs = driver.vdcs
    vdc = [i for i in vdcs if "VDC_NAME" in i.name ][0]    
    for i in vdcs:
        if "VDC_NAME" in i.name:
            print "VDC\n"
            print i
            dev_test_vdc = i.name
            print i    
    print "creating node"
    node = driver.create_node(name="test_vAPP", image=image,  ex_vdc=dev_test_vdc, ex_clone_timeout=500)

def main():
    testConnection()

if __name__ == "__main__":
    main()

1 个答案:

答案 0 :(得分:0)

作为libcloud中vCloud驱动程序的贡献者,我担心没有对此的支持。 vApp以1:1的方式映射到VM。您可以在github

中阅读方法create_node的实现

但是你可以contribute这样的功能。