OpenStack-Neutron_网络服务组件

Neutron-简介

1、官网地址
https://docs.openstack.org/neutron/rocky/
2、图文简介

alt text

OpenStack Neutron 是 OpenStack 的核心组件之一,负责网络服务(Networking Service)。它提供了网络连接的抽象层,允许用户创建和管理虚拟网络、子网、路由器、负载均衡器、防火墙等网络资源。Neutron 的设计目标是提供灵活、可扩展的网络功能,支持多租户环境和复杂的网络拓扑。
3、Neutron-核心功能
1、虚拟网络管理:
  支持创建和管理虚拟网络(Network)、子网(Subnet)和端口(Port)。

2、路由与 NAT:
  提供虚拟路由器(Router)功能,支持子网之间的路由和网络地址转换(NAT)。

3、安全组与防火墙:
  提供网络安全组(Security Groups)和防火墙(Firewall)功能,确保虚拟机的网络安全。

4、负载均衡:
  支持负载均衡器(Load Balancer)的创建和管理,用于分发流量。

5、VPN 与 VPNaaS:
  提供虚拟专用网络(VPN)功能,支持站点到站点的 VPN 连接。

6、多插件支持:
  支持多种网络插件和驱动,如 Open vSwitch、Linux Bridge、ML2 等。

7、API 支持:
  提供 RESTful API,方便与其他 OpenStack 服务集成。
4、Neutron-核心概念
1、Network(网络):
  虚拟网络的抽象,可以是私有网络或公共网络。

2、Subnet(子网):
  网络的 IP 地址范围,用于分配 IP 地址给虚拟机。

3、Port(端口):
  虚拟机的网络接口,连接到虚拟网络。

4、Router(路由器):
  用于连接不同子网的虚拟路由器,支持静态路由和 NAT。

5、Security Group(安全组):
  定义虚拟机的网络访问规则,类似于防火墙。

6、Load Balancer(负载均衡器):
  用于分发流量到多个虚拟机实例。

7、Floating IP(浮动 IP):
  用于从外部网络访问虚拟机的公共 IP 地址。
  
8、Provider Network(提供商网络):
  与物理网络直接连接的虚拟网络。
5、Neutron-架构下组件:
1、Neutron Server:
  提供 RESTful API,用于接收和响应客户端请求。
  处理网络资源的创建、更新和删除。

2、Neutron Plugin:
  提供网络功能的抽象接口。
  支持多种插件,如 ML2(Modular Layer 2)。

3、Neutron Agent:
  运行在计算节点和网络节点上,负责具体的网络操作。
  包括 L2 Agent(如 Open vSwitch、Linux Bridge)、L3 Agent、DHCP Agent 等。

4、Database:
  存储 Neutron 的元数据和状态信息。
  通常使用 MySQL 或 PostgreSQL。

5、Message Queue(消息队列):
  用于 Neutron 组件之间的通信。
  通常使用 RabbitMQ 或 Apache Qpid。
6、Neutron-工作流程
1、创建网络:
  用户通过 Neutron API 创建虚拟网络。
  Neutron Server 将请求转发给相应的插件和代理。

2、创建子网:
  用户通过 Neutron API 创建子网,并指定 IP 地址范围。
  DHCP Agent 为虚拟机分配 IP 地址。

3、创建路由器:
  用户通过 Neutron API 创建虚拟路由器。
  L3 Agent 负责路由器的配置和管理。

4、创建虚拟机:
  Nova 从 Neutron 获取网络信息,为虚拟机创建网络接口。

5、分配 Floating IP:
  用户通过 Neutron API 为虚拟机分配 Floating IP,以便从外部网络访问。
7、Neutron-配置与部署流程
1、安装 Neutron:
  使用包管理工具(如 apt 或 yum)安装 Neutron。
  例如:apt install neutron-server neutron-plugin-ml2 neutron-linuxbridge-agent neutron-l3-agent neutron-dhcp-agent。

2、配置数据库:
  Neutron 需要一个数据库(如 MySQL 或 PostgreSQL)来存储元数据。
  配置数据库连接信息。

3、配置消息队列:
  配置消息队列(如 RabbitMQ)用于组件通信。

4、配置网络插件:
  选择网络插件(如 ML2)和驱动(如 Open vSwitch、Linux Bridge)。
  配置插件参数。

5、启动服务:
  启动 Neutron Server 和相应的 Agent。
  例如:systemctl start neutron-server。

6、验证安装:
  使用 openstack 命令行工具验证 Neutron 是否正常工作。
  例如:openstack network list。
8、Neutron-常用命令
8-1、创建网络
openstack network create my_network
8-2、创建子网
openstack subnet create --network my_network --subnet-range 192.168.1.0/24 my_subnet
8-3、创建路由器
openstack router create my_router
8-4、连接子网到路由器
openstack router add subnet my_router my_subnet
8-5、分配 Floating IP
openstack floating ip create public
openstack server add floating ip <instance_id> <floating_ip>
8-6、列出网络
openstack network list
9、Neutron-应用场景
多租户网络:为不同用户或团队提供独立的虚拟网络。
复杂网络拓扑:支持创建复杂的网络拓扑,如多层网络、VPN 连接等。
负载均衡与高可用性:通过负载均衡器和浮动 IP 实现高可用性。
混合云:支持与其他云平台(如 AWS、Azure)的网络集成。

