云计算之openstack(n版)neutron网络服务最佳实践

author author     2022-08-20     746

关键词:

2.6网络服务

2.6.1neutron的概况

网络服务提供网络,子网以及路由这些对象的抽象概念。每个抽象概念都有自己的功能,可以模拟对应的物理设备:网络包括子网,路由在不同的子网和网络之间进行路由转发。

对于任意一个给定的网络都必须包含至少一个外部网络。不想其他的网络那样,外部网络不仅仅是一个定义的虚拟网络。相反,它代表了一种openstack安装之外的能从物理的,外部访问的试图。外部网络上的IP地址可供外部网络上的任意的物理设备访问,外部网络之外,任何networking设置拥有一个或多个内部网络。这些软件定义的网络直接连接到虚拟机。仅仅在给定网络上的虚拟机,或那些在通过接口连接到相近路由的子网上的虚拟机,能直接访问连接到那个网络上的虚拟机。

如果外部网络想要访问实例或者相反实例想要访问外部网络,那么网络之间的路由就是必要的了。每一个路由都配有一个网关用于连接到外部网络,以及一个或多个连接到内部网络的接口。就像一个物理路由一样,子网可以访问同一个路由上其他子网中的机器,并且机器也可以访问的网关访问外部网络。

另外,可以讲外部网络的IP地址分配给内部网络的端口,不符按什么时候一旦有链接到子网,那个链接被称作端口,你可以给实例的端口分配外部网络的IP地址。通过这种方式,外部网络上的实体可以访问实例。

网络服务统一支持安全组。安全组允许管理员在安全组中定义防火墙规则,一个实例了一属于一个或多个安全组,网络为这个实例配置这些安全组中的规则,阻止或者开启端口,端口范围或者通信类型。

每一个networking使用的插件都有其自有的概念。虽然对操作vni和openstack环境至关重要的,所有的networking安装使用了一个核心插件和一个安全组插件(或仅是空操作安全组插件)。另外,防火墙即服务(FWaas)和负载均衡即服务(LBaas)插件是可用的。

 

 

Openstack networking

技术分享

网络:实际的物理环境下,我们使用交换机或者集线器把多个计算机连接起来形成了网络。在neutron的世界里,网络也是将多个不同的云主机连接起来。

子网:在实际的物理环境下,在一个网络中。我们可以将网络划分成多个逻辑子网。在neutron的世界里,子网也是隶属于网络下的。

端口:是实际的物理环境下,每个子网或者每个网络,都有很多的端口,比如交换机端口来供计算机连接。在neutron的世界里端口也隶属子网下,云主机的网卡会对应到一个端口上。

路由器:在实际的网络环境下,不同网络或者不同逻辑子网之间如果需要进行通信,需要通过路由器进行路由。在neutron的实际物理路由也是这个作用。用来连接不同的网络或者子网。

技术分享

 

2.6.2控制节点上neutron的配置与安装

a数据库的创建并授权

create databaseneutron;

grant all onneutron.* to ‘neutron‘@‘localhost‘ identified by ‘neutron‘;

grant all onneutron.* to ‘neutron‘@‘%‘ identified by ‘neutron‘;

 

b创建服务证书

获得 admin 凭证来获取只有管理员能执行的命令的访问权限:

sourceadmin-openstack

创建``neutron``用户:

openstack usercreate --domain default --password-prompt neutron

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

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

 

c创建``neutron``服务实体

openstack servicecreate --name neutron

--description"OpenStack Networking" network

d创建网络服务API端点

openstack endpointcreate --region RegionOne

network publichttp://192.168.56.11:9696

openstack endpointcreate --region RegionOne

network internalhttp://192.168.56.11:9696

openstack endpointcreate --region RegionOne

network adminhttp://192.168.56.11:9696

 

e软件包的安装

yum install -yopenstack-neutron openstack-neutron-ml2

openstack-neutron-linuxbridgeebtables

 

f编辑``/etc/neutron/neutron.conf``

[database]#配置数据库访问

connection =mysql+pymysql://neutron:[email protected]/neutron

[DEFAULT]#启用ML2插件并禁用其他插件

core_plugin = ml2

service_plugins =

transport_url =rabbit://openstack:[email protected] #配置rabbitMQ消息队列访问权限

