连接物理服务器

每个物理主机所需的网卡数量取决于云平台使用领域,组织的安全性和性能要求以及硬件的可用性。要完全运行的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. php charles 使用方法

    php charles 使用方法 打开charles 点击help菜单点击local ip address 可以获取本地ip 手机上选择代理这个ip 端口8888 然后手机访问网页 charles会弹 ...

  2. VMware安装Ubuntu 16.04.4 LTS

    1.下载Ubuntu镜像 https://www.ubuntu.com/download/desktop 2.创建新的虚拟机 3. 4.这里默认即可,可以不选 5. 6. 7.这里位置可以随时改 8. ...

  3. WebSocket插件

    ;!(function(window){ "use strict"; let Event = { wsMesEvent:function(message){ console.log ...

  4. nyoj 38-布线问题(prim, sort)

    38-布线问题 内存限制:64MB 时间限制:1000ms Special Judge: No accepted:5 submit:11 题目描述: 南阳理工学院要进行用电线路改造,现在校长要求设计师 ...

  5. 【SSM Spring 线程池 OJ】 使用Spring线程池ThreadPoolTaskExecutor

    最近做的Online Judge项目,在本地判题的实现过程中,遇到了一些问题,包括多线程,http通信等等.现在完整记录如下: OJ有一个业务是: 用户在前端敲好代码,按下提交按钮发送一个判题请求给后 ...

  6. Ubuntu 16.04 安装Maven3.3.9

    1 下载地址 http://maven.apache.org/download.cgi 2 将下载到的apache-maven-3.3.9-bin.tar.gz文件上传到/temp目录下,然后切换到r ...

  7. Grid表格的js触发事件

    没怎么接触过Grid插件: 解决的问题是:点击Grid表行里的内容触发js方法弹出模态框,用以显示选中内容的详细信息. 思路:给准备要触发的列加上一个css属性,通过这个css属性来获取元素并触发js ...

  8. java中的transient关键字详解

    目录 1.何谓序列化? 2.为何要序列化? 3.序列化与transient的使用 4.java类中serialVersionUID作用 5.transient关键字小结 前言 说实话学了一段时间jav ...

  9. Matplotlib入门简介

    Matplotlib是一个用Python实现的绘图库.现在很多机器学习,深度学习教学资料中都用它来绘制函数图形.在学习算法过程中,Matplotlib是一个非常趁手的工具. 一般概念 图形(figur ...

  10. 扛把子组20191114-4 Beta发布用户使用报告

    此作业的要求参见:http://edu.cnblogs.com/campus/nenu/2019fall/homework/10007 小组情况: 队名:扛把子 组长:孙晓宇 组员:宋晓丽 梁梦瑶 韩 ...