UCloud大规模数据中心网络管理系统建设之路 (ucloud公司简介)

教程大全 2025-07-19 16:18:41 浏览

UCloud大规模数据中心网络管理系统建设之路

2018-11-30 15:30:38为了应对大规模数据中心的网络配置自动下发、运维效率提升、混合云网络实时打通等需求,UCloud团队研发上线了物理网络编排器(以下简称编排器)。

为了应对大规模数据中心的网络配置自动下发、运维效率提升、混合云网络实时打通等需求,UCloud团队研发上线了物理网络编排器(以下简称编排器)。它是网络运维自动化建设的基础应用系统,为网络运维人员提供一个简单易用的网络设备配置工具,使之从繁琐的交换机命令编写中获得解放,并具备足够的准确性、稳定性和安全性。

基于此系统,数据中心建设时上万规模级别IDC的网络建设周期由原先的2-3天缩短至2-3小时,且上线成功率也从此前的80%提高到99%。上线至今,该系统已成功服务于3000余台交换机,维护了100条以上的运营商专线。其所承载的网络接入吞吐达200G,DCI(数据中心内部互联)吞吐接近2T左右,并能支持混合云业务在用户控制台的网络实时打通等(物理接线除外)。

难点分析

传统网络部署主要通过人工配置的方式实现。当网络达到一定规模时,采用人力堆砌的方式效率低下不说,大量的配置命令,也容易导致较高的上线错误率。结合公司目前的情况,在分析业界开源的配置下发方案后,我们决定采用基于Python with NAPALM (Python module)方案自建一套业务配置下发系统,这套系统的内部codename为XUANWU(中文玄武)。

NAPALM模块底层的配置下发系统(比如Ansible、Paramiko、Salt)虽然是通用的,但目前只有主流的厂家才支持对应的库,一些二线品牌的厂家支持的并不完善,需要自研。寄希望厂家提供丰富和标准的配置下发API是不太切实的奢望,我们要结合业务开发一套适用于UCloud的配置下发系统。

通过分析,我们发现,如果要开发一套基于业务的网络编排器,必须要解决以下障碍:

1. 同一个底层,命令不同的设备厂家提供的配置命令不一样。如创建一条静态路由,同样一个需求,锐捷的命令是“ip route 0.0.0.0 0.0.0.0 1.1.1.1”,而华为的命令是“ip route-static 0.0.0.0 0.0.0.0 1.1.1.1”;

2. 同一款设备型号,由于软件版本不同,实现同一个功能的命令组合不同。如华为的CE6851-48S6Q-HI设备,同样实现tunnel创建这功能,当版本<=V1R2时,tunnel口需要绑定一个service_type为tunnel的聚合口来激活,而之后的版本,就不需要绑定了;

3. 不同厂家设备,实现同一个需求的配置模式不一样。如将交换机物理口划入某聚合口配置需求下,华为只需要将物理口绑定抽象出来的聚合口即可继承聚合口下所有属性,而H3C则要在物理口下将聚合口的属性配置再配置一遍。

这些形形色色、大大小小的人能解决的问题却让自动化举步维艰,要想实现网络配置自动化,首先必须将这些问题总结抽象成具体的场景,然后通过分级归类来规避差异。

编排器架构及业务模型搭建

经过内部多次的讨论和归纳,我们发现真正业务调用网络的,是一个一个具体的场景,这些场景能够实实在在满足具体需求,如一个业务的需求是打通托管到公有云的路由,那么实际上网络实现的就是静态路由的下发,静态路由下发就成了一个配置场景。

这里,需要注意的是场景是不关心设备厂家的,因此就会衍生出两个问题:1、配置命令的差异;2、配置模式的差异。我们需要将这两层抽象出来处理,经过测试和抽象,我们设计了业务模型的网络配置下发系统:

图1:UCloud基于场景的网络配置下发系统架构图

