CentOS7安装OpenStack-08.创建一个虚拟机实例

8.0.neutron的两种虚拟网络

1)Provider network(提供者网络)

# 网络结构图参考:https://docs.openstack.org/install-guide/launch-instance-networks-provider.html

简单理解就是与现有物理网络桥接起来的网络,网络结构图如下,

在这种网络中,集群中的各个节点通过物理网络连接,节点内部通过L2(provider网桥/交换机)与物理网络进行连接,这个网络可以包括为实例提供IP地址的DHCP服务器。

集群中的实例(虚拟机)通过Provider网络为其分配映射的tap端口与桥接网卡传输数据从而进行内外部通信,类似kvm虚拟机采用桥接模式使得网络结构,网络结构示意图如下:

2)Self-service network(自服务网络)

# 网络结构图参考:https://docs.openstack.org/install-guide/launch-instance-networks-selfservice.html

类似阿里云的内部私有网络,可以让使用者自己构建一个内部使用对外隔离的网络,结构如下图:

是在provider网络上的扩展,通过self-service网桥使用vxlan技术创建一个独立的网络,这个独立的网络也可以通过vxlan tunnels连接到物理网络进行数据传输

网络连接拓扑图如下:

8.1.创建provider提供者网络

1)在控制节点上,创建网络接口

# 加载 admin 凭证来获取管理员能执行的命令访问权限

cd /server/tools/
source keystone-admin-pass.sh
openstack network create --share --external --provider-physical-network provider  --provider-network-type flat provider
openstack network list

# 附:旧版的命令(在这个版本中会少创建一些东西),可以参考

neutron net-create --shared --provider:physical_network [自定义的物理网卡的名称] --provider:network_type flat(单一扁平网络) [创建的虚拟网络名称]
neutron net-create --shared --provider:physical_network provider  --provider:network_type flat provider

2)检查网络配置

# 确认ml2_conf.ini以下配置选项

# 上面的命令--provider-network-type flat网络名称provider与此对应

vim /etc/neutron/plugins/ml2/ml2_conf.ini
-----------------------------
[ml2_type_flat]
flat_networks = provider
-----------------------------

# 确认linuxbridge_agent.ini以下配置选项

# 上面的命令--provider-physical-network provider于此对应,网卡注意要于此对应,控制节点的网卡名称

vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini
-----------------------------
[linux_bridge]
physical_interface_mappings = provider:eno16777736
-----------------------------

3)创建provider子网

openstack subnet create --network provider --no-dhcp --allocation-pool start=192.168.182.210,end=192.168.182.220 --dns-nameserver 4.4.4.4 --gateway 192.168.182.2 --subnet-range 192.168.182.0/24 provider-subnet01
# openstack subnet create --network provider --dhcp --subnet-range 192.168.2.0/24 provider-subnet02
openstack subnet list

8.2、创建m1.nano规格的主机

#  默认的最小规格的主机需要512 MB内存。对于环境中计算节点内存不足4 GB的,我们推荐创建只需要64 MB的``m1.nano``规格的主机。若单纯为了测试的目的,请使用``m1.nano``规格的主机来加载CirrOS镜像

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

8.3、生成一个键值对

1)导入租户``demo``的凭证

cd /server/tools && source keystone-admin-pass.sh

2)生成和添加秘钥对

ssh-keygen -q -N ""
openstack keypair create --public-key ~/.ssh/id_rsa.pub mykey

3)验证公钥的添加

openstack keypair list

8.4、增加安全组规则

# 默认情况下, ``default``安全组适用于所有实例并且包括拒绝远程访问实例的防火墙规则。对诸如CirrOS这样的Linux镜像,我们推荐至少允许ICMP (ping) 和安全shell(SSH)规则。

# 添加规则到 default 安全组

1)允许 ICMP (ping)

openstack security group rule create --proto icmp default

2)允许安全 shell (SSH) 的访问

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

8.5、启动一个实例(在公有网络上创建实例

1)查看配置

openstack flavor list
openstack image list
openstack network list
openstack security group list

2)创建实例

openstack server create --flavor m1.nano --image cirros \
  --nic net-id=PROVIDER_NET_ID --security-group default \
  --key-name mykey provider-instance

3)检查实例的状态

openstack server list

 

猜你喜欢

转载自www.cnblogs.com/liugp/p/12484120.html