数据中心自动化运维技术之交换机零配置上线

  • 来源:未知
  • 时间:2018-10-07
  • 阅读:
  • 本文标签:

  

  近几年来,互联网行业处于一个快速发展的快车道,一个又一个风口不断地涌向周边行业。共享单车的出现解决了人们出行最后一公里的问题;新零售概念的提出,无人货柜的出现,更是将线上和线下的数据打通,优化了人们的购物体验;以抖音为首的短视频应用,在一夜间爆红,成为当下社交与宣传的重要载体。而数据中心作为支撑这些业务的基础设施,其规模也随着业务的激增逐渐扩大,单集群内超过数万台服务器的情况已不再罕见。面对如此庞大的服务器数量,在网络建设之初的交换机网络开局已成为网工的梦魇。

  Step 3: 开始搬砖,到达现场,设备拆箱集中堆放,加电启动;

  Step 4: 使用U盘插到交换机,串口线连接设备,逐台进行版本升级(若需要);

  Step 5: 根据配置模板结合实际设备的情况进行VLAN、IP、路由以及其他基本信息的修订,然后开始刷配置(另外按照各公司要求,还会协助收集设备的SN用于资产管理);

  整套流程下来,既耗人力,又耗时间。据实际项目经验来看,在不堆叠的前提下完成一台设备的升级和配置大约在10分钟,堆叠情况下由于设备需要重启,需要30分钟才能完成。

  总结来看,对于支撑数万台服务器集群的数据中心网络场景,如果按照这种传统的开局模式来部署,会存在以下几点不足:

  ž 出错率高:重复性的工作会导致网工疲于思考,稍有不慎出现失误,需要额外的时间用于排查错误更正,产生一定的时间损耗。

  随着数据中心规模的不断增大,标准化的建设方式已经成为主流。每个集群内的服务器以及网络设备的规模都是固定的,对应到网络设备的配置策略也是一致的(当然IP等基础信息会略有不同)。因此,在这样标准化、规范化的场景下,我们可以将这些重复性的、机械性的工作编成处理逻辑,交给网络设备自己去完成上线工作,进而解放人力,同时也降低了人们出错的风险。

  厂商对于自动化上线技术的开发,主要是利用编程语言(比如Python、Go等)进行逻辑处理,让网络设备自行加载,完成上线,例如ZAM技术(Zero-configure Automatic Manage)。

  交换机自动化上线的思路:新出厂或空配置的设备上电启动后自动向文件服务器中获取文件并加载(包括版本文件、配置文件、补丁文件等),实现设备的免现场配置、部署,从而避免了运维人员重复地执行刷脚本、升级等机械性操作,提升开局效率。

  以ZAM技术为例,首先要在运维端搭建统一的DHCP服务器和TFTP服务器(可以是同一台服务器),基于架构标准化设计和项目信息提前生成每台设备的完整配置文件以及版本文件,同时这些文件的文件名需要与设备的SN关联起来,确保每个配置文件可以对应唯一一台具体的物理设备。

  交换机加电起机后会主动发起DHCP请求,通过Option拿到TFTP服务器的地址以及脚本名称。通过TFTP的方式下载到脚本文件后,解析并执行。然后自动进行版本的升级以及配置文件的加载,重启后完成设备开局。主要流程如下:

  1) 设备加电后,首先判断自身是否存在配置文件,如果不存在则进入ZAM模式;如果存在则正常加载现有配置文件启动;

  2) 进入ZAM模式后,会先尝试从MGMT口上发起DHCP请求,无应答后会从业务口上广播该请求报文。DHCP Server在回应报文中通过Option66(或者150)、67选项,将TFTP Server的IP以及Python脚本名称同步给设备;

  1) 交换机设备(需要支持Python的运行环境)进行Python脚本的下载。

  首先要进行初始化,与此同时要清空之前运行过的本地文件,目的是为了避免那些通过错误逻辑模块到达该处时文件错乱的情况,因此需要执行初始化操作;

  上传SN之后,会基于SN去下载对应的配置参数文件(.PARAM格式),下载路径在代码中已经写好,若下载失败则跳到错误处理;

  通常情况下,脚本中会默认写好配置文件的下载路径,设备会基于SN到该路径下载配置文件 [sn].CFG, 若下载失败跳到错误处理;

  如果配置参数文件中存在bin文件的标识,则到指定的路径去进行bin文件的下载,若下载失败则跳到错误处理;

  执行代码做配置文件的重命名,更改成config.txt的格式后重启(不同厂家配置文件命名不同,这里以锐捷为例);

  重启设备后则再次进行配置文件的判断,发现此时存在配置文件,则不进入ZAM模式,正常加载配置文件并启动。

  C. 写0到/etc/zam.txt(通告zam执行失败)

  随着网络设备对于类似Python的高级编程语言环境的支持愈加成熟,零配置上线技术在IDC场景中得到了普遍的应用。一方面加快了设备的开局速度,降低了人为操作失误的风险,节省人力投入;另一方面,对于后期设备的运维工作(比如扩容、故障替换等),只需要上报或者替换SN就可以自动完成加载,也不需要人工的参与。

  那么,除了IDC场景有这样的需求之外,对于其他场景,是否也存在类似的运维痛呢?

  锐捷网络秉承着创新、探索与实践的思路,在新零售门店场景,也做了深入的市场调研与分析。

  最近火爆的新零售门店,其特点就是数量众多,业务的激增导致开店速度尤其快。但是门店不会有专业的运维同学驻场,所以网络开局时需要网工四处出差;日常遇到故障,如果远程不能解决也需要网工到现场处理,人力投入极大。

  对此,聚焦于新零售门店场景,我们基于数据中心零配置开局的思路进行创新,致力于打造全新的自动化门店网络解决方案,提升新零售门店网络开局和运维的效率,减少人力服务成本。

  目前我们正在和新零售客户积极的探索和实践中,敬请期待。如果有相关建议和思路,也欢迎留言互动,共同探讨。

本文来自电脑技术网www.it892.com),转载本文请注明来源.