启动虚拟机之前需要先做一些前期准备,比如网络和IP地址分配、虚拟机;类型创建等等,具体如下:

14.1网络规划及IP划分

#官网安装文档:https://docs.openstack.org/ocata/zh_CN/install-guide-rdo/launch-instance.html#id1

#(提供者)桥接网络示意图:

 

openstack 执行虚拟机命令 openstack创建虚拟机_IP

 

#桥接网络IP划分,要求虚拟机与物理机必须在同一个相同子网的网络内。

openstack 执行虚拟机命令 openstack创建虚拟机_Openstack_02

14.1.1创建桥接网络

#控制端配置

# openstack network create  --share --external --provider-physical-network internal  --provider-network-type flat internal-net

#openstack network create  --在项目之间共享 --外部网络  --provider-physical-network --配置文件名称 --provider-network-type flat --自定义网络名称

#/etc/neutron/plugins/ml2/ml2_conf.ini #控制端自有

#/etc/neutron/plugins/ml2/linuxbridge_agent.ini #控制端和计算节点共有

14.1.2创建子网

# openstack subnet create --network internal-net   --allocation-pool start=192.168.10.101,end=192.168.10.150   --dns-nameserver 202.106.0.20 --gateway 192.168.10.2   --subnet-range 192.168.10.0/24 internal

# openstack subnet create --network 上一步定义的网络名称   --allocation-pool start=开始IP,end=结束IP   --dns-nameserver DNS --gateway 网关  --subnet-range IP/掩码 自定义名称

openstack 执行虚拟机命令 openstack创建虚拟机_web端_03

14.1.3验证网络

#控制端配置

# openstack network list

openstack 执行虚拟机命令 openstack创建虚拟机_IP_04

# openstack subnet list

openstack 执行虚拟机命令 openstack创建虚拟机_IP_05

# neutron net-list

openstack 执行虚拟机命令 openstack创建虚拟机_IP_06

# neutron subnet-list

openstack 执行虚拟机命令 openstack创建虚拟机_Openstack_07

14.1.4web端验证网络

openstack 执行虚拟机命令 openstack创建虚拟机_web端_08

14.2创建虚拟机类型

#测试cirros镜像

# openstack flavor create --id 0 --vcpus 1 --ram 64 --disk 1 m1.nano

openstack 执行虚拟机命令 openstack创建虚拟机_openstack 执行虚拟机命令_09

14.2.1 web端验证虚拟机类型

openstack 执行虚拟机命令 openstack创建虚拟机_openstack 执行虚拟机命令_10

14.3实现免密码登陆

#控制端配置

14.3.1生成 key

# ssh-keygen -q -N ""

# ll /root/.ssh/

total 12

-rw------- 1 root root 1679 Sep 13 19:08 id_rsa

-rw-r--r-- 1 root root  410 Sep 13 19:08 id_rsa.pub

14.3.2添加公钥

# openstack keypair create --public-key ~/.ssh/id_rsa.pub mykey

openstack 执行虚拟机命令 openstack创建虚拟机_Openstack_11

14.3.3验证key

# openstack keypair list

openstack 执行虚拟机命令 openstack创建虚拟机_Openstack_12

14.3.4web端验证公钥

openstack 执行虚拟机命令 openstack创建虚拟机_IP_13

14.4安全组

#控制端配置

14.4.1创建安全组

# openstack security group rule create --proto icmp default

openstack 执行虚拟机命令 openstack创建虚拟机_IP_14

14.4.2添加规则

#  openstack security group rule create --proto tcp --dst-port 22 default

14.4.3web端验证

openstack 执行虚拟机命令 openstack创建虚拟机_Openstack_15

14.4.4最终验证

#列出虚拟机类型:

# openstack flavor list

openstack 执行虚拟机命令 openstack创建虚拟机_IP_16

#列出可用镜像:

# openstack image list

openstack 执行虚拟机命令 openstack创建虚拟机_ide_17

#列出可用网络:

openstack 执行虚拟机命令 openstack创建虚拟机_web端_18

#列出可用安全组:

# openstack security group list

openstack 执行虚拟机命令 openstack创建虚拟机_web端_19

注:确认以上步骤全部可用执行成功并正常输出,方可进行下一步

14.5命令行启动虚拟机

控制端配置

14.5.1创建虚拟机

# openstack server create --flavor m1.nano --image cirros   --nic net-id=e13a93ee-6987-480c-b802-1a3f8f042cd5  --security-group default   --key-name mykey  test-vm

# openstack server create --flavor 虚拟机类型 --image 镜像名称   --nic net-id=network-ID  --security-group 安全组名   --key-name key名称  虚拟机名称

openstack 执行虚拟机命令 openstack创建虚拟机_ide_20

14.5.2查看虚拟机

# openstack server list

openstack 执行虚拟机命令 openstack创建虚拟机_openstack 执行虚拟机命令_21

14.5.3查看虚拟机访问地址

# openstack console url show  test-vm

# openstack  console  url  show  虚拟机名称

openstack 执行虚拟机命令 openstack创建虚拟机_openstack 执行虚拟机命令_22

14.5.4使用浏览器访问虚拟机URL

#无法正常启动

 

openstack 执行虚拟机命令 openstack创建虚拟机_ide_23

 

14.5.5报错信息如下

#查看计算节点报错信息如下:

openstack 执行虚拟机命令 openstack创建虚拟机_ide_24

14.5.6解决方案

核实配置无误后,将计算节点操作系统更换为centos 7.2.1511,然后重新部署openstack 计算节点nova和neutron服务后正常(即便将centos 7.2.1511正常的配置文件复制到7.3.1611的系统也无法正常启动云主机,因此目前ocata版本与Centos 7.3还存在兼容性问题)。

14.5.7正常虚拟机管理界面

openstack 执行虚拟机命令 openstack创建虚拟机_ide_25

14.6图形界面创建虚拟机

14.6.1点击创建实例

openstack 执行虚拟机命令 openstack创建虚拟机_web端_26

14.6.2定义名称

openstack 执行虚拟机命令 openstack创建虚拟机_web端_27

14.6.3选择镜像

openstack 执行虚拟机命令 openstack创建虚拟机_IP_28

14.6.4定义虚拟机类型

openstack 执行虚拟机命令 openstack创建虚拟机_IP_29

14.6.5选择网络

openstack 执行虚拟机命令 openstack创建虚拟机_IP_30

14.6.6选择安全组

openstack 执行虚拟机命令 openstack创建虚拟机_IP_31

14.6.7启动虚拟机

openstack 执行虚拟机命令 openstack创建虚拟机_ide_32

14.6.8创建过程中

openstack 执行虚拟机命令 openstack创建虚拟机_Openstack_33

14.6.9验证虚拟机运行正常

openstack 执行虚拟机命令 openstack创建虚拟机_ide_34