OpenStack安装流程(juno版)- 启动一个实例

所谓实例就是OpenStack在compute节点上创建的虚拟机。

使用OpenStack网络(neutron)启动一个实例

生成密钥对

在启动实例前,必须用ssh-keygen先生成一个公钥/私钥对,并把公钥添加到OpenStack环境中。

  1. 启动demo租户的证书:

$ source demo-openrc.sh

  1. 生成密钥对:

$ ssh-keygen
过程中会要求输入存放密钥的文件名,本文采用默认的/root/.ssh/id_rsa文件名。随后将在/root/.ssh/产生密钥文件对:
<pre>Your identification has been saved in /root/.ssh/id_rsa.<br>Your public key has been saved in /root/.ssh/id_rsa.pub.</pre>

  1. 把公钥添加到OpenStack环境中:

$ nova keypair-add --pub-key ~/.ssh/id_rsa.pub demo-key

  1. 验证是否添加成功:
    <pre>$ nova keypair-list
NameFingerprint
demo-key49:f9:6f:e7:f2:1c:ae:27:56:f6:cf:65:ca:f3:a2:13

+----------+-------------------------------------------------+</pre>

启动实例

要启动实例,至少要先指定方案(flavor),镜像名字,网络,安全组(security group),密钥和实例名字。

  1. 方案是用来指定虚拟资源分配的,包括处理器,内存和存储。
    列出可用方案:
    <pre>$ nova flavor-list
IDNameMemory_MBDiskEphemeralSwapVCPUsRXTX_FactorIs_Public
1m1.tiny51210 11.0True
2m1.small2048200 11.0True
3m1.medium4096400 21.0True
4m1.large8192800 41.0True
5m1.xlarge163841600 81.0True

+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+</pre>
本文实例使用的方案为m1.tiny

  1. 列出可用镜像:
    <pre>$ nova image-list
IDNameStatusServer
6db9f9c9-4011-4cf5-a12b-dc70423ec0c3cirros-0.3.3-x86_64ACTIVE

+--------------------------------------+---------------------+--------+--------+</pre>

  1. 列出可用的网络:
    <pre>$ neutron net-list
idnamesubnets
e6f3606d-2bf6-4b01-8fb4-c10d299dbe75ext-net963754fb-73c4-4a1b-93ee-27d2c2beb97a
830379a4-cc69-4165-a18f-f9430d999d5fdemo-neta6593d6d-1992-4207-ae61-7784f0aa5a3c 192.162.1.0/24

+--------------------------------------+----------+-----------------------------------------------------+</pre>
本文实例使用demo-net租户网络。需注意的是,在设定时必须使用网络ID而不是名字。

  1. 列出可用安全组:
    <pre>$ nova secgroup-list
IdNameDescription
86d1711a-3237-4c1a-ac2c-4d6ef99287c9defaultdefault

+--------------------------------------+---------+-------------+</pre>
默认这个安全组会启动防火墙阻止远程访问实例。如果需要远程访问,需设定远程访问的选项。

  1. 启动实例
    $ nova boot --flavor m1.tiny --image cirros-0.3.3-x86_64 --nic net-id=DEMO_NET_ID --security-group default --key-name demo-key demo-instance1
    其中DEMO_NET_ID用上述demo-net的ID替代。

    <pre>$ nova boot --flavor m1.tiny --image cirros-0.3.3-x86_64 --nic net-id=830379a4-cc69-4165-a18f-f9430d999d5f \

--security-group default --key-name demo-key demo-instance1
PropertyValue
OS-DCF:diskConfigMANUAL
OS-EXT-AZ:availability_zonenova
OS-EXT-STS:power_state0
OS-EXT-STS:task_statescheduling
OS-EXT-STS:vm_statebuilding
OS-SRV-USG:launched_at-
OS-SRV-USG:terminated_at-
accessIPv4
accessIPv6
adminPassPFuniZWVFTg9
config_drive
created2015-12-02T07:19:18Z
flavorm1.tiny (1)
hostId
ida5f857ec-09d0-4148-a671-daf4a7afaea3
imagecirros-0.3.3-x86_64 (6db9f9c9-4011-4cf5-a12b-dc70423ec0c3)
key_namedemo-key
metadata{}
namedemo-instance1
os-extended-volumes:volumes_attached[]
progress0
security_groupsdefault
statusBUILD
tenant_idd1f7caccc65840b68258997a759da07f
updated2015-12-02T07:19:18Z
user_id812116bcca5b4a01981669fcef09ee11

+--------------------------------------+------------------------------------------------------------+</pre>

  1. 查看实例的状态:
    <pre>$ nova list

相关推荐