本节描述传统网络Legacy Networking(Nova Network)的配置
1、配置控制节点
传统网络主要包括计算节点,然而,你必须先在控制节点上配置传统网络。
a、编辑/etc/nova/nova.conf文件,完成如下工作
在[DEFAULT]区配置网络与安全组
[DEFAULT] ... network_api_class = nova.network.api.API security_group_api = nova
b、重启计算服务
$ systemctl restart nova-api.service nova-scheduler.service nova-conductor.service
2、配置计算节点
这个部分一个简单扁平网络的部署,使用DHCP给实例分配IP地址。如果你的环境中包含多个计算节点,multi-host 特性通过扩张网络功能的方式提供冗余。
编辑/etc/nova/nova.conf,完成如下步骤:
a、在[DEFAULT]区,配置网络参数
[DEFAULT] ... network_api_class = nova.network.api.API security_group_api = nova firewall_driver = nova.virt.libvirt.firewall.IptablesFirewallDriver network_manager = nova.network.manager.FlatDHCPManager network_size = 254 allow_same_net_traffic = False multi_host = True send_arp_for_ha = True share_dhcp_address = True force_dhcp_release = True flat_network_bridge = br100 flat_interface = INTERFACE_NAME public_interface = INTERFACE_NAME
其中INTERFACE_NAME为外部网络的实际端口,如eth0 或者enp224。你也可以将flat_interface与public_interface两个参数留空,表示多个端口。
b、重启服务
systemctl restart nova-network.service nova-metadata-api.service
若没有上述启动脚本,请自行到https://github.com/melon-li/openstack/tree/master/etc/init.d下载
3、创建网络
在你开始创建实例前,你必须创建一个虚拟网络以给虚拟机提供网络连接,传统网络通常提供实例的互联网访问,你可以使用扁平的IP地址从互联网访问某个实例。
使用传统网络,虚拟实例与计算节点的外部物理端口处于同一个子网。你应该确保你的虚拟主机不会因为IP地址冲突而干扰其他外网设备。
a、在控制节点加载admin-openrc.sh,设置全局变量
$ source admin-openrc.sh
b、创建网络
$ nova network-create demo-net --bridge br100 --multi-host T \ --fixed-range-v4 NETWORK_CIDR
将NETWORK_CIDR替换为你的子网
如:
nova network-create demo-net --bridge br100 --multi-host T \ --fixed-range-v4 203.0.113.24/29
上面命令表示使用203.0.113.0/24子网中的203.0.113.24 – 203.0.113.31网段
c、验证网络
nova net-list +--------------------------------------+----------+------------------+ | ID | Label | CIDR | +--------------------------------------+----------+------------------+ | 84b34a65-a762-44d6-8b5e-3b461a53f513 | demo-net | 203.0.113.24/29 | +--------------------------------------+----------+------------------+