连接物理服务器

每个物理主机所需的网卡数量取决于云平台使用领域,组织的安全性和性能要求以及硬件的可用性。要完全运行的OpenStack云必须具有管理网络和数据网络。如果物理服务器只有一个网卡接口,导致的是管理数据和业务数据走一个接口。这样的部署方式在规模比较小时可以用,但是如果大型的数据中心这种方法并不可取。我的建议是,尽可能在多个接口之间分散控制和数据流量。

单网卡

对于使用单个网卡接口的物理主机,进出虚拟机的流量、SSH管理流量和API流量的所有流量都会流过这个接口。 此配置可能导致严重的性能降级,因为客户可以通过消耗所有可用带宽来对其主机创建拒绝服务攻击。 下图说明了在使用Open vSwitch驱动程序时对所有流量使用单个物理接口。 在控制节点上,单个接口连接到桥接器,并处理外部网络,虚拟机,管理和API服务的流量。 在计算节点上,单个接口处理客户和管理流量:

多网卡

为了降低访客网络带宽消耗影响管理流量的可能性并维持更稳健的安全状态,建议在多个物理接口之间隔离流量。 至少应使用两个接口:一个用作管理和API流量的专用接口,另一个用作外部和访客流量的专用接口。 其他接口可用于进一步隔离流量。 下图显示了在使用Open vSwitch驱动程序时,在两个物理接口上拆分的流量:


跨主机安装网络服务

与其他OpenStack服务一样,云运营商可以跨多个节点拆分安装OpenStack Networking服务。 小型部署可以使用单个节点托管所有服务,包括网络,计算,数据库和消息传递。 其他人可能会发现使用专用计算节点和专用网络节点来处理通过软件路由器来路由访客流量和分担Neutron DHCP和元数据服务会有好处。 以下部分描述了几个常见的服务部署模型。

使用单个控制节点安装

在由单个控制节点和一个或多个计算节点组成的环境中,控制节点将可能处理所有联网服务和其他OpenStack服务,同时计算节点还要提供计算节点服务所需资源。 下图演示了托管所有OpenStack管理和网络服务的控制器节点,其中未使用Neutron第3层代理。两个物理接口用于分隔管理和虚拟机网络流量:



上图反映了单个组合的控制节点/网络节点和一个或多个计算节点的使用,Neutron仅提供实例和外部网关设备之间的2层连接。 需要外部路由器来处理网段之间的路由。

下图演示了托管所有OpenStack管理和网络服务的控制器节点,包括Neutron L3代理。 三个物理接口用于提供单独的控制和数据平面:

上图反映了在使用Neutron L3代理的网络配置中使用单个组合的控制节点/网络节点和一个或多个计算节点。 使用Neutron创建的软件路由器安装在控制器节点上,并处理连接的租户网络和外网之间的路由。

使用专用网络节点安装

网络节点用于处理大多数或所有OpenStack网络服务,包括L3代理,DHCP代理,元数据代理等。 使用专用网络节点可以提供安全性和弹性,因为控制器节点将处于较小的网络和资源饱和的风险。 一些Neutron服务,例如L3和DHCP代理和Neutron API服务,可以跨多个节点部署以实现冗余和增加性能。

下图演示了托管所有OpenStack Networking服务的网络节点,包括Neutron L3,DHCP,元数据和LBaaS代理。 但是,Neutron API服务仍然安装在控制器节点上。 在必要时使用三个物理接口来提供单独的控制和数据平面:

上图反映了在使用Neutron L3代理的网络配置中使用专用网络节点。 使用Neutron API创建的软件路由器安装在网络节点上,并处理连接租户网络和外部提供商网络之间的路由。 neutron-server服务器的Neutron API服务保留在控制器节点上。

本文翻译自Learning OpenStack Networking (Neutron) Second Edition James Denton

仅供学习交流

