openstack创建虚拟机
使用devstack安装部署openstack之后,通常我们应该使用vmware的快照功能拍摄快照,以便以后我们可以恢复到之前的情况。创建虚拟机是openstack典型的工作流程,下面将给出创建虚拟机的详细步骤:
1、由于openstack的各种服务都需要经过授权才能够使用,而在授权过程中会使用到OS_PROJECT_NAME,OS_USERNAME和ADMIN_PASSWORD三个openstack环境变量,devstack为我们提供了设置这三个变量的openrc脚本,因此只需devstack目录下运行openrc脚本即可完成这些配置。以下从openrc中截取的片段是默认的设置和运行openrc的方法:
我们可以在终端中执行source openrc admin admin配置这些变量。如下图:
此处WARNING的输出是正常的。
配置这些变量的第二种方法是在终端中export 相关变量,例如export OS_PROJECTNAME=demo
如果不配置这些环境变量,在使用openstack时会出现error,并要求我们提供user name 或者 user ID
2、openstack安装部署完成后,会默认安装很多子项目,如nova,neutron,glance及其python的封装,例如python-novaclient会对nova进行封装,简化用户对底层nova API的访问,我们可以直接使用python-novaclient提供的命令行接口也就是命令完成创建虚拟机等工作,这些命令会去调用openstack/nova提供的API接口帮助我们完成对应的工作。
首先在终端中输入nova或者nova --help,我们可以看到nova提供的boot命令可以创建一个虚拟机。如下所示:
进一步,我们使用nova help boot可以看到boot命令的具体使用方法,如下所示:
我们根据help结果可以选择使用nova boot --flavor <flavor> --image <image> <name>创建一个虚拟机。此处的flavor是虚拟机在创建时需要先指定的一组资源的配置,包括计算,存储,内存等(总共7个属性),可以使用nova flavor-lsit查看本机(client)所拥有flavor list,如下所示:
而image代表镜像,和我们平时
装系统用的win7的镜像差不多,可以使用glance image-list(该功能最初也是在nova中实现的,后来由于nova不断壮大,便将此功能移到了glance子项目中,glance也有一个python-glanceclinet的python封装),如下所示:
到此,我们便可以根据flavor list和image list分别提供的flavor,image参数,创建一个名为machine1的虚拟机,如下所示:
创建完成后,我们可以使用nova list命令查看所创建名为machine1的虚拟机,如下所示:
至此,openstack中虚拟机的创建过程便已经完成。更多的openstack的API使用可以参考http://developer.openstack.org/api-guide/quick-start/