【LC3开源峰会网络技术系列之三】基于JStorm的网络分析平台

本文涉及的产品
私网连接 PrivateLink,5万GB流量 1.5万小时实例时长
传统型负载均衡 CLB,每月750个小时 15LCU
全球加速 GA,每月750个小时 15CU
简介:

国际知名开源社区Linux基金会主办的开源大会LinuxCon + ContainerCon + CloudOpen China 2018(LC3)于6月25日在北京开幕。今年阿里云作为白金合作伙伴亮相本次中国开源盛会,这篇文章是网络团队分享系列第三篇。

摘要这篇文章介绍了阿里云网络团队在做网络分析方向上的一些实践,包括了如何基于实时计算搭建整个平台以及其中重点解决的几个场景。

主讲人吕彪 阿里云高级技术专家

主题JStorm based Network Analysis Platform

分论坛Network & Orchestration

34465cbedefe4cad83a09fd938b9d05baf26c475

项目背景

随着阿里云的快速发展,目前其业务已经覆盖全球18region,服务了超过100多万的客户。不仅如此,阿里云还支撑了像双11这样的活动,对它的弹性,调度,以及稳定性都有很大的挑战。而在网络业务发展的背后是越来越复杂网络技术体系,比如SDN,现在整个阿里云网络全部SDN化了,所有的云网络设备都完全通过我们从业务到北向以及南向的API进行管理和配置,而网络本身也划分为OverlayUnderlayUnderlay这块主要是物理的交换机,路由器,Overlay这块为用户提供了弹性,灵活的各种虚拟网络功能;然后我们还有NFV, RDMA, SD-WAN等等。 整个网络变得越来越复杂 。

c2f31abbb682e32c76213b1b3d12ccbb6f785b2c

让网络更加简单

虽然我们有这么复杂的技术体系,有这么大规模的挑战,我们还是希望我们的网络能更稳定,更简单,更好用的。我们希望每一次网络的升级都是用户无感的,当任何设备出现问题时我们能提前用户发现问题,并且能非常精确得定位到出问题的节点,最后,我们希望我们对网络有非常丰富,多维度的了解,这对我们自己以及用户在运维和运营这张网络时非常有帮助。Network as a Service,我们希望我们的网络能像简单灵活的服务一样,需要的时候就能连接上。

b2d16a4ba128ddf1606ecb2ac419cd9bb368b58a

如何做到网络的规模在这样持续增长的情况下仍然能够保持简单,高效。自动化肯定是需要做的,但是在自动化的基础上我们希望能让系统承担更多的事情,把更多决策闭环掉,并且在整个网络生命周期中减少人的干预,让另一套系统而不是我们用户和网络运维人员去和控制器打交道。我们的用户和网络运维人员是如何做决策的呢,他们依赖的是数据。基于这些数据以及他们的判断来形成决策,所以数据是组成这个闭环的最后一个环节。右图里就是我们目前的设想,基于各种网络运行过程中生成的数据系统自动化的生成策略,这些策略提交给控制器形成对网络的配置管理,网络在过程中又会产生新的数据。在这个系统上我们完成从网络更新,网络监控,网络画像,网络诊断,以及异常恢复等多个场景的闭环。

3ab271e2bcf99988c989ec1189ccee1c3712552d

齐天-基于JStorm的网络分析平台

按照这个思路,我们设计并实现了一套网络分析平台,我们给这套平台取了一个很好听的名字,叫齐天,希望能从天空的角度去看我们整张网络。

8c79d975aaf7e841f549981c840e35507ae134ca