以一个具体的API创建过程为例,首先录入设备的软硬件版本,将软件和硬件组合为一个单位,按照原子命令规范抽象出一层GROUP组,每一个GROUP为一个原子命令录入标准,接下来按照命令功能为单位关联一条或者多条原子命令。

具体构成关系图如下:

图3:API-场景-模板-命令功能对应表

场景中涉及到的命令功能创建完成后,通过前端编排创建模板,并结合实际属性自动生成场,由此K-V的API模型基本就落成了。但是此时的创建只能关联一个具体的设备类型的场景,如果其它场景有其它设备,API就无法生效了。因此还需要将多个关联了GROUP组的场景加入大场景组中以大API的方式暴露出去,至此该API就能兼容多厂家的配置命令了。

设计与优化实践

考虑到现网的特殊性,需要编排器具备较高的准确性、稳定性和安全性。为满足以上特性,整个系统在架构设计、代码开发过程中也做了系列调优实践。

1. 基于Kafka的命令执行队列设计

编排器需要面向公司所有在用机房按照一定的业务应用场景(以下简称场景)进行交换机配置命令的下发。以IDC机房作为空间维度,配置命令的执行先后顺序作为时间维度,每个场景的执行必须做好时序控制,兼顾空间和时间维度。

为了保障配置指令的准确执行到位,我们采用了基于Kafka的命令执行队列设计,Kafka消息队列的主题(Topic)分类特性和消息队列生产消费特性可以很好的兼顾指令下发队列模块对时序控制的需求。主题分类特性可用于处理IDC机房的空间维度,消息队列生产消费特性则对应指令执行的时间维度。

在实际应用过程中,通过对业务场景进行解析,将交换机配置指令按照IDC机房生产至对应的Kafka主题,同一个IDC机房的配置指令将以交换机为单位,按照执行的先后顺序生产至对应的主题。

图4:基于Kafka的命令执行队列设计

通过利用Kafka的两大特性,结合系统的业务场景解析逻辑,我们最终实现了交换机配置指令的时空维度控制,确保指令的准确送达。系统上线后运行至今,未出现过配置指令误发、错发的情况。

2. 集群、主备与主主设计的应用

作为网络运维自动化建设的基础系统,后期将面向更多部门开放部分或全部功能,因此,编排器服务的稳定性尤为重要。系统考虑了在使用集群化等高可用技术上的各种环节,制定了以下稳定性提升设计方案:

1. Zookeeper集群(基本操作);

2. Kafka集群(基本操作);

3. Kafka消费者集群:在每个IDC机房部署Kafka消费者集群,确保配置指令消息的稳定消费并执行;

4. MySQL数据库1主2备:数据库读写分离,主库只接受写操作,从库只接受读操作,降低主库负载,提高数据库服务稳定性;

5. Webserver主主:提供两台web后台 服务器 ,通过Nginx代理实现负载均衡,结合数据库的双备设计,实现API请求及数据库读操作的均衡分配。

通过集群化、主备、主主设计,编排器提供的Web服务变得更加稳定,配置指令消息队列也更加可靠。系统上线后运行至今,未出现过因web服务器或消息队列宕机导致的服务不可用情况。

3. 权限设计

系统涉及现网交换机的变更操作,每个业务场景的执行均会对现网产生影响,适当的权限管理也非常重要。系统从2个层面对操作者权限进行限制,并启用后端token认证:

1. API权限:涉及数据库的增、删、改、查,以及业务场景的下发(回滚)操作,通过1对1的API权限划分进行管理;

2. 菜单权限:涉及菜单层级的UI界面操作,对前端操作页面的菜单项进行权限划分和管理;

3. Token认证:后端调用API时将进行Token认证,Token与操作者一一对应,责任到人。

图5:token认证流程

通过权限认证,可以规范了使用者的操作习惯,强化使用者的安全意识,最终提高整个系统的安全性。

4. 指令下发实时反馈