openstack网络(二)的更多相关文章

  1. Openstack网络相关概念比较复杂,经常使人混淆,本文进行相关说明。

    Openstack网络相关概念比较复杂,经常使人混淆,本文进行相关说明. 文中相关术语与缩写 英文 缩写 中文 Virtual Local Area Network VLAN 虚拟局域网 Virtua ...

  2. 开发人员必读openstack网络基础

    云计算中的网络非常复杂,需要对网络的基础理论有一定的认识和了解,转载网上针对openstack中涉及到网络概念的文章 开发人员必读openstack网络基础1:什么是L2.L3 开发人员必读opens ...

  3. 深入理解openstack网络架构(4)-----连接到public network

    原文地址: https://blogs.oracle.com/ronen/entry/diving_into_openstack_network_architecture3 译文转自:http://b ...

  4. 深入理解openstack网络架构(3)-----路由

    原文地址: https://blogs.oracle.com/ronen/entry/diving_into_openstack_network_architecture2 译文转自:http://b ...

  5. 深入理解openstack网络架构(1)

    原文地址: https://blogs.oracle.com/ronen/entry/diving_into_openstack_network_architecture 译文转载自:http://b ...

  6. openstack 网络架构 nova-network + neutron

    openstack网络架构(nova-network/neutron) openstack网络体系中,网络技术没有创新,但用到的技术点很庞杂,包含bridge.vlan.gre.vxlan.ovs.o ...

  7. openstack 网络简史

    openstack 网络简史 研究openstack有2个月的时间,这段时间从网上获取N多宝贵资料,对我的学习有非常大帮助,在加上我自己的研究,最终对openstack整个网络体系有了个浅显的认识,写 ...

  8. 清除OpenStack网络与路由

    下面,我们以删除一个路由设备为例,讲解整个过程(以下命令都在控制节点执行) 列出所有路由设备,获得要删除的路由器id # neutron router-list [root@controller ~] ...

  9. OpenStack 网络服务 Neutron 私有网络构建(十九)

    本章内容基于之前提供者网络构建的基础上进行改动,之前文章参考如下: Openstack 网络服务 Neutron介绍和控制节点部署 (九) Openstack 网络服务 Neutron计算节点部署(十 ...

随机推荐

  1. windsServer2008设置定时重启

    点击“开始”——“管理工具”——“任务计划程序”. 右键“任务计划程序库”——“创建任务”. 输入计划名称.描述和安全选项(如下图). 点击触发器,点击“新建…”,输入计划周期和时间(如下图):无误后 ...

  2. [LC] 700题 Search in a Binary Search Tree (二叉搜索树中的搜索) (二叉搜索树)

    ①中文题目 给定二叉搜索树(BST)的根节点和一个值. 你需要在BST中找到节点值等于给定值的节点. 返回以该节点为根的子树. 如果节点不存在,则返回 NULL. 例如, 给定二叉搜索树: 在上述示例 ...

  3. Redis为什么是单线程、及高并发快的3大原因详解

    Redis的高并发和快速原因 1.redis是基于内存的,内存的读写速度非常快: 2.redis是单线程的,省去了很多上下文切换线程的时间: 3.redis使用多路复用技术,可以处理并发的连接.非阻塞 ...

  4. Oracle的高水位线

    一.什么是水位线 所有的oracle段都会有一个在段内容纳数据的上线,把这个上限成为“high water mark”,这是一个标记,用来说明已经有多少没有使用的数据块分配给这个段,原则上high w ...

  5. 【集训Day4 动态规划】轮船问题

    轮船问题(ship) [问题描述] 某国家被一条河划分为南北两部分,在南岸和北岸总共有N对城市,每一城市在对岸都有唯一的友好城市,任何两个城市都没有相同的友好城市.每一对友好城市都希望有一条航线来往, ...

  6. 原生JS通过类名(className)获取dom元素

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  7. Python3学习-基础

    1.直接运行.py文件 在Windows上是不行的,但是在Mac和Linux上是可以的,方法是在.py文件的第一行加上一个特殊的注释: #!/usr/bin/env python3 print('he ...

  8. android 活动监听是否点击某个view

    前述(写给做过web前端的人) 在web H5,如果如果判断当前是否点击某个元素,一般会这样写. window.addEventListener("touchstart",func ...

  9. mybatis源码学习(三)-一级缓存二级缓存

    本文主要是个人学习mybatis缓存的学习笔记,主要有以下几个知识点 1.一级缓存配置信息 2.一级缓存源码学习笔记 3.二级缓存配置信息 4.二级缓存源码 5.一级缓存.二级缓存总结 1.一级缓存配 ...

  10. 【Android - 控件】之V - ViewPager的使用

    ViewPager是Android V4包中的一个控件,常常用来作为首页的滚动广告,也常常结合Fragment来实现页面的切换效果. ViewPager和ListView有很多相似的地方,都是适配器控 ...