如何使用API创建OpenStack虚拟机?

在安装时OpenStack会加载配置信息。有不同的虚拟机模板而且与在Amazon EC2以及其他平台上看到的完全一样。这些配置是内存、vCPU、磁盘容量等的组合,定义了虚拟机的大小及容量。可以使用如下命令列出配置信息: nova flavor-list +----+-----------+-----------+------+-----------+------+-------+-------------+-----------+ | ID | Name      | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | +----+-----------+-----------+------+-----------+------+-------+-------------+-----------+ | 1  | m1.tiny   | 512       | 1    | 0         |      | 1     | 1.0         | True      | | 2  | m1.small  | 2048      | 20   | 0         |      | 1     | 1.0         | True      | | 3  | m1.medium | 4096      | 40   | 0         |      | 2     | 1.0         | True      | | 4  | m1.large  | 8192      | 80   | 0         |      | 4     | 1.0         | True      | | 5  | m1.xlarge | 16384     | 160  | 0         |      | 8     | 1.0         | True      | +----+-----------+-----------+------+-----------+------+-------+-------------+-----------+ 我们使用代码创建一个OpenStack虚拟机,在源头进行修改。我对必须进行修改的部分进行了加粗显示: #!/usr/bin/env python import time import os execfile('credentials.py') from novaclient.client import Client try:        credentials = get_nova_credentials_v2()        nova_client = Client(**credentials)        image = nova_client.images.find(name="cirros-0.3.3-x86_64")        flavor = nova_client.flavors.find(name="m1.tiny")        net = nova_client.networks.find(label="demo-net")        nics = [{'net-id': net.id}]        instance = nova_client.servers.create(name="vm2", image=image,                                          flavor=flavor, key_name="demo-key",nics=nics)        print("Sleeping for 5s after create command")        time.sleep(5)        print("List of VMs")        print(nova_client.servers.list()) finally:        print("Execution Completed") 以下内容取决于设置时使用了什么值:     flavor = nova_client.flavors.find(name="m1.tiny")     net = nova_client.networks.find(label="demo-net") key_name="demo-key" 现在你可以运行Python代码并查看是否创建了一个虚拟机。显然如果没有成功,那么必须回退到OpenStack安装过程以查看哪部分有问题。基于个人经验,可能要尝试几次才能成功,因为配置有很多部分构成。

TechTarget中国原创内容,原文链接: http://www.searchvirtual.com.cn/showcontent_92906.htm
© TechTarget中国:http://www.techtarget.com.cn

原文地址:https://www.cnblogs.com/liangwang/p/5522303.html