数据中心网络开放性解决之道

  1. 云栖社区>
  2. 博客>
  3. 正文

数据中心网络开放性解决之道

晚来风急 2017-07-03 11:09:00 浏览706
展开阅读全文

这几年,数据中心得到了突飞猛进的增长。数据中心的建设规模越来越大,系统复杂性也越来越高,这给数据中心运维带来了极大挑战,数据中心运维人员忙于各种系统的维护工作,面临的压力也越来越大。网络是数据中心里最为重要的组成部分之一,也是技术最为封闭的部分,仍是一片未开垦的处女地,正是因为网络部分存在的问题最多,也是最急需改革的地方,将数据中心网络带入开放性的世界里,是未来数据中心技术领域的热点,各种关于提升网络开放性的技术扑面而来。从技术方面来讲,实现网络的开放性有两个大的方面:一方面是通过使用一些管理软件,提升网络自动化的管理水平,支持广泛的自动化特性,为外部已有的工具以及客户开发的工具提供全面的统一API网络接口;另一方面是数据中心网络、支持可编程、可编排的能力。

首先来说下网络自动化部署。如今数据中心网络规模越来越大,而网络设备却依然采用命令行界面的配置管理方式,一些网络设备供应商也提供了基于Web的图形界面配置和管理设备,试图可以从单一的客户端来处理整个网络设置,但这样并没有简化很多配置工作,只是把命令行换成GUI界面而已,这样拥有数百台甚至上千台的网络设备数据中心,在采用人工做网络配置时既耗时,又容易出错。尤其是在虚拟化的环境中,一个刀片服务器看似只有少数几个网络接口,却承载着数以百计的虚拟机,手工配置几乎成为不可能完成的人物,这时很多人想到了自动化部署。通过使用软件,对数据中心网络设备进行业务部署,极大缩短了业务部署时间,将技术人员从繁琐的配置工作中解脱出来。用软件来代替人工,完成网络业务部署,这个说起来简单,做出来却是很难的,软件终究还是执行人们提前设置好的各种指令,所以需要提前对可能出现的各种情景进行考虑,并编辑到软件中去,以便出现这些状况时,软件可以自动应对。除了软件要考虑周全,所有的网络设备还要“明白”软件发出的各种指令,并执行。由于软件实现千差万别,而网络设备品牌也很多,这样真正要实现自动化部署是一件特别复杂的事儿。当前的发展现状是,自家的自动化软件与自家的网络设备可以实现互联互通,与其它厂商的产品对接依然存在问题,不过随着网络技术融合的呼声不断升高,跨厂商之间的对接会不断成功。

自动化部署的软件很多,在此只做简单介绍。比如POAP,是思科网络设备支持的开机自动调配功能。在确保网络设备连接电缆并通电后,设备可以在网络中自动进行自身配置,这种零接触调配可简化网络扩展和管理。同时,通过自定义策略可快速检测并解决布线错误;XMPP,是基于可扩展标记语言(XML)的协议,可实现对一组网络设备同时配置;OpenStack,鼎鼎大名,就不用过多介绍了,还有Openflow,支持在网络设备上下发转发流表,是OpenStack的子集;这里再提一点OpenDayLight,是思科主导的一个基于Linux的SDN控制器,也是OpenStack的子集,OpenStack只是一个概念,真正自动化部署实现要靠OpenDayLight。

其次是网络的可编程能力,又称软件定义网络,SDN成为了网络可编程能力的代名词,将网络设备的软硬件分离是SDN存在的主要目的。网络具有可编程能力,能够降低网络复杂度,满足虚拟化和云计算的网络需求,它的发展对传统网络厂家封闭专有控制平面技术产生了破坏性创新,将对网络厂家变革产生巨大推力和影响,其与自动化部署最大的不同在于对网络、对流量转发的控制,是一种可以提供开放可编程接口的新型网络系统。这种设计理念将网络的控制层面和转发层面分离开来,相互之间通过标准接口就可以完成互访,这样一台服务器装上一个网络控制软件,再加上数百台甚至上千台便宜的白盒机设备就可以完成网络部署。一个数据中心网络的可编程能力体现了这个网络的先进水平,是未来网络发展的主流方向。

几乎所有的网络厂商都有自己的网络可编程方案,这也足以说明这正是网络未来的发展方向。当然,在这一新的领域还没有谁能取得完全的竞争优势,毕竟这部分市场还有待开拓。这里列举几个有代表性的网络可编程方案。比如:思科的NX-API,这是思科的可编程的平台API,它提供了一个基于表层状态转化、且保持良好文档记录的开放式北向API,同时允许与一个外部协调系统或云管理系统形成广泛的南向集成。这个平台API可兼容思科Nexus全系列的产品,未来思科也会将其它系列的产品都集成到一起,形成通用的可编程平台;Python是一种解释型、面向对象、动态数据类型的高级程序设计语言,Python内置了很多常见的网络协议的库,比如asyncore异步socket处理程序、email消息支持、http客户端模块、SMTP服务器模块、Telnet客户端模块等等,因而Python成为了一个强大的网络编程工具,Python是一种开放的、免费的、提供公共接口的脚本语言,在这个网络可编程的时代,python受到了很多人的欢迎;容器技术,这是一种Linux操作系统虚拟化的技术,具体包含了多种技术实现细节,这也是一种非常开放的技术,技术来源主要是Docker开源技术、CoreOS开源技术、其它开源技术和商业版本,虽然容器技术主要应用于服务器,但是网络设备的操作系统都是基于Linux做的二次开发,这样容器技术同样适用于网络操作系统,通过在网络设备上部署一些容器技术,可以大大提升网络设备的虚拟化能力。

数据中心技术变革的下一站,必然是来自于网络部分,这是目前数据中心最急需改变的部分,让网络走向开放已经成为所有行业内人士的共识,正是在这样的需求背景下,涌现出了很多优秀的网络新技术,这些技术将不断推动数据中心网络走向开放。

本文转自d1net(转载)

网友评论

登录后评论
0/500
评论
晚来风急
+ 关注