传统人工配置模式下,每一位网络运维工程师必须要登录到对应的交换机才能进行配置指令下发,同时观察交换机回显信息进行指令执行结果确认。为了重现这一过程并提供更友好的信息提示效果,系统集成了指令执行结果实时展示功能,并提供执行结果详细信息查询,供网络运维工程师参考决策。

具体实现方式为,编排器前端界面在业务场景执行过程中,系统提供两种方式的执行结果信息展示:

1. 执行状态:将每一条指令的执行状态分为下发成功、下发失败、即将回滚、回滚成功、回滚失败以及登录失败6种,并在业务场景下发过程中通过不同边框颜色进行实时展示。

图6:指令执行状态说明

图7:指令执行状态显示界面

2. 指令执行回显信息:大部分指令执行之后交换机都会有回显信息提示,系统自动抓取交换机回显信息并反馈到前端,为操作者提供参考。

图8:指令执行回显信息展示

这种图形颜色及回显信息展示,可以实时反馈配置指令的执行效果,为网络运维工程师提供参考,在提高自动化水平的同时提升操作反馈体验。

5. 原子命令库的建立

公司在用交换机主要有HW、H3C和RUIJIE三大品牌,各大品牌交换机之间配置指令存在较大差别。同时,每个品牌下面的交换机又可分为若干型号,不同型号之间部分指令也存在一定的区别。

为了兼容公司在用的所有交换机,需要对所有交换机型号进行统一管理,同时根据不同交换机型号进行配置指令录入,做好分类管理。基于以上背景及需求,系统搭建了原子命令库,原子命令库包括以下几个子库:

通过建立原子命令库,可以将公司所有在用交换机及其适用的配置指令进行了统一分类管理。而交换机组的设计,可以将配置指令相同的交换机归入同一组,同组设备共享原子命令,极大减少了录入原子命令的工作量。此外,通过建立原子命令功能、参数模板库,可以将原子命令录入方式标准化,为业务场景编排打好基础。

6. API开放和二次开发

系统提供了原子粒度的交换机操作API,不仅支持现有的网络运维操作,也可作为外部调用组件支持相关的二次系统开发。同时,通过提供统一且精细分类的API入口,可以实现现网交换机操作的集中管理,提高现网安全性。目前已为盘古系统(UCloud服务器自动交付系统)、UXR项目提供底层调用API,支撑系统开发及相关业务开展。

最后

经过联调测试,我们已将该系统应用到多个业务场景中,且都有不错的表现。通过网络自动编排系统,我们将数据中心建设业务中,上万规模级别IDC的网络建设周期从原先的天缩短为小时。此外,上线成功率也从原先的80%提高到99%。在混合云业务打通中,虚拟网络的业务逻辑也能通过用户的控制台操作实时打通(物理接线除外)。


DMS 系列的功用有哪些?

完全满足管理的经济性要求a 充分考虑企业运营的经济性,总部、分支机构均可在本地局域网实现管理操作,无须专门设置宽带联网;b 总部及各分支机构无须时刻与网络连接,大力减少不必要开支;c 投资巨大的企业数据中心给用户带来了高效的数据传输便利,满足了企业以最小的代价实现最快速的传输要求;d 大容量的网络客户数据中心平台,企业无须专门设置服务器,极大地降低硬件购置及网络维护的成本;确保数据的及时性分散与集中实现完美结合a 确保数据的及时性完全由您掌握;b 总部、分支机构独立的数据库与网络客户数据中心的完美结合,实现异地数据查询、数据寄存、数据调用、数据分析等等网络环境的及时操作;c 实现网络数据的增量存储,总部可通过网络数据中心平台查询最及时的企业数据、信息;确保分支与总部的统一管理下的独立运作a 实现分支数据、资料完全与总部统一,分支机构无须重复设置;b 分支机构进行独立的进销存、财务一体化的管理;c 根据总部要求,实现对不同类型分支机构业务、财务运作的控制。 客户网络数据中心平台网络数据中心平台的构筑,应用国际最先进的虚拟网络技术,使速达DMS在功能上得以无限延伸,实现企业跨地域的管理,同时满足企业对网络通信及安全的要求。 对于网络通信,将从其易维护、速度、成本、扩展能力予以衡量。 并从网络、用户、数据等多方面保证安全要求。 a 网络客户数据中心平台充分考虑数据的安全性、稳定性、高效性、大容量;b 确保企业数据的及时性,使企业领导无论身处何地均可随时随地了解企业总部动态,任意分支机构的运作情况;c 数据中心平台使分布式管理功能得以无限扩充,更多的创新功能将不断地减轻企业管理的压力;d 专业的技术人员、高性能的专业设备保证网络及服务器系统具有抗攻击能力,防止外界的干扰和破坏;e 严格的用户认证机制,并通过严密的权限过滤机制,保证用户在其授予的权限内访问和管理系统;f 代表了当今网络发展的最新趋势,它综合了传统数据网络的性能优点(安全和 QoS )和共享数 据网络结构的优点(简单和低成本),能够提供远程访问,外部网和内部网的连接。

