Option 1: Provider 网络
在
controller node
控制节点安装、配置网络组件
安装组件
$ yum install openstack-neutron openstack-neutron-ml2 \
openstack-neutron-linuxbridge ebtables
配置服务器组件
网络服务器组件配置包括数据库、认证机制、消息队列、网络拓扑变更提醒、以及插件
默认的配置文件因发行版本不同而变化,你可能需要添加下列条目或选项,而不是修改现有的。
- 编辑
/etc/neutron/neutron.conf
,完成如下内容:
[database]
...
connection = mysql+pymysql://neutron:123456@controller/neutron
#注释或删除[database]条目中其他的connection
[DEFAULT]
...
core_plugin = ml2 #使用modular layer 2(ML2)插件
service_plugins = #禁用其他插件
transport_url = rabbit://openstack:123456@controller #使用rabbitMQ
auth_strategy = keystone #使用keystone认证
notify_nova_on_port_status_changes = True
notify_nova_on_port_data_changes = True
[keystone_authtoken]
...
auth_uri = http://controller:5000
auth_rul = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = neutron
password = 123456
#注释或删除[keystone_authtoken]条目中其他选项
[nova]
...
auth_url = http://controller:35357
auth_type = password
project_domain_name = Default
user_domain_name = Default
region_name = RegionOne
project_name = service
username = nova
password = 123456
[oslo_concurrency]
...
lock_path = /var/lib/neutron/tmp
配置 Modular Layer 2 (ML2)插件
ML2插件使用Linux bridge机制建立layer-2虚拟网络架构供虚拟机使用
- 编辑
/etc/neutron/plugins/ml2/ml2_conf.ini
,添加如下内容:
[ml2]
...
type_drivers = flat,vlan #启用flat和vlan网络
tenant_network_types = #禁用self-service网络
mechanism_drivers = linuxbridge #启用linux bridge
extension_drivers = port_security #启用port安全扩展驱动
[ml2_type_flat]
...
flat_networks = provider #配置provider虚拟网络为flat
[securitygroup]
...
enable_ipset = True #启用ipset增加安全组规则的效率
配置Linux bridge代理
Linux bridge代理会建立layer-2(bridge和swiching)
虚拟网络架构,并处理安全组
- 编辑
/etc/neutron/plugins/ml2/linuxbridge_agent.ini
[linux_bridge]
physical_interface_mappings = provider:enp0s8
[vxlan]
enable_vxlan = False
[securitygroup]
enable_security_group = True #启用安全组
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
#配置Linuxbridge iptables firewall driver
配置 DHCP
- 编辑`/etc/neutron/dhcp_agent.ini
[DEFAULT]
...
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
enable_isolated_metadata = True