前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >SDN实战团分享(十五):2Cloud Aladdin:谈谈云中网络运维

SDN实战团分享(十五):2Cloud Aladdin:谈谈云中网络运维

作者头像
SDNLAB
发布于 2018-04-03 02:35:30
发布于 2018-04-03 02:35:30
1.2K0
举报
文章被收录于专栏:SDNLABSDNLAB

大家晚上好,今天我来分享一些云杉在网络运维中的所做所想,现在开始密集轰炸了。相信不少人看到了云杉年初发布的NSP解决方案,以及上周的新闻稿。我今天主要讲的也是2Cloud NSP,中的一环2Cloud Aladdin:谈谈云中网络运维。

一般人们关注SDN都是在控制能力上,都希望了解能用SDN实现哪些新功能。但SDN真的要跑严肃业务,运维是非常重要的。举个例子

这是云。管理员收到了报障,有个虚机不通了。这时候他应该怎么办?这套云网络不是以往托管机房的网络,他不知道故障到底在哪。可能在公网,可能在fabric,可能在ovs,也可能在vm里面。再举个例子

用户的业务是这样的,lb后面挂一堆web, app, db。现在android访问正常,但ios访问就是慢。管理员接到报障也一头雾水。我们的阿拉丁,就是这样一个系统,希望帮助云的运营和运维者更轻松的面对这个复杂的、多租户交错的虚拟网络。

接下来我大概会从两方面来介绍:事先怎么做监控,以及事后怎么做分析。

监控一般包括主动和被动监控。主动监控通俗来说就是发包探测网络状况。一般来说对于公网的监控使用传统方法就可以了,现在也有很多成熟的服务,像听云、监控宝等等。但私有网络内部的监控是不太好做的。

虚拟机内部安装agent并不是所有用户都愿意的事情,如果这个agent恰好由于bug比如删错了一些文件,那问题就更大了。所以我们的做法是在vswitch上构造报文进行探测。这里面涉及到两个问题:怎么处理回包、怎么并发探测。

如果设置规则截获回包,规则设置不准可能会导致虚拟机正常的通信被我们的监控系统截获。我们采用的做法不是截获,而是嗅探。这样的话,虚拟机会多收到一些包,但不会由于少收到包而影响正常通信。

另外就是私有网络的规模可能很大,如果要做到n*n的密集探测,探测进程的资源利用率会上去,因此要考虑并发探测、以及合理选择恰当的探测间隔。探测间隔不必是固定的,根据最近一段时间的网络状况可以进行灵活调整。

总的来说,除了私有网络内部的监控以外,主动监控的这部分做法还是比较传统的。下面我要说的是我们的被动监控

被动监控这部分也是最初Aladdin名称的由来——我们希望做一个平台,从数据的采集、存储、简单分析、展现,到向第三方合作伙伴的开放。这些都依赖于我们的分布式探针DFI——Deep Flow Inspection。

一般都谈论DPI,但DPI的问题是:如果不采样,流量太大;如果采样,不准。所以DPI一般用在南北向,或者针对特定用户使用。数据中心中绝大部分流量是东西向内网流量。如果要把这些流量都送出去做DPI,一来会加重末端vswitch的负载,二来会使得东西向流量double——相当于tor上行少了一半。(当然这里没考虑分布式DPI)

DFI的做法是,在内核空间获取ovs的flow统计信息,并周期性复制到用户空间。对比其他类似方法,比如IPFIX,有一些优点。

当然,我们的这套探针也是可以接IPFIX后端的。主要用于无法更换内核模块的场景,代价就是上面说的性能和信息损耗。DFI解决了流的采集问题,我后面会讨论包的采集问题。除了这些网络上的信息,我们同时也采集了一些传统的东西:

我们用Fluentd/syslog采集了所有宿主机、交换机、安全设备上的日志,也包括我们控制器自身的日志。利用Collectd/Telegraf/QGA和一些plugin采集宿主机、交换机、虚拟机的负载和资源用量。这些探针都是分布在云中每个物理节点上的,这些信息弄到一起,下一步就是存储和分析。

我们的NSP主要面向云平台,因此存储和分析也在用云的能力解决云的问题——利用一堆线性扩展的虚拟机来存储和分析收集到的这些信息。对于一个虚拟机,大概是这样的

