OpenStack newton版安装教程(5)——通过命令行创建子网与虚拟机

TangLu 未命名 2018-08-14 15514 0

在keystone、glance、nova、neutron这些组件都安装完成后就可以创建虚拟机了,创建虚拟主机可以通过命令行创建,也可以通过图形化组件(horizon)来完成。为了理解创建虚拟机的过程与原理,先看看命令行下如何创建主机(强调一次,这里所有的操作都是可以通过horizon实现web界面操作):

一、创建网络与虚拟主机
1、在控制节点上加载环境变量

. admin-openrc

2、首先要为虚拟机创建一个网络,这里使用了提供者网络的方式:
openstack network create --share --provider-physical-network provider --provider-network-type flat provider
--share:共享网络
--provider-physical-network:将提供者网络“provider”绑定在物理网卡上
--provider-network-type:提供者网络“provider”的网络类型


这个命令所配置的选项其实是和配置neutron时的两个配置文件内容一致

ml2_conf.ini:

[ml2_type_flat] 
flat_networks  =  provider


linuxbridge_agent.ini:

[linux_bridge] 
physical_interface_mappings  =  provider:eth1

3、验证网络,这个时候subnet一栏应该是空的,因为子网还没有创建
neutron net-list  


4、在网络上创建子网

openstack subnet create --network provider \
--allocation-pool start=203.0.113.101,end=203.0.113.250 \
--dns-nameserver 8.8.8.8 --gateway 203.0.113.1 \
--subnet-range 203.0.113.0/24 provider


5、再次验证网络和子网

neutron net-list
neutron subnet-list


6、创建虚拟机之前需要先定义好虚拟机型号与配置,也叫做flavor。比如定义一个a1型号,配置是1核CPU、1G内存、100G硬盘,然后在创建虚拟机的时候选择A型号主机即可。

openstack flavor create --id 0 --vcpus 1 --ram 1024 --disk 100 a1.mini
openstack flavor list  #查看实例类型


7、生成密钥对,这个和在阿里云创建主机的时候使用密钥对登录是一个作用,取代密码登录。

source admin-openrc
ssh-keygen -q -N ""
openstack keypair create --public-key ~/.ssh/id_rsa.pub mykey  #该操作会把公钥自动上传到openstack中并命名为mykey


8、验证密钥对是否上传成功

openstack keypair list


9、添加两条必需的规则(ping和ssh)到default安全组

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


二、启动虚拟机实例

1、要启动实例的话需要指定flavor、网络、安全组、实例名等信息,所以需要先查看下

openstack flavor list  #查看已有的flavor
openstack image list  #查看已有镜像
openstack network list  #查看已有网络
openstack security group list  #查看已有安全组


2、创建实例

openstack server create --flavor a1.mini --image cirros \
--security-group default \
--key-name mykey provider-instance


3、验证实例,也可以在计算节点上执行virsh --list查看是否创建成功

openstack server list


评论