哪一种记忆是信息加工系统的核心?

短时记忆(STM)也称工作记忆,是信息加工系统的核心。 在感觉记忆中经过编码的信息,进入短时记忆后经过进一步的加工,再从这里进入可以长久保存的长时记忆。

电脑应用有哪些?举例电脑给我们学习和生活带来了哪些帮助?

计算机网络应用 --企业信息网络 ●企业信息网络是指专门用于企业内部信息管理的计算机网络,它一般为一个企业所专用,覆盖企业生产经营管理的各个部门,在整个企业范围内提供硬件、软件和信息资源的共享. ●根据企业经营管理的地理分布状况,企业信息网络既可以是局域网,也可以是广域网,既可以在近距离范围内自行铺设网络传输介质,也可以在远程区域内利用公共通信传输介质,它是企业管理信息系统的重要技术基础。 ●在企业信息网络中,业务职能的信息管理功能是由作为网络工作站的微型计算机提供的,进行日常业务数据的采集和处理,而网络的控制中心和数据共享与管理中心由网络服务器或一台功能较强的中心主机实现,对于分布于广泛区域的分公司、办事处、库房等异地业务部门,可根据其业务管理的规模和信息处理的特点,通过远程仿真终端、网络远程工作站或局域网远程互连实现彼此间的互连。 ●目前,企业信息网络已成为现代代企业的重要特征和实现有效管理的基础,通过企业信息网络,企业可以摆脱地理位置所带来的不便,对广泛分布于各地的业务进行及时、统一的管理与控制,并实现全企业范围内的信息共享,从而大大提高企业在全球化市场中的竞争能力。 企业信息网络实例: 计算机网络应用 --联机事物处理 ●联机事务处理是指利用计算机网络,将分布于不同地理位置的业务处理计算机设备或网络与业务管理中心网络连接,以便于在任何一个网络节点上都可以进行统一、实时的业务处理活动或客户服务。 ●联机事务处理在金融、证券、期货以及信息服务等系统得到广泛的应用。 ●例如金融系统的银行业务网,通过拨号线、专线、分组交换网和卫星通信网覆盖整个国家甚至于全球,可以实现大范围的储蓄业务通存通兑,在任何一个分行、支行进行全国范围内的资金清算与划拨。 ●在自动提款机网络上,用户可以持信用卡在任何一台自动提款机上获得提款、存款及转帐等服务。 ●在期货、证券交易网上,遍布全国的所有会员公司都可以在当地通过计算机进行报价、交易、交割、结算及信息查询。 此外,民航订售票系统也是典型的联机事务处理,在全国甚至全球范围内提供民航机票的预订和售票服务。 计算机网络应用 --POS系统 POS(Point Of Sales)系统是基于计算机网络的商业企业管理信息系统,它将柜台上用于收款结算的商业收款机与计算机系统联成网络,对商品交易提供实时的综合信息管理和服务。 ●商业收款机本身是一种专用计算机,具有商品信息存储、商品交易处理和销售单据打印等功能,既可以单独在商业销售点上使用,也可以作为网络工作站在网络上运行。 ●POS系统将商场的所有收款机与商场的信息系统主机互连,实现对商场的进、销、存业务进行全面管理,并可以与银行的业务网通信,支持客户用信用卡直接结算。 ●POS系统不仅能够使商业企业的进、销、存业务管理系统化,提高服务质量和管理水平,并且能够与整个企业的其他各项业务管理相结合,为企业的全面、综合管理提供信息基础,并对经营和分析决策提供支持。 计算机网络应用 --电子邮件系统 ●电子邮件系统是在计算机及计算机网络的数据处理、存储和传输等功能基础之上,构造的一种非实时通信系统。 ●电子邮件的基本原理是:在计算机网络主机或服务器的存储器中为每一个邮件用户建立一个电子邮箱(开辟一个专用的存储区域),并赋予一个邮箱地址,邮件发送者可以在计算机网络工作站(如PC机)上,进行邮件的编辑处理,并通过收件人的电子信箱地址表明邮件目的地;邮件发出后,网络通信设备根据邮件中的目的地址,确定最佳的传输路径,将邮件传输到收件人所在的网络主机或服务器上,并存入相应的邮箱中;收件人可随时通过网络工作站打开自己的邮箱,查阅所收到的邮件信息。 ●先进的电子邮件系统可以提供“文本信箱”、“语音信箱”、“图形图象信箱”等多种类型的电子邮政功能,支持数据、文字、语音、图形、图象等多媒体邮件,并且可以将各种各样的程序、数据文件作为邮件的附件随电子邮件发送。 因此可以构造许多基于电子邮件的网络应用。 ●目前,全球范围内的电子邮件服务都是通过基于分组交换技术的数据通信网提供的。 随着网络能力的提高和网络用户的增加,电子邮政将逐渐替代传统的信件投递系统,成为人们广泛应用的非实时通信手段。 计算机网络应用 --电子数据交换系统 ●电子数据交换系统(Electronic Data Interchange,简称EDI)是以电子邮件系统为基础扩展而来的一种专用于贸易业务管理的系统,它将商贸业务中贸易、运输、金融、海关和保险等相关业务信息,用国际公认的标准格式,通过计算机网络,按照协议在贸易合作者的计算机系统之间快速传递,完成以贸易为中心的业务处理过程。 ●由于EDI可以取代以往在交易者之间传递的大量书面贸易文件和单据,因此,EDI有时也被称为无纸贸易。 ●EDI的应用是以经贸业务文件、单证的格式标准和网络通信的协议标准为基础的。 商贸信息是EDI的处理对象,如订单、发票、报关单、进出口许可证、保险单和货运单等规范化的商贸文件,它们的格式标准是十分重要的,标准决定了EDI信息可被不同贸易伙伴的计算机系统所识别和处理。 EDI的信息格式标准普遍采用联合国欧洲经济委员会制订并推荐使用的EDIFACT标准。 ●EDI适用于需处理与交换大量单据的行业和部门,其业务特征是交易频繁、周期性作业、大容量的数据传输和数据处理等。 目前EDI在欧洲、北美、大洋洲及亚太地区的日本、韩国和新加坡等国家应用相当普及,有些国家已明确规定,对使用EDI技术的进口许可证、报关单等贸易文件给予优先审批和处理,而对书面文件延迟处理。 国际EDI应用的迅速发展,促进了我国EDI工作的开展,1991年我国就成立了“中国促进EDI应用协调小组”,并加入了国际上的相关组织,EDI的应用开发纳入了国家科技攻关计划,经贸委、海关、银行、运输等系统以及部分省市已开展了不同程度的研究与应用工作,有些已开始了试运行。 从目前科技发展水平来看,实现EDI已不是技术问题,而是一个管理问题。

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