收集到的实时流数据,通过缓存、分发后由各个APP打上资源、租户的关联信息,进行实时处理。处理结果储存在两个地方:对于描述用量、状态、特征的信息,存储在时序数据库influxdb中,对于原始flow、日志等信息存储在全文检索引擎elasticsearch中。另外一部分是用于离线计算的,存储在hbase中。各自用于不同的目的。

简单来说,我们基于DFI和其它探针采集数据,然后基于EFK(Elasticsearch Fluentd Kibana)、TIGK(Telegraf InfluxDB Grafana Kapacitor)以及HBase/Spark等技术栈,构建起来一个分析平台。

当然云杉的强项不在于怎么做分析,而在于怎么高效的拿数据。因此分析这方面我们也有和工业界、学术界进行合作。目前我们的这个东西,管理员还是比较喜欢的。

这是其中的一个展现。请大家忽略杂乱无章的排布,这个我们还没做智能布局,不过管理员是可调的。我们能看到最近特定一段时间内,一个租户的业务网络中的通信状况:多少连接,多少不完整,质量如何。详细信息可以跳到这里:

俗话说好马配好鞍,就像发现APT光有高手还不行,还要有好工具。我们希望能做出这样好用的工具。至于规模,目前这套体系都是分布式的架构,可以线性扩展。

刚才我贴的那张网图,也能解决我开头提到的一些管理员困惑:一个lb后面挂2个web,为什么ios不能访问而android可以?如果lb和一台web之间是红的,那可能可以解释了:或许应用就是把ios负载到那台web上了。目前我们做了一些分析,比如:

好了,第一部分完事。

有了故障,管理员怎么搞。我们给出了四步

先说第0步:他不希望登陆任何一台kvm。 第一步:配置自动化检查。其实主要是网络层面的配置,虚拟、物理交换机的acl, vlan, qos, vtep等等。当然我们也有云平台,于是也做了计算和存储上的配置检查。

其实这一步没有太多难点,稍微复杂的在物理设备上,比如怎么比较数据库中的一堆策略和交换机上的一堆ACL是匹配的(也就是期望状态===实际状态)。

第二步:DPI。我们的监控是基于DFI的,但也不排斥DPI。当我们知道了问题可能的方向以后,DPI就能派上用场了。目前我们能做到的是将一个租户的多个虚拟机、虚拟网关等设备的特定流量dump下来,集中展示。但这个还不够,现在我们在把高级货往上用。高级货除了DPI盒子,还有wireshark,这个东西网管用的很溜,我们在做的事情就是把指定多个虚机的指定流量镜像到其中一台虚机上,然后管理员开个wireshark,可以干很多事。

第三步(也可能这是第二步):主动探测一下。前面其实已经提到一些主动探测的问题。首先管理员没密码不能进虚拟机,于是我们提供了在vswitch上模拟发包探测的方法,管理员可以指定探测源和目的,利用arping/ping/traceroute等进行无扰探测。如果这还不够,我们也支持tcp探测,但这可能会对虚拟机正常通信产生影响(比如和虚拟机正在进行中的端口号重了)

这一步也能解决很多问题。但解决的都是传统网络的问题,毕竟这些工具都有了好多年了。云网络中的特点是overlay。

那么第四步:他可以用我们的物理追踪工具,把二层网络中两个虚机通信路径上的所有点dump出来,包括:宿主机、tor、spine、二层安全设备等等。

这个东西真能解决问题,比如MLAG,要求两台交换机配置一致。但管理员其实挺野的,搞得不一致了。租户网络此时体现出来的现象非常奇怪,但用物理网络追踪工具,可以明显看到流量到了tor这个层面后,只有一条通路。

目前来看这几步走下来还是很有效的,当然我们也还在做一些新的东西,比如刚才提到的将分散的流量弄到一个DPI或wireshark上去。

Q&A

Q1:请问你们OVS是纯软件交换机吗?性能怎么样? 我们很早就做了一些内核层面的性能优化,目前也在尝试DPDK。

Q2:怎么去主动探测的?在ovs上构建流表? 对这里的ovs只指虚拟交换机open vswitch。物理设备的接入我们也用物理交换机。造包然后发出去,利用当下火热的golang,挺方便,并发效率也高

Q3:用OVS做软交换机,性能你们达到多少呀? 没有DPDK情况下小包应该是2G左右,大包没压力。

Q4:是不是要在所有的物理服务器上安装相关的agent? 是的,现在时髦的说法是————微控制器

Q5:请问在ovs上做ACL效率高,还是像传统的安全组做在linux bridge上? ovs,少了一跳,不过linux bridge有优点:可以搞带状态的。ovs实现带状态的比较麻烦,也是我们在做的一件事

