一、实验目的:
1、理解neutron服务在OpenStack中的作用
2、掌握在控制节点上安装配置neutron的方法和步骤
3、掌握在计算节点上安装与配置neutron的方法和步骤
二、实验步骤:
准备工作:
首先分别在控制节点和计算节点上各添加一块网卡,模式为网桥连接
查看网卡信息 ens37就是新添加的网卡
配置ens37 将uuid修改为上边查看到的uuid name也要保持一致不然会报错
重启网卡
计算节点同理。
1、在控制节点上为neutron创建数据库,并创建用户授权,参考命令
创建neutron数据库
#mysql -u root -p
#CREATE DATABASE neutron;
对``neutron`` 数据库授予合适的访问权限,使用合适的密码替换``NEUTRON_DBPASS``:
#GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' \
IDENTIFIED BY 'NEUTRON_DBPASS';
#GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' \
IDENTIFIED BY 'NEUTRON_DBPASS';
创建数据库:
授予访问权限:
2、在keystone为neutron创建用户、角色、服务和API接口
运行环境变量:
#. admin-openrc
创建``neutron``用户:
#openstack user create --domain default --password-prompt neutron
#openstack role add --project service --user neutron admin
添加``admin`` 角色到``neutron`` 用户:
#openstack service create --name neutron \ --description "OpenStack Networking" network
创建network服务
创建网络服务API端点
#openstack endpoint create --region RegionOne \
network public http://controller:9696
#openstack endpoint create --region RegionOne \
network internal http://controller:9696
#openstack endpoint create --region RegionOne \
network admin http://controller:9696
3、安装neutron服务,参考命令
yum install openstack-neutron openstack-neutron-ml2 \
openstack-neutron-linuxbridge ebtables
4、配置neutron相关配置文件
在[database]部分,配置数据库入口:
在[DEFAULT]部分,启用模块化第2层(ML2)插件,并弃用额外的插件:
[DEFAULT]部分,配置RabbitMQ 消息队列入口
在 [DEFAULT] 和 [keystone_authtoken]部分,配置身份认证服务入口:
在[DEFAULT] 和 [nova] 部分,配置网络以通知Compute网络拓扑的更改:
在[oslo_concurrency]部分,配置lock path:
编辑配置文件/etc/neutron/plugins/ml2/ml2_conf.ini
在[ml2]部分,启用flat, VLAN 网络:
舍弃自身服务
在[ml2]部分,启用linux网桥机制:
mechanism_drivers = linuxbridge
在[ml2]中,启用端口安全扩展驱动程序
[ml2_type_flat]部分,将提供商虚拟网络配置为扁平网络:
在[securitygroup]部分,启用ipset以提高安全组规则的效率
编辑/etc/neutron/plugins/ml2/linuxbridge_agent.ini文件
在[linux_bridge]部分,映射提供商虚拟网络到提供商物理网络接口:
在vxlan部分,弃用VXLAN覆盖网络
在该[securitygroup]部分中,启用安全组并配置Linux网桥iptables防火墙驱动程序:
通过验证下列所有sysctl值都设置为1,确保Linux操作系统内核支持网桥过滤器 (编辑/etc/sysctl.conf文件,添加如下两行 )
加载br netfilter内核模块,以启用网络网桥的支持
配置DHCP代理
编辑/etc/neutron/dhcp_agent.ini文件,在本[DEFAULT]部分,配置Linux桥接口驱动程序Dnsmasq DHCP驱动程序,并启用隔离的元数据,以便提供商网络上的实例可以通过网络访问元数据:
配置元数据代理
元数据代理提供配置信息,例如实例的凭据。
编辑/etc/neutron/metadata_agent.ini文件并完成以下操作,在该[DEFAULT]部分中,配置元数据主机和共享机密:
配置Compute服务以使用Networking服务
编辑/etc/nova/nova.conf文件并执行以下操作
在该[neutron]部分中,配置访问参数,启用元数据代理,并配置机密:
最终确定安装
网络服务初始化脚本需要一个软链接/etc/neutron/plugin.ini指向ML2插件的配置文件/etc/neutron/plugins/ml2/ml2_conf.ini的。使用以下命令创建它:
ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini
出现确定说明填充成功:
重启计算服务:
开启Linxu网桥代理并配置开机自启动
5、在计算节点上安装neutron服务
#yum install openstack-neutron-linuxbridge ebtables ipset
安装所需组件:
6、修改技术节点上相关配置文件
配置通用组件
网络通用组件配置包括认证机制,消息队列、插件
1、配置 /etc/neutron/neutron.conf 文件完成以下部分:
[database]部分,注释掉任何connection部分,因为compute节点不直接和数据库进行连接
[default]部分,配置消息队列连接:
填控制节点的名称
在[default]和[keystone_authtoken]部分,配置身份认证连接:
在 [oslo_concurrency] 部分,配置lock path:
配置网络选项
这里同样选择第YI种网络体系架构
1、配置Linux 网桥代理:
/etc/neutron/plugins/ml2/linuxbridge_agent.ini配置文件,并完成以下部分:
[linux_bridge]部分,映射提供商虚拟网络到提供商物理网络接口:( 网卡接口使用桥接网络的网卡的接口名称 )
② 在[vxlan]部分,弃用VXLAN覆盖性网络:
③ 在[securitygroup]部分,启用安全组并配置Linxu网桥防火墙驱动:
④ 通过验证下列所有sysctl值都设置为1,确保Linux操作系统内核支持网桥过滤器 (编辑/etc/sysctl.conf文件,添加如下两行 )
⑤加载br netfilter内核模块,以启用网络网桥的支持
配置Compute服务使用Networking服务
1、配置/etc/nova/nova.conf文件并完成以下部分:
neutron部分,配置访问参数:
重启计算服务:
# systemctl restart openstack-nova-compute
开启Linxu网桥代理并配置开机自启动
# systemctl enable neutron-linuxbridge-agent.service
# systemctl start neutron-linuxbridge-agent.service
7、验证
运行环境变量:
#. admin-openrc
#openstack extension list –network
列出已加载的扩展,以验证neutron-server进程是否成功启动:
#openstack network agent list
如果看不到计算节点