整个平台大致可以分为三层,最底下这一层是数据源,包括了来自网络设备和业务服务采集出来的各种数据。往上是我们的实时数据分析层,从左往右看,第一个是我们的基础数据分析,包括将DB数据清洗,ETL,通用的数学计算,基础数据分析是右边所有数据分析的前提,它将原始 的数据转换为格式标准的数据 。第二个是我们的网络监控分析,用于发现网络当中的可疑异常。它分为三个部分,监控策略,网络事件,和异常通知。分别消费基础数据,初级网络异常,以及融合网络事件,最终产生可疑事件记录和告警。第三个是我们的网络诊断,用于发现问题时定位具体问题原因的。它能对每个数据报文进行处理和分析,并且计算出来报文的流量路径,并找到这条路径上出问题的网络设备以及具体问题的原因。第四个是我们的网络调度,这一部分目前最重要一个用途还是在出现故障时流量调度策略来恢复故障 。最后一个是我们的网络画像,它用于我们网络资源的规划和调度,也用于我们产品成本和营收的核算 。整个实时分析层是基于JStorm引擎开发的,它并不是一个独立的应用,而是众多JStorm任务的集合。

最上面是我们数据分析的输出,这里我们有流式的数据输出,也支持API的数据提取。这两者主要是对接其他的系统,比如我们的SDN控制器会消费齐天产生的策略数据,用于管理和配置网络设备,但对于我们的研发,售后来说他们需要更直观的数据呈现 。最后是我们开发的一个钉钉机器人,你可以问他最近某个集群的告警情况,也可以问某个用户实例的运行情况。这个机器人也有一个好听的名字,叫大圣,所以和我们平台的名字连在一起就是齐天大圣。接下来我会自下而上的分别从数据来源,分析性能,实时监控,网络诊断,智能调度以及多维度网络画像为大家深入介绍整个平台。

实时网络监控

齐天的整个监控体系是基于JStorm的流计算引擎开发的。还是从数据流的角度来看一下整个系统怎么处理的。最左边仍然是网络设备,它采集到的原始数据经过一些基本的ETL以及聚合之后变成了包含多维度信息以及网络流量信息流数据,这份数据会被我们的一个被称为监控策略任务的JStorm Topology消费,监控策略任务会包含各种监控策略,每一种策略会从不同维度去识别异常。目前我们支持三种策略,指标波动,区间预测,以及事件统计。 说完了策略,那么后面紧跟着的就是一个被称为事件合并的JStorm任务。这个任务的作用是把策略任务产生的各种事件按用户以及网络拓扑的维度合并。 实时监控的最后一个环节是通知中心,这里主要是根据不同类型,不同严重程度的网络事件进行不同方式的通知,目前支持邮件,短信,应用消息等。每一个通知会非常清晰的描述出来问题的时间和影响范围,帮助研发做判断。

1229d56e34a9acc81c0af1a9adf2058d7c28d33f 

基于流计算的网络诊断

接下来我们来看看齐天是如何基于流计算来做网络诊断的。当用户的流量出现异常的时候,曾经是通过抓包或者traceroute等工具去定位,但是这种方式一方面效率低,另一方面在Overlay网络下很难达到效果。为此,我们的网络设备利用报文染色的方法,将染色后的报文采集到SLS日志中,再由JStorm任务来分析这些报文,最终可以定位出来导致问题的设备节点。

335e993313bbab3735f947bb5cbb87a352dcc253

智能网络调度

如何恢复出现问题的网络就是我们下一个系统需要去解决的事情。目前的网络问题主要以服务器上虚拟机出现的网络异常和我们的分布式虚拟网关异常为主,当前者出现问题时我们需要快速的定位出来可以迁移的目标服务器,然后快速将虚拟机迁移过去,后者出现问题时我们需要快速定位出来可以引流的新的虚拟网关组,并把流量引导过去。虚拟机的迁移是一个综合评估体系,作为网络我们会提供可选的交换机及服务器给虚拟机调度系统做决策。而虚拟网关的流量迁移是网络内部闭环的逻辑 。

e1c3532310f50a3d15f4707701e3c724e25e01a6

多维度网络画像

最后一块是我们的多维度网络画像,它其实有两部分组层,一部分是实时计算,这里在JStorm上完成的,另一块是离线计算,我们基于Max-Compute开发的一些离线分析任务进行最后的多维度网络画像。网络画像是我们进行网络产品运营的重要手段。在这个平台里,我们结合了产品的售卖,资源的消耗,实际的成本以及用户画像来帮助我们每个产品做运营上的决策。比如分析用户的资源部署情况,了解我们和运营商直接的网络成本使用情况等。