auth_strategy =keystone

notify_nova_on_port_status_changes= True

notify_nova_on_port_data_changes= True

[keystone_authtoken]#配置认证服务访问

auth_uri =http://192.168.56.11:5000

auth_url =http://192.168.56.11:35357

memcached_servers =192.168.56.11:11211

auth_type =password

project_domain_name= default

user_domain_name =default

project_name =service

username = neutron

password = neutron

[nova]  #配置网络服务来通知计算节点的网络拓扑变化

auth_url =http://192.168.56.11:35357

auth_type =password

project_domain_id =default

user_domain_id =default

region_name =RegionOne

project_name =service

username = nova

password = nova

[oslo_concurrency]配置锁路径

lock_path =/var/lib/neutron/tmp

 

 

配置 Modular Layer 2 (ML2) 插件

g编辑``/etc/neutron/plugins/ml2/ml2_conf.ini``

 

[ml2]

type_drivers=flat,vlan,gre,vxlan,geneve #启用flatVLAN网络

tenant_network_types= flat,vlan,gre,vxlan,geneve #禁用私有网络

mechanism_drivers=linuxbridge  #启用Linuxbridge机制

extension_drivers =port_security  #启用端口安装扩展驱动

[ml2_type_flat]

flat_networks =public #配置公共虚拟网络为public网络

[securitygroup]

enable_ipset = True#启用IPset增肌安全组的方便性

 

 

配置Linuxbridge代理

h编辑``/etc/neutron/plugins/ml2/linuxbridge_agent.ini``

[linux_bridge]#将公共虚拟网络和公共物理网络接口对应起来

physical_interface_mappings= public:eth0

[vxlan]#禁止vxlan覆盖网络

enable_vxlan =False

[securitygroup]#启用安全组并配置Linux桥接iptables防火墙驱动

enable_security_group= True

firewall_driver =neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

 

 

配置DHCP代理

i编辑``/etc/neutron/dhcp_agent.ini``

[DEFAULT]#配置Linuxbridge驱动接口,DHCP驱动并启用隔离元数据,这样在公共网络上的实例就可以通过网络访问元数据

interface_driver =neutron.agent.linux.interface.BridgeInterfaceDriver

dhcp_driver =neutron.agent.linux.dhcp.Dnsmasq

enable_isolated_metadata= True

 

配置metadata元数据

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

j编辑``/etc/neutron/metadata_agent.ini``

[DEFAULT]#配置元数据主机以及共享密码

nova_metadata_ip =192.168.56.11

metadata_proxy_shared_secret= chunchun

 

配置计算服务来使用网络服务

k编辑``/etc/nova/nova.conf``

[neutron]#配置访问参数,启用元数据代理并设置密码

url =http://192.168.56.11:9696

auth_url =http://192.168.56.11:35357

auth_type =password

project_domain_name= default

user_domain_name =default

region_name =RegionOne

project_name =service

username = neutron

password = neutron

service_metadata_proxy= True

metadata_proxy_shared_secret= chunchun

 

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

 

l同步数据库

su -s /bin/sh -c"neutron-db-manage --config-file /etc/neutron/neutron.conf

--config-file/etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron

验证数据库同步成功

mysql -h192.168.56.11 -uneutron -pneutron

-e "useneutron;show tables;"|wc -l

163

 

m重新启动控制节点Nova API服务

systemctl restartopenstack-nova-api.service

 

n启动网络服务并将其配置为系统启动时启动

systemctl enableneutron-server.service

neutron-linuxbridge-agent.serviceneutron-dhcp-agent.service

neutron-metadata-agent.service

systemctl startneutron-server.service

neutron-linuxbridge-agent.serviceneutron-dhcp-agent.service

neutron-metadata-agent.service

 

2.6.3计算节点上neutron的配置与安装

a软件包的安装

yum install -yopenstack-neutron-linuxbridge ebtables ipset

 

b编辑``/etc/neutron/neutron.conf``文件

 

[DEFAULT]

transport_url =rabbit://openstack:[email protected] #配置``RabbitMQ``消息队列访问权限

auth_strategy =keystone

[keystone_authtoken]#配置认证服务访问

auth_uri =http://192.168.56.11:5000

auth_url =http://192.168.56.11:35357

