Neutron网络服务组件通过提供API使用户可以定义网络连接类型和IP网络地址、基于三层路由转发和NAT的负载均衡、防火墙和IPSec VPN等,提供了多种网络技术,丰富了网络功能,驱动了Openstack云计算网络的建设。
一,安装和配置控制节点
(1)创建数据库
1,在操作系统终端连接数据库
2,创建Neutron数据库
3,Neutron数据库的访问权限设置
4,退出数据库
(2)加载admin用户的环境变量
(3)创建认证服务凭据
1,创建Neutron用户
2,将admin role赋予glance user和service project
3,创建Neutron网络服务的service entity
4,创建Neutron网络服务组件的API endpoint
二,配置Neutron网络服务组件
下面配置的架构支持自服务网络,demo用户和有权限的用户都可以管理自服务网络,在自服务网络和Provider网络间路由信息,进行通信,同时,分配给虚拟机实例的Float IP通过自服务网络可以访问外部网络,以下操作均在控制节点上实现
(1)安装Networking组件
(2)编辑文件/etc/neutron/neutron.conf,完成以下操作
1,配置数据库连接[database]...connection
2,在[DEFAULT]项,启用Layer 2(ML 2)plug-in,路由服务和IP地址重叠功能
3,在[DEFAULT]和[oslo_messaging_rabbit],配置RabbitMQ消息队列连接
4,在[DEFAULT]和[keystone_authtoken]项,配置keystone身份认证服务组件访问
5,在[DEFAULT]和[nova]项,配置Neutron网络服务通知Nova计算服务管理网络拓扑的改变
6,打开日志记录功能,方便问题跟踪和解决
(3)配置layer 2(ML 2)plug-in模块
ML 2plug-in使用bridge机制为虚拟机实例桥接和交换网络信息
1,编辑文件/etc/neutron/plugins/ml2/ml2_conf.ini,在[ml2]选项,完成以下操作
[ml2]
....
type_drivers=flat,vlan,vxlan
tenant_network_types=vxlan
mechanism_drivers=linuxbridge,12population
2,编辑文件/etc/neutron/plugins/ml2/ml2_conf.ini,在[ml2_type_flat]选项,完成以下操作
[ml2_type_flat]
....
flat_networks=public
3,编辑文件/etc/neutron/plugins/ml2/ml2_conf.ini,在[ml2_type_vxlan]选项,完成以下操作
[ml2_type_vxlan
....
vni_ranges=1:1000
4,编辑文件/etc/neutron/plugins/ml2/ml2_conf.ini,在[securitygroup]选项,启用ipset提高Security Group规则的效率
[securitygroup]
....
enable_ipset=True
(4)配置bridge agent
bridge agent为虚拟机实例简历了Layer 2虚拟网络,提供了实现Private Network所需的VXLAN和处理Security Group
1,编辑etc/neutron/plugins/ml2/linuxbridge_agent.ini,在[linux_bridge]项,将Public Network虚拟网络端口映射到物理网络端口
2,编辑etc/neutron/plugins/ml2/linuxbridge_agent.ini,在[vxlan]项,启用VXLAN功能和Layer2 population,配置、处理Overlay Network的物理网络端口的IP地址
3,编辑etc/neutron/plugins/ml2/linuxbridge_agent.ini,在[agent]项,启用ARP欺骗保护
4,编辑etc/neutron/plugins/ml2/linuxbridge_agent.ini,在[securitygroup]项,启用Security Group和配置iptables firewall driver
(5)配置Layer 3 agent
Layer 3位虚拟网络提供了路由和网络地址转化(NAT)的服务
1,编辑/etc/neutron/l3_agent.ini,在[DEFAULT]项,配置bridge interface driver和external network bridge。
2,在[DAFAULT]打开日志记录功能,方便问题跟踪和解决verbose=True
(6)配置DHCP agent
DHCP为虚拟网络提供了DHCP服务,也可以说为虚拟机实例提供了IP地址
1,编辑/etc/neutrondhcp_agent.ini,在[DEFAULT]项,配置bridge interface driver和Dnsmasq DHCP drver,启用meta分离以使虚拟机实例访问互联网上的metadata。
2,在[DAFAULT]打开日志记录功能,方便问题跟踪和解决verbose=True
3,编辑/etc/neutron/dhcp_agent.ini,在[DEFAULT]项,定义Dnsmasq配置文件的路径
[DEFAULT]
dnsmasq_config_file=/etc/dnsmasq-neutron.conf
4,创建并编辑
/etc/neutron/dnsmasq-neutron.conf文件,设置MTU值得大小
dhcp-option-force=26,1450
三,配置metadata agent
metadata agent对虚拟机实例提供一些配置信息,如凭据credential
编辑/etc/neutron/meta_agent.conf文件,完成以下操作
1,在[DEFAULT]项,配置Neutron用户的访问
2,在[DEFAULT]项,配置metadata相关信息
3,打开日志记录功能,方便问题跟踪和解决
四,配置计算服务组件
编辑/etc/nova/nova.conf文件,完成以下步骤,在[neutron]项,配置Neutron访问参数,配置metadata相关信息
二,安装和配置计算节点
(1)安装软件包
(2)配置通用组件
1,编辑/etc/neutron/neutron.conf文件,在[database]项,注释掉任何数据库访问连接配置,不允许计算节点s直接访问数据库,必须通过nova-conductor module简洁访问
2,编编辑/etc/neutron/neutron.conf文件,在[DEFAULT]和[oslo_messaging_rabbit],配置RabbitMQ消息队列连接
3,编编辑/etc/neutron/neutron.conf文件,在[DEFAULT]和[keystone_authtoken]项,配置keystone身份认证服务组件访问
4,打开日志记录功能,方便问题跟踪和解决
bridge agent为虚拟机实例简历了Layer 2虚拟网络,提供了实现Private Network所需的VXLAN和处理Security Group
(3)编辑etc/neutron/plugins/ml2/linuxbridge_agent.ini,在[linux_bridge]项,将Public Network虚拟网络端口映射到物理网络端口
(4),编辑etc/neutron/plugins/ml2/linuxbridge_agent.ini,在[vxlan]项,启用VXLAN功能和Layer2 population,配置、处理Overlay Network的物理网络端口的IP地址
(5)编辑etc/neutron/plugins/ml2/linuxbridge_agent.ini,在[agent]项,启用ARP欺骗保护
(6)编辑etc/neutron/plugins/ml2/linuxbridge_agent.ini,在[securitygroup]项,启用Security Group和配置iptables firewall driver
(7)编辑/etc/nova/nova.conf文件,完成以下步骤,在[neutron]项,配置Neutron访问参数,配置metadata相关信息