2066f731522ec4f79e1933cfa4b386c2e493ffbc

总结

以上是目前齐天平台所提供的服务,而接下来我们会在智能分析上进一步演进,让我们更快的了解状况,更精确得定位原因,更智能的调度流量。 这会让阿里云网络的变得更聪明,更高效,帮助我们实现让我们网络更简单的使命。

 

 

目录
相关文章
|
2月前
|
安全 物联网 物联网安全
量子通信网络:安全信息交换的新平台
【10月更文挑战第6天】量子通信网络作为一种全新的安全信息交换平台,正逐步展现出其独特的优势和巨大的潜力。通过深入研究和不断探索,我们有理由相信,量子通信网络将成为未来信息安全领域的重要支柱,为构建更加安全、高效、可靠的信息社会贡献力量。让我们共同期待量子通信网络在未来的广泛应用和美好前景!
|
3月前
|
XML 网络协议 物联网
基于surging的木舟IOT平台如何添加网络组件
【8月更文挑战第30天】在基于 Surging 的木舟 IOT 平台中添加网络组件需经历八个步骤:首先理解 Surging 及平台架构;其次明确组件需求,选择合适技术库;接着创建项目并配置;然后设计实现网络功能;再将组件集成至平台;接着进行详尽测试;最后根据反馈持续优化与维护。具体实施时应参照最新文档调整。
65 10
|
3月前
|
缓存 算法 物联网
基于AODV和leach协议的自组网络平台matlab仿真,对比吞吐量,负荷,丢包率,剩余节点个数,节点消耗能量
本系统基于MATLAB 2017b,对AODV与LEACH自组网进行了升级仿真,新增运动节点路由测试,修正丢包率统计。AODV是一种按需路由协议,结合DSDV和DSR,支持动态路由。程序包含参数设置、消息收发等功能模块,通过GUI界面配置节点数量、仿真时间和路由协议等参数,并计算网络性能指标。 该代码实现了节点能量管理、簇头选举、路由发现等功能,并统计了网络性能指标。
176 73
|
24天前
|
安全 Linux 网络安全
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
94 5
|
24天前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
68 3
|
2月前
|
网络协议 物联网 虚拟化
|
25天前
|
网络协议 Unix Linux
精选2款C#/.NET开源且功能强大的网络通信框架
精选2款C#/.NET开源且功能强大的网络通信框架
|
2月前
|
人工智能 关系型数据库 数据中心
2024 OCP全球峰会:阿里云为代表的中国企业,引领全球AI网络合作和技术创新
今年的OCP(Open Compute Project)峰会于2024年10月14日至17日在美国加州圣何塞举行,在这场全球瞩目的盛会上,以阿里云为代表的中国企业,展示了他们在AI网络架构、液冷技术、SRv6和广域网等前沿领域的强大创新能力,持续引领全球合作与技术创新。
|
3月前
|
机器学习/深度学习 人工智能 算法
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
文本分类识别系统。本系统使用Python作为主要开发语言,首先收集了10种中文文本数据集("体育类", "财经类", "房产类", "家居类", "教育类", "科技类", "时尚类", "时政类", "游戏类", "娱乐类"),然后基于TensorFlow搭建CNN卷积神经网络算法模型。通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型,并保存为本地的h5格式。然后使用Django开发Web网页端操作界面,实现用户上传一段文本识别其所属的类别。
101 1
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
3月前
|
机器学习/深度学习 人工智能 算法
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台。果蔬识别系统,本系统使用Python作为主要开发语言,通过收集了12种常见的水果和蔬菜('土豆', '圣女果', '大白菜', '大葱', '梨', '胡萝卜', '芒果', '苹果', '西红柿', '韭菜', '香蕉', '黄瓜'),然后基于TensorFlow库搭建CNN卷积神经网络算法模型,然后对数据集进行训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地文件方便后期调用。再使用Django框架搭建Web网页平台操作界面,实现用户上传一张果蔬图片识别其名称。
65 0
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台