Q6:如果用户不让你hook他的ovs,是不是就取不到这些数据了,也就没有然后了? 有然后,我们也能对IPFIX

Q7:vxlan 的vtep在哪里终结?有什么经验么? 这个问题容易引发群战。我的观点是中庸:像openstack那样做到服务器上vlan范围太小了,隧道太多了;像有些设备厂商那样仅在核心大柜子上支持,范围又太大了。我们选择在tor上终结,刚刚好

Q8:流量去重好做吗 哪方面去重?我们目前做了去重,在分析节点做的,因为一条flow可以在多个宿主机上看到。

Q9:ovs能维护多少规则呢?流表条数可以存那么多吗? ovs上流表条数倒是可以存很多,反正都是内存都是hash,但我们目前不会让它存太多,主要是降低运维复杂度。避免流表爆炸,一方面我们用到了pkt in,另一方面用了多级流表。

Q10:ovs现在已经支持conntrack了吧? 是的,在支持security group,带来的问题就是流表多。

Q11:如果在ovs构建流表,会和AC下发的冲突吗? 这里的AC是中央控制器吗?我们中控不会直接千里迢迢下流表。微控制器复杂proactive和reactive下流表。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-02-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 SDNLAB 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
智囊团:亓亚烜SDN分享的应用与实战
大家好,我是云杉网络亓亚烜,名字不好读,叫我yaxuan即可。今天主要跟大家交流下SDN与网络虚拟化的东西。希望多多提问,我会分享云杉的实战经验。 云杉网络主要帮助用户在云数据中心部署SDN解决方案,解决网络虚拟化、网络安全以及混合云管理的问题。 SDN的出现,源于2006年的Openflow技术。那时候第一次可以用API(Openflow协议)直接控制交换芯片上的流表,使得很多依赖复杂网络协议的应用都变得可以简单有效实现了。 SDN出现之前,网络行为的控制,需要通过网络设备上的控制平面实现,也就是CCIE
SDNLAB
2018/04/03
7250
SDN实战团分享(十三):SDN测量的研究尝试
各位前辈,大神好!我是张鹏飞,现在上海交大博士生在读,来自OMNILab。我的主要研究兴趣是SDN 网络测量和分析,今天厚着脸皮分享下我们在SDN测量方面的一些工作,希望能够得到大家的反馈意见,最好是批评。因为和业界接触没有那么多,如果分享的Idea有不切实际的地方,恳请大家指出来,谢谢! 网络测量方面,其实无论是SDN还是传统网络,都有很多成熟的工作和Solution,我们分享的工作的出发点,是探索在纯OpenFlow的条件下能否实现网络承载应用的性能测量,所以第一个关键词是SDN,第二个关键词是业务性能
SDNLAB
2018/04/03
9260
SDN实战团分享(十三):SDN测量的研究尝试
互联网十万个为什么之什么是vSwtich?
vSwitch(Virtual Switch,虚拟交换机)是一种在虚拟化环境中使用的网络交换设备,它模拟了物理交换机的功能,使虚拟机(VMs)之间以及虚拟机与物理网络之间可以进行通信。vSwitch是虚拟化基础架构的关键组成部分,作为虚拟网络的核心组件存在于主机系统上。
linus_lin
2024/09/25
1420
互联网十万个为什么之什么是vSwtich?
云数据中心网络运维的苦与乐
前几年大家讲 SDN 比较多的是怎样利用控制器,像 OpenDayLight、ONOS 这些东西,其实在讲怎样做一个 Driver、怎样做控制。大概从去年开始,SDN 开始跨入应用的时代,现在大家更多地在讲实际要做的事情、应用场景是什么。由于大家对 SDN 有多种不同的理解,在本文中我想把话题聚焦一下,落到云数据中心的网络运维这个点上,分享一些运维中的实际例子。没有大的篇章,只说说我们遇到的那些苦与乐。 因为本文话题的场景是云数据中心,所以我们有必要先看一下云数据中心里面的网络是什么样子。 简单来说
SDNLAB
2018/03/30
1.6K0
云数据中心网络运维的苦与乐
SDN Overlay技术白皮书(下)
5 SDN Overlay组网方案设计 Overlay控制平面架构可以有多种实现方案,例如网络设备之间通过协议分布式交互的方式。而基于VCF控制器的集中式控制的SDN Overlay实现方案,以其易于与计算功能整合的优势,能够更好地使网络与业务目标保持一致,实现Overlay业务全流程的动态部署,在业界逐步成为主流的Overlay部署方案。 5.1 SDN Overlay组网模型 图14 SDNOverlay组网模型 如上图所示,H3C的SDN Overlay组网同时支持网络
SDNLAB
2018/04/02
2.3K0
SDN Overlay技术白皮书(下)
【重识云原生】第四章云网络4.8.3.1节——Open vSwitch简介
        在过去十几年中,虚拟化已经改变了应用、数据、服务的实现部署方式。服务器的虚拟化给数据中心网络带来了根本性的变化。在传统的数据中心网络架构基础上,出现了一个新的、位于物理服务器内的接入层。这个新的接入层包含的设备是运行在x86服务器中的vSwitch,而这些vSwitch连接着一个服务器内的多个workload(包括容器和虚机)。
