一、实验目的:

1、理解neutron服务在OpenStack中的作用

2、掌握在控制节点上安装配置neutron的方法和步骤

3、掌握在计算节点上安装与配置neutron的方法和步骤

二、实验步骤:

准备工作:

首先分别在控制节点和计算节点上各添加一块网卡,模式为网桥连接

OpenStack neutron对接ovn openstack neutron配置_linux

 

 

 查看网卡信息  ens37就是新添加的网卡

OpenStack neutron对接ovn openstack neutron配置_配置文件_02

 

 配置ens37  将uuid修改为上边查看到的uuid  name也要保持一致不然会报错

OpenStack neutron对接ovn openstack neutron配置_linux_03

 

 重启网卡

计算节点同理。

 

 

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';

创建数据库:

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_04

 

 

授予访问权限:

 

OpenStack neutron对接ovn openstack neutron配置_元数据_05

 

 

2、在keystone为neutron创建用户、角色、服务和API接口

  运行环境变量:

  #. admin-openrc

  创建``neutron``用户:

  #openstack user create --domain default --password-prompt neutron

 

OpenStack neutron对接ovn openstack neutron配置_linux_06

  #openstack role add --project service --user neutron admin

 

OpenStack neutron对接ovn openstack neutron配置_linux_07

  添加``admin`` 角色到``neutron`` 用户:

  #openstack service create --name neutron \ --description "OpenStack Networking" network

创建network服务

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_08

  创建网络服务API端点

#openstack endpoint create --region RegionOne \

network public http://controller:9696

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_09

  #openstack endpoint create --region RegionOne \

 network internal http://controller:9696

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_10

#openstack endpoint create --region RegionOne \

network admin http://controller:9696

OpenStack neutron对接ovn openstack neutron配置_linux_11

3、安装neutron服务,参考命令

yum install openstack-neutron openstack-neutron-ml2 \

openstack-neutron-linuxbridge ebtables

4、配置neutron相关配置文件

在[database]部分,配置数据库入口:

 

OpenStack neutron对接ovn openstack neutron配置_linux_12

 

 

在[DEFAULT]部分,启用模块化第2层(ML2)插件,并弃用额外的插件:

 

OpenStack neutron对接ovn openstack neutron配置_元数据_13

 

 

[DEFAULT]部分,配置RabbitMQ 消息队列入口

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_14

 

 

在 [DEFAULT] 和 [keystone_authtoken]部分,配置身份认证服务入口:

 

OpenStack neutron对接ovn openstack neutron配置_linux_15

 

 

OpenStack neutron对接ovn openstack neutron配置_linux_16

在[DEFAULT] 和 [nova] 部分,配置网络以通知Compute网络拓扑的更改:

 

OpenStack neutron对接ovn openstack neutron配置_linux_17

 

 

OpenStack neutron对接ovn openstack neutron配置_linux_18

在[oslo_concurrency]部分,配置lock path:

 

 

OpenStack neutron对接ovn openstack neutron配置_元数据_19

编辑配置文件/etc/neutron/plugins/ml2/ml2_conf.ini

在[ml2]部分,启用flat, VLAN 网络:

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_20

 

 

舍弃自身服务

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_21

 

 

在[ml2]部分,启用linux网桥机制:

mechanism_drivers = linuxbridge

 

OpenStack neutron对接ovn openstack neutron配置_元数据_22

 

 

在[ml2]中,启用端口安全扩展驱动程序

 

OpenStack neutron对接ovn openstack neutron配置_linux_23

 

 

[ml2_type_flat]部分,将提供商虚拟网络配置为扁平网络:

 

OpenStack neutron对接ovn openstack neutron配置_linux_24

 

 

在[securitygroup]部分,启用ipset以提高安全组规则的效率

 

OpenStack neutron对接ovn openstack neutron配置_linux_25

 

 

编辑/etc/neutron/plugins/ml2/linuxbridge_agent.ini文件

在[linux_bridge]部分,映射提供商虚拟网络到提供商物理网络接口:

 

OpenStack neutron对接ovn openstack neutron配置_linux_26

 

 

在vxlan部分,弃用VXLAN覆盖网络

 

OpenStack neutron对接ovn openstack neutron配置_元数据_27

 

 

在该[securitygroup]部分中,启用安全组并配置Linux网桥iptables防火墙驱动程序:

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_28

 

 

