openstack之neutron linuxbridge + vlan组网

linuxbridge是和linuxbridge plugin匹配的core agent,主要实现L2层的功能和security group的功能。security group的功能逐渐会被neutron firewall取代。

linuxbridge的启动命令在linuxbridge_neutron_agent.py中;启动的时候需要提供neutron.conf和linuxbridge_conf.ini配置文件

主要配置项:

  linuxbridge_conf.ini

  [vlans]

  network_vlan_ranges = physnet1,physnet2:1000:2999

  tenant_network_type=vlan

  [linux_bridge]

  physical_interface_mappings = physnet1:eth0, physnet2:eth1

  其中physnet1和physnet2表示该节点可用的物理网络名字(physical network, 名字可以随便定义),physical_interface_mappings用来把名字和该网络使用的物理网卡对应起来。

physical_interface_mappings的作用:

  physical_interface_mappings是linuxbridge中最重要的配置项,用来定义节点中的物理网络,可以有多个。openstack中的节点(按功能不同,可分为计算节点,dhcp节点,L3节点等)通过物理网络实现互联。这个物理网络用来实现neutron中定义的虚拟网络拓扑,和openstack的管理网络不是一个,是不同的概念。

  虚拟网络的流量需要通过物理网络承载,而物理网络其实就是该节点上的网卡。在linuxbridge实现中,每个网络对应一个bridge,每个网络又会有一个物理网络(provider:physical_network属性)来承载,与该物理网络对应的网卡(physical_interface_mappings中配置,如physnet1对应eth1),会被加入这个bridge中,这样该网络就可以和外部系统通信了。

  如果虚拟机中需要和外网相连(访问Internet),需要在L3节点(负责路由功能)上配置可以访问外部的物理网络,然后创建一个provider网络 和这个物理网络对应起来。把该provider网络和需要访问外网的虚拟机所在网络加入同一个路由器,即可实现访问外网的功能;

 例子:创建provider网络,public01是该网络的名字,physnet1是物理网络的名字。physical_interface_mappings需要配置physnet1对应的物理网卡,如eth0。

1 $neutron router-create router01
2 $ neutron net-create --tenant-id $tenant public01 3           --provider:network_type flat 4           --provider:physical_network physnet1 5           --router:external=True
6 $ neutron subnet-create --tenant-id $tenant --name public01_subnet01 7           --gateway 10.64.201.254 public01 10.64.201.0/24 --disable-dhcp
8 $ neutron router-gateway-set router01 public01

  创建可访问外网的网络net01(vlan类型),该网络的物理网络是physnet2。physical_interface_mappings需要配置physnet2对应的物理网卡,如eth1。

$ neutron net-create --tenant-id $tenant net01           --provider:network_type vlan           --provider:physical_network physnet2           --provider:segmentation_id 101
$ neutron subnet-create --tenant-id $tenant --name net01_subnet01 net01
192.168.101.0/24
$ neutron router-interface-add router01 net01_subnet01

  创建另外一个可访问外网的网络net02

$ neutron net-create --tenant-id $tenant net02           --provider:network_type vlan           --provider:physical_network physnet2           --provider:segmentation_id 102
$ neutron subnet-create --tenant-id $tenant --name net02_subnet01 net02
192.168.102.0/24
$ neutron router-interface-add router01 net02_subnet01

  这两个网络中的VM就可以访问外网,通过SNAT方式。如果需要外部网络直接访问VM,需要给VM分配一个floating IP地址。

时间: 2024-10-12 20:51:53

openstack之neutron linuxbridge + vlan组网的相关文章

openstack之Neutron网络模式vlan,gre,vxlan详解

第一:neutron openvswitch + vlan虚拟网络 一:基础知识 vlan基础知识 1.vlan介绍 1.1:首先说下lan,LAN 表示 Local Area Network,本地局域网,通常使用 Hub 和 Switch 来连接LAN 中的计算机.(一个 LAN 表示一个广播域) vlan:(Virutal LAN) 将同一个LAN上的用户在逻辑上分成多个虚拟局域网,换句话说,一个带有 VLAN 功能的switch 能够同时处于多个 LAN 中,每个vlan中的主机连接交换机

Neutron 理解 (2): 使用 Open vSwitch + VLAN 组网 [Netruon Open vSwitch + VLAN Virutal Network]

学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GRE/VxLAN 网络 (4)Neutron L3 agent (5)TBD 1. L2 基础知识 1.1 VLAN 基础知识 LAN 表示 Local Area Network,本地局域网,通常使用 Hub 和 Switch 来连接LAN 中的计算机.一般来说,当你将两台计算机连入同一个 Hub 或

玩转OpenStack网络Neutron(2)--使用Open vSwitch实现VLAN类型租户网络

欢迎转载,转载请保留原作者信息 欢迎交流学习,共同进步! 作者:颜海峰 个人博客:http://yanheven.github.io 微博:海峰_云计算 http://weibo.com/344736086 VLAN 介绍 计算节点 Open vSwitch 配置 网络节点 Open vSwitch 配置 配置Neutron使用 Open vSwitch Mechanism Driver 配置Neutron 使用 VLAN type driver 配置 VLAN 编号范围 查看 分配给网络的 V

OpenStack:安装Neutron与provider network

1. 安装(1)Install Networking services on a dedicated network node# apt-get install neutron-server neutron-dhcp-agent neutron-plugin-openvswitch-agent不需要L3Agent删除sqlite rm -f /var/lib/neutron/neutron.sqlite 编辑/etc/sysctl.conf, Enable packet forwarding a

Openstack Icehouse neutron vlan 模式下的配置

http://www.server-world.info/en/note?os=Ubuntu_14.04&p=openstack_icehouse&f=16

openstack之neutron

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

openstack使用openvswitch实现vxlan组网

 openstack使用openvswitch实现vxlan openstack环境: 1 版本:ocata 2 系统:ubuntu16.04.2 3 控制节点 1个 + 计算节点 1个 4 控制节点网卡为ens33,ip = 172.171.5.200 ens34 manual模式 无IP 一 下载openswitch controller : apt-get install  neutron-openvswitch-agent compute : apt-get install neutro

openstack之Neutron网络虚拟化

第一:为什么需要网络虚拟化? 一.数据中心的现有网络不能满足云计算的物理需求: 互联网行业数据中心的基本特征就是服务器的规模偏大.进入云计算时代后,其业务特征变得更加复杂,包括:虚拟化支持.多业务承载.资源灵活调度等(如下图所示).与此同时,互联网云计算的规模不但没有缩减,反而更加庞大.这就给云计算的网络带来了巨大的压力. 互联网云计算业务特点 1. 大容量的MAC表项和ARP表项 虚拟化会导致更大的MAC表项.假设一个互联网云计算中心的服务器有5000台,按照1:20的比例进行虚拟化,则有10

neutron 创建vlan网络

镜像转换 qemu-img convert -O raw cirros-0.3.5-x86_64-disk.img cirros-0.3.5-x86_64-disk.raw 先上传镜像 openstack image create cirros-0.3.5-x86_64-disk.raw  --file cirros-0.3.5-x86_64-disk.img.raw --disk-format raw --container-format bare --public 创建vlan 网络 neu