memcached_servers =192.168.56.11:11211

auth_type =password

project_domain_name= default

user_domain_name =default

project_name =service

username = neutron

password = neutron

[oslo_concurrency]配置锁路径

lock_path =/var/lib/neutron/tmp

 

配置Linux桥接代理

 

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

[linux_bridge]#将公共虚拟网络和公共物理网络接口对应起来

physical_interface_mappings= public:eth0

[vxlan]#禁止Vxlan覆盖网络

enable_vxlan =false

[securitygroup]  #启用安全组并配置Linux桥接iptables防火墙驱动

enable_security_group= True

firewall_driver =neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

 

配置计算节点使用网络

 

d编辑``/etc/nova/nova.conf``文件

在[neutron]部分,配置访问

[neutron]

url =http://192.168.56.11:9696

auth_url =http://192.168.56.11:35357

auth_type =password

project_domain_id =default

user_domain_id =default

region_name =RegionOne

project_name =service

username = neutron

password = neutron

 

 

e重启计算节点nova-compute服务

systemctl restartopenstack-nova-compute

 

f启动Linux桥接代理,包括它的依赖和配置并在系统启动时启动

systemctl enableneutron-linuxbridge-agent.service

systemctl startneutron-linuxbridge-agent.service

 

 

验证:

获得 admin 凭证来获取只有管理员能执行的命令的访问权限:

sourceadmin-openstack

 

列出加载的扩展来验证``neutron-server``进程是否正常启动:

neutron agent-list

+-----------------------------+--------------------+-------------------------+-------------------+-------+----------------+---------------------------+

| id | agent_type |host | availability_zone | alive | admin_state_up | binary |

+-----------------------------+--------------------+-------------------------+-------------------+-------+----------------+---------------------------+

|3dfb07a5-d9e2-45ec-b77a- | Metadata agent | linux-node1.example.com | | :-) |True | neutron-metadata-agent |

| 471842f603e8 | || | | | |

| 9e7c94cf-fadd- |Linux bridge agent | linux-node1.example.com | | :-) | True |neutron-linuxbridge-agent |

|4b42-a316-ea1a5bce22de | | | | | | |

|a2ae2f2c-f453-449d-a46a- | DHCP agent | linux-node1.example.com | nova | :-) |True | neutron-dhcp-agent |

| c49edea6f9c5 | || | | | |

|ef8b5e4e-682e-4f57-af5e- | Linux bridge agent | linux-node2.example.com | | :-)| True | neutron-linuxbridge-agent |

| e50e9fa56615 | || | | | |

+-----------------------------+--------------------+-------------------------+-------------------+-------+----------------+---------------------------+


本文出自 “追梦IT男” 博客,请务必保留此出处http://runningyongboy.blog.51cto.com/8234857/1889360

云计算之openstack(n版)虚拟机创建

2.7创建虚拟机2.7.1创建提供者虚拟网络a在控制节点上,加载admin凭证来获取管理员能执行的命令访问权限sourceadmin-openstackb创建网络openstack network create  --share   --provider-physical-network public & 查看详情

云计算之openstack(n版)openstack-dashbord可视化服务

2.8OpenStack-dashbord可视化服务部署配置2.8.1.安装OpenStack-dashbord可视化服务yuminstall-yopenstack-dashboard2.8.2.编辑/etc/openstack-dashboard/local_settings文件,并完成以下操作 配置仪表板使用OpenStack的服务,Keystone认证服务IP地址。OPENSTAC 查看详情

openstack实战讲解之-----08-计算节点neutron配置

Neutron组件安装[[email protected] ~]# yum install openstack-neutron-linuxbridge ebtables ipset配置通用组件Networking通用组件的配置包括认证机制、消息队列和插件编辑``/etc/neutron/neutron.conf``文件并完成如下 查看详情

openstack之neutron

网络组件neutron在整个openstack体系中应该是最难的一部分,需要在控制节点和计算节点上面同时安装1、创建neutron用户及授权[[email protected] ~]# source admin-openrc.sh[[email protected] ~]# openstack user cr 查看详情

n版openstack——走进云计算

【N版】openstack——走进云计算一.云计算云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括:网络、服务器、存储、应用软件、服务),这些资源能够被... 查看详情