通过验证下列所有sysctl值都设置为1,确保Linux操作系统内核支持网桥过滤器 (编辑/etc/sysctl.conf文件,添加如下两行 )

 

OpenStack neutron对接ovn openstack neutron配置_元数据_29

 

 

加载br netfilter内核模块,以启用网络网桥的支持

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_30

 

 

配置DHCP代理

编辑/etc/neutron/dhcp_agent.ini文件,在本[DEFAULT]部分,配置Linux桥接口驱动程序Dnsmasq DHCP驱动程序,并启用隔离的元数据,以便提供商网络上的实例可以通过网络访问元数据:

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_31

 

 

配置元数据代理

元数据代理提供配置信息,例如实例的凭据。

编辑/etc/neutron/metadata_agent.ini文件并完成以下操作,在该[DEFAULT]部分中,配置元数据主机和共享机密:

 

OpenStack neutron对接ovn openstack neutron配置_元数据_32

 

 

配置Compute服务以使用Networking服务

编辑/etc/nova/nova.conf文件并执行以下操作

在该[neutron]部分中,配置访问参数,启用元数据代理,并配置机密:

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_33

 

 

最终确定安装

网络服务初始化脚本需要一个软链接/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

 

OpenStack neutron对接ovn openstack neutron配置_元数据_34

 

 

出现确定说明填充成功:

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_35

 

 

重启计算服务:

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_36

 

 

开启Linxu网桥代理并配置开机自启动

 

OpenStack neutron对接ovn openstack neutron配置_元数据_37

 

 

OpenStack neutron对接ovn openstack neutron配置_linux_38

 

 

 

5、在计算节点上安装neutron服务

#yum install openstack-neutron-linuxbridge ebtables ipset

 

安装所需组件:

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_39

6、修改技术节点上相关配置文件

配置通用组件

网络通用组件配置包括认证机制,消息队列、插件

1、配置 /etc/neutron/neutron.conf 文件完成以下部分:

[database]部分,注释掉任何connection部分,因为compute节点不直接和数据库进行连接

[default]部分,配置消息队列连接:

 

OpenStack neutron对接ovn openstack neutron配置_元数据_40

 

 

填控制节点的名称

在[default]和[keystone_authtoken]部分,配置身份认证连接:

 

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_41

 

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_42

 

 

在 [oslo_concurrency] 部分,配置lock path:

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_43

 

 

配置网络选项

这里同样选择第YI种网络体系架构

1、配置Linux 网桥代理:

/etc/neutron/plugins/ml2/linuxbridge_agent.ini配置文件,并完成以下部分:

[linux_bridge]部分,映射提供商虚拟网络到提供商物理网络接口:( 网卡接口使用桥接网络的网卡的接口名称 )

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_44

 

 

② 在[vxlan]部分,弃用VXLAN覆盖性网络:

 

OpenStack neutron对接ovn openstack neutron配置_linux_45

 

 

③ 在[securitygroup]部分,启用安全组并配置Linxu网桥防火墙驱动:

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_46

 

 

④ 通过验证下列所有sysctl值都设置为1,确保Linux操作系统内核支持网桥过滤器 (编辑/etc/sysctl.conf文件,添加如下两行 )

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_47

 

 

⑤加载br netfilter内核模块,以启用网络网桥的支持

 

OpenStack neutron对接ovn openstack neutron配置_元数据_48

 

 

配置Compute服务使用Networking服务

1、配置/etc/nova/nova.conf文件并完成以下部分:

neutron部分,配置访问参数:

 

OpenStack neutron对接ovn openstack neutron配置_linux_49

 

 

重启计算服务:

# systemctl restart openstack-nova-compute

 

OpenStack neutron对接ovn openstack neutron配置_linux_50

 

 

开启Linxu网桥代理并配置开机自启动

# systemctl enable neutron-linuxbridge-agent.service

# systemctl start neutron-linuxbridge-agent.service

 

OpenStack neutron对接ovn openstack neutron配置_linux_51

7、验证

运行环境变量:

  #. admin-openrc

#openstack extension list –network

列出已加载的扩展,以验证neutron-server进程是否成功启动:

 

OpenStack neutron对接ovn openstack neutron配置_linux_52

 

 

#openstack network agent list

 

OpenStack neutron对接ovn openstack neutron配置_配置文件_53

 如果看不到计算节点