Neutron-组件控制节点部署

1、数据库配置
1-1、创建数据库 neutron, 创建用户 neutron 并赋予他指定数据库的权限

alt text

2、Neutron-软件安装
2-1、安装命令

alt text

3、Neutron-软件配置
3-1、备份配置文件,并开始进行对应配置文件的配置操作

alt text

3-2、进行数据库配置文件的配置。/connection

alt text

3-3、配置二层网络模块 Modular Layer2 (ML2) 核心插件和服务插件/core_plugin

alt text

3-4、配置 neutron 用的 rabbitmq 的地址。/transport_url

alt text

3-5、配置认证方式。/auth_strategy

alt text

3-6、进行keystone 认证信息的添加。/[keystone_authtoken]

alt text

3-7、配置 nova的通知配置。/notify_nova

alt text

3-8、配置 nova服务的 keystone配置信息。/[nova]

alt text

3-9、配置所文件的路径。/var/lib/neutron/tmp

alt text

3-10、查看对应的配置信息结果

alt text

3-11、进行对应文件的配置操作

alt text

3-12、开启插件驱动,直接取消注释即可。/type_drivers

alt text

3-13、配置项目的网络类型。/tenant_net

alt text

3-14、设置物理网卡的驱动为 linuxbridge。/mechanism_dri

alt text

3-15、扩展驱动打开端口安全。/extension_dri

alt text

3-16、设置扁平网络类型为提供者网络。/flat_net

alt text

3-17、开启 ipset 功能,直接取消注释即可。/enable_ipset

alt text

3-18、查看配置文件修改效果:

alt text

4、Neutron-配置桥接客户端配置文件
4-1、备份指定配置文件,linuxbridge_agent.ini

alt text

4-2、进行设备端口的映射配置。/physical_in [eth33]

alt text

4-3、关闭 vxlan 功能,因为暂时用不到。/enable_vxlan

alt text

4-4、在安全组中,设置防火墙驱动。/firewall_driver

alt text

4-5、开启安全组的功能。/enable_security_group

alt text

4-6、查看效果

alt text

5、Neutron-配置dhcp的客户端配置文件
5-1、查找到配置文件,并进行对应的文件备份。

alt text

5-2、设置接口驱动。/interface_d

alt text

5-3、设置dhcp驱动,直接取消注释即可。/dhcp_dr

alt text

5-4、开启元数据功能,直接取消注释即可。/enable_iso

alt text

5-5、查看对应的修改效果

alt text

6、配置元数据客户端metadata_agent.ini 配置文件
6-1、备份对应的配置文件

alt text

6-2、配置 nova 元数据存储主机地址。/nova_me

alt text

6-3、配置元数据共享秘钥。/metadata_pr

alt text

6-4、查看校验配置效果

alt text

7、Neutron配置nova服务的配置文件
7-1、设置neutron 服务的验证信息。/[neutron]

alt text

8、数据同步
8-1、进行plugin.ini 文件软连接的创建。

alt text

8-2、进行对应的数据同步操作。

alt text

8-3、同步效果验证

alt text

9、Neutron-权限配置
9-1、加载admin 用户环境变量,创建neutron 用户

alt text

9-2、添加neutron用户到service 项目的admin 角色组

alt text

9-3、创建 neutron 服务

alt text

、注册 neutron的url 地址记录

alt text

alt text

alt text

9-5、验证效果
openstack user list
openstack service list
openstack endpoint list

alt text

alt text

alt text

10、整体效果测试
10-1、重启nova服务

alt text

10-2、开启对应的服务,并查看服务的状态

alt text

10-3、启动服务,设置为开机自启动

alt text

10-4、查看对应的结果列表

alt text

Neutron-组件计算节点部署

1、配置 neutron.conf 文件,先备份指定配置文件

alt text

2、进行计算节点对应软件的安装

alt text

3、进行 rabbitmq 的配置。/transport_url

alt text

4、配置认证方式。/auth_strate

alt text

5、配置keystone 的认证信息。/[keystone_au

alt text

6、修改锁文件路径。/lock_path

alt text

7、查看对应的验证效果

alt text

8、备份配置桥设备客户端配置文件

alt text

9、对应的网卡配置。/physical [ens33]

alt text

10、关闭 vxlan 配置。/enable_vxlan

alt text

11、配置并开启 安全组功能。/firewall_dr

alt text

12、检验配置结果。

alt text

13、配置nova的配置文件。
vim /etc/nova/nova.conf
14、配置nova 使用 neutron 的配置。/[neutron

alt text

15、开启对应的服务,检查一下状态,设置为开机自启动

alt text

Neutron-控制节点服务端验证效果:

1、查看所有的网络客户端

alt text

2、查看所有的计算节点服务
openstack compute service list

posted on   cloud_wh  阅读(39)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示