云计算管理平台之openstack启动虚拟机实例

  在前边的博客中,我们主要聊了下openstack的基础环境、核心服务(认证服务keystone/镜像服务glance/计算服务nova/网络服务neutron)的安装配置;回顾请查看前边的博客;今天我们主要来聊一聊基于前边安装配置的服务来启动一... 查看详情

云计算之openstack-newton版搭建

openstack搭建准备工作主机名与服务器ip地址controller 192.168.23.98(控制节点)compute1   192.168.23.61(计算节点)2.配置hosts解析[[email protected] ~]# vim /etc/hosts添加192.168.23.98 contr 查看详情

中小企业openstack私有云布署实践12.2网络neutron-controller节点配置(办公网环境)

网络这一块推荐使用的是Neutron--LinuxBirdge的Ha高可用,此高可用方案对Public作用不是很大,Public只用到DHCP,而Private则会用到L3Agent,则此方案是有用的,但要关掉和牺牲一个L3population的特性--抑制ARP报文广播。原因在下文的配置文... 查看详情

云计算之openstack-newton版搭建

安装数据库[[email protected] ~]# yum install mariadb mariadb-server python2-PyMySQL -y2.配置数据库[[email protected] ~]# vim /etc/my.cnf.d/openstack.c 查看详情

浅谈openstackt版服务组件--neutron计算服务(#^.^#)持续更新中(代码片段)

文章目录前言一、OpenStack网络1、linux网络虚拟化2、liunx虚拟网桥(br)linux虚拟局域网4、开放虚拟交换机OvS二、openstack网络基础服务1、网络组件2、网络结构3、网络子网与端口4、openstack中的网络模型(neutron)三、OpenStack-Neutron网络服... 查看详情

浅谈openstackt版服务组件--neutron计算服务(#^.^#)持续更新中(代码片段)

文章目录前言一、OpenStack网络1、linux网络虚拟化2、liunx虚拟网桥(br)linux虚拟局域网4、开放虚拟交换机OvS二、openstack网络基础服务1、网络组件2、网络结构3、网络子网与端口4、openstack中的网络模型(neutron)三、OpenStack-Neutron网络服... 查看详情

云计算之openstack-newton版搭建

...像存储在各种位置,从简单文件系统到对象存储系统(如OpenStack对象存储)。镜像默认放在/var/lib/glance/images/。下面说一下glance服务的安装及配置1.创建数据库[[email  查看详情

云计算之openstack-newton版搭建

...像存储在各种位置,从简单文件系统到对象存储系统(如OpenStack对象存储)。镜像默认放在/var/lib/glance/images/。下面说一下glance服务的安装及配置1.创建数据库[[email  查看详情

云计算之openstack-newton版搭建

本章讲解以下计算服务(nova)的安装及配置。一、安装和配置控制器节点1.配置数据库# mysql -u root -p123456mysql> CREATE DATABASE nova_api;mysql> CREATE DATABASE nova;mysql> GRA 查看详情

openstack的部署之neutron项目(7-6)(代码片段)

OpenStack的部署之Neutron项目(7-6)一、CT控制节点1、创建数据库neutron,并进行授权2、创建用户、服务并赋权3、注册API4、安装提供者网络(桥接)并修改相关配置文件5、重启相关服务二、C1、C2计算节点操作1、部署neutron... 查看详情

openstack运维-部署neutron组件[t版](代码片段)

OpenStack运维-部署Neutron组件一、Neutron概述二、创建数据库neutron,并进行授权三、计算节点C1/C2四、CT验证服务组件一、Neutron概述Neutron是OpenStack项目中负责提供网络服务的组件,它基于软件定义网络的思想,实现了网... 查看详情

neutron之openstack

https://github.com/openstack/neutronhttps://specs.openstack.org/openstack/neutron-specs/本文出自“运维自动化”博客,请务必保留此出处http://shower.blog.51cto.com/4926872/1971100 查看详情

openstack的部署t版——neutron组件(代码片段)

OpenStack的部署(六)——Neutron组件一、CT控制节点1、创建数据库neutron,并进行授权2、创建用户、服务并赋权3、注册API到neutron服务,给neutron服务关联端口,即添加endpoint4、安装提供者网络(桥接)5、重启相关... 查看详情