江中散人_Jun
2022/07/12
5.3K0
【重识云原生】第四章云网络4.8.3.1节——Open vSwitch简介
SDN实战团分享(十八):品高云的SDN实践
在讲SDN云网络之前,我们先来回顾一下,传统的云网络。先来一张图(自己画的) 传统的云网络我相信大家一定非常熟悉。我简单介绍一下传统云网络的一些特点。 特点: 绝大部分网络功能都是沿用Linux原生自
SDNLAB
2018/04/02
1.7K0
SDN实战团分享(十八):品高云的SDN实践
从 Bridge 到 OVS,探索虚拟交换机
Linux Bridge 和物理网络一样,虚拟网络要通信,必须借助一些交换设备来转发数据。因此,对于网络虚拟化来说,交换设备的虚拟化是很关键的一环。 上文「网络虚拟化」已经大致介绍了 Linux 内核为了满足网络虚拟化的要求,实现了一套虚拟交换设备——Bridge。本文重点介绍下 Bridge 的加强版——Open vSwitch(OVS),并从 Bridge 过渡到 OVS 的缘由讲起,让大家有个全面的认识。 借助 Linux Bridge 功能,同主机或跨主机的虚拟机之间能够轻松实现通信,也能够让虚拟机
Linux云计算网络
2018/01/11
3.4K0
从 Bridge 到 OVS,探索虚拟交换机
KVM+OpenvSwitch虚拟交换机
为了使虚拟机与外部进行网络通信,需要为虚拟机配置网络环境。KVM虚拟化支持Linux网桥、Open vSwitch网桥等多种类型的网桥。如图所示,数据传输路径为"虚拟机 -> 虚拟网卡设备 -> Linux网桥或Open vSwitch网桥 -> 物理网卡"。
Kevin song
2023/12/12
1.7K0
KVM+OpenvSwitch虚拟交换机
SDN 技术指南(四):Open vSwitch
由之前发布的文章知道 Open vSwitch(Open Source Virtual Switch) 是一款基于软件实现的开源虚拟交换机。
RiboseYim
2018/01/13
2.7K0
openstack网络设计-(一)试探
openstack的api只能扩展并且向前兼容,不能影响已经开发的云管和监控等业务。
惠伟
2021/02/24
1.5K0
SDN实战团分享(四):从SDN鼻祖Nicira到VMware NSX 网络虚拟化平台的简单探讨
大家好,我叫范恂毅,现在在阿尔卡特朗讯企业通信(ALE)担任售前。我首先说明一句,我的公司,我们的业务,与VMware NSX没有直接关系。我研究NSX技术,纯粹是兴趣——我最早接触SDN时,得知了SDN的理念和Openflow协议都来自一个叫Nicira的公司,这个公司还是Open vSwitch的开发者。那时候,Nicira已经被VMware收购了。我个人认为Nicira技术才是最纯粹最原生态的SDN和网络虚拟化。因此,VMware收购Nicira一年后,推出NSX解决方案后,我就一直在研究它。群里绝大
SDNLAB
2018/04/03
2.2K0
SDN实战团分享(四):从SDN鼻祖Nicira到VMware NSX 网络虚拟化平台的简单探讨
SDN实战团分享(三):Docker网络使用体验
我今天和大家分享一下Docker的网络,主要是基于我的使用体验和对这里面的一些技术的理解,也顺便听取一下大家的建议。我是做培训的,大多数时候和理论的东西打交道, 顺便做一些实验,为了讲课的时候不那么虚
SDNLAB
2018/04/03
1.2K0
SDN实战团分享(三):Docker网络使用体验
理解Neutron(3):Neutron Open vSwitch + GRE/VxLAN 虚拟网络
特别说明:本文于2015年基于OpenStack M版本发表于本人博客,现转发到公众号。因为时间关系,本文部分内容可能已过时甚至不正确,请读者注意。
SammyLiu
2019/06/28
2K0
理解Neutron(3):Neutron Open vSwitch + GRE/VxLAN 虚拟网络
Neutron 理解 (1): Neutron 所实现的网络虚拟化
特别说明:本文于2015年基于OpenStack M版本发表于本人博客,现转发到公众号。因为时间关系,本文部分内容可能已过时甚至不正确,请注意。
SammyLiu
2019/06/28
3.6K0
Neutron 理解 (1): Neutron 所实现的网络虚拟化
SDNLAB技术分享(八):Neutron的基本原理与代码实现
一、Openstack网络基础 下面对Openstack和Neutron的介绍,要从几个关键词入手。 1. 三代网络 在网络这一口,OpenStack经历了由nova-network到Quantum再到Neutron的演进过程。我们直观地来看看三代网络的对比分析: 1)Nova-network是隶属于nova项目的网络实现,它利用了linux-bridge(早期,目前也支持OVS)作为交换机,具备Flat、Flat DHCP、VLAN三种组网模式。优点是性能出色,工作稳定,支持mu
SDNLAB
2018/04/02
2.3K0
SDNLAB技术分享(八):Neutron的基本原理与代码实现
SDN实战团分享(二十八):VMware NSX技术分享
Vmware是虚拟化技术的先驱者,其强大的计算虚拟化产品已经深入了各行各业的日常使用中。当然,如果没有网络虚拟化的支撑,计算的虚拟化是根本玩不转的。 Vmware最早的虚拟化产品是Vmware Workstation,在PC OS的基础上提供了桌面级的虚拟机,其网络环境比较简单,基本的需求就是虚拟机之间要能够通信,另外虚拟机也可能需要和外界通信。VMnet作为Vmware Workstation中的虚拟交换机,提供了3种网络模式:host-only/nat/bridge。Host-only模式就是只允许虚拟
SDNLAB
2018/03/30
2.5K0
SDN实战团分享(二十八):VMware NSX技术分享
SDN实战团分享(三十):Big Switch的技术颠覆
SDN的出现给了网络界一针强有力的“兴奋剂”,释放了网络界压抑已久的创新的能量。这一波技术思潮催生了大量的SDN创业公司,对各大厂商发起了巨大的冲击,网络领域的生态链可能面临着彻底的重构。2012-2015年,SDN创业的主战场是数据中心虚拟化,2015年已经开始转向广域网专线。数据中心SDN第一阶段的拼杀基本已经结束了,经过市场的整合,大部分startup都投入了大厂商的怀抱,只剩下少数的几家仍然在市场上独立打拼着,随着Plumgrid在2016年底被Vmware收购,控制器这块主要就剩下了BigSwit
SDNLAB
2018/03/30
1.4K0
SDN实战团分享(三十):Big Switch的技术颠覆
SDN私享汇(十三):DCFabirc控制器实现高级OpenStack网络功能
DCFabirc的主要特性和基于DCFabric的OpenStack网络的高性能优势。DCFabric的最新版本“秦”在峰会上正式发布,新版本主要在多线程优化、网络连接管理、内存管理、主备集群数据同步
SDNLAB
2018/03/29
8210
SDN私享汇(十三):DCFabirc控制器实现高级OpenStack网络功能
思华SDN技术在盛大游戏G云2.0中的应用
在当今云计算、人工智能、大数据平台等一系列颠覆性的技术创新背后,软件的价值被前所未有的推向高峰,“软件吞噬一切”在整个IT行业中盛行,几十年沉淀下来的网络也未能幸免。各大标准组织和学术派争先恐后的制定网络行业标准,试图打破传统网络的技术限制和商业壁垒,用标准软件来定义功能,用通用硬件来承载软件,最终为用户带来物美价廉、互通性高、可持续性升级换代的新一代网络解决方案。 SDN应运而生,提出了将网络控制平面和转发平面解耦,采用相对集中式的控制器替代原有分布式控制,通过开放的可编程接口实现“软件定义”。这种
SDNLAB
2018/06/11
7050
推荐阅读
相关推荐
智囊团:亓亚烜SDN分享的应用与实战
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档