数据中心网络自动化运维面临的6大挑战
EMA(Enterprise Management Associates,企业管理协会)近期发表了《数据中心网络自动化的未来》的调查报告,在对359名来自企业、云供应商和网络服务提供商的IT网络从业者的访问中发现:48%的受访人所在公司所使用的数据中心网络自动化解决方案中仍有部分是依赖于手工收集数据的——云管理员必须手动查询单独的系统来寻找他们需要的数据,以便用网络自动化工具来做出变更。
其中更有超过86%的公司预计未来两年内,用于数据中心网络自动化的预算还将增加;但只有23%的受访者对他们接下来的自动化战略充满信心。
让我们从报告结果出发看看推动数据中心网络运维自动化的不同阶段中,各行业的资深从业者们都面临着哪些挑战?
规划和评估阶段
各系统工具之间的协同配合
根据调查,39%的技术团队最为关注网络自动化工具如何与其他工具和管理系统互动。这是因为网络基础设施和运营团队通常有多种工具来管理网络,包括数据中心网络自动化的多种工具。除此之外,其他团队例如存储、安全、应用和DevOps等都在用他们自己的工具集来管理数据中心运营的各个方面。网络团队必须要考虑他们的自动化工具如何与其他工具和团队交互。
预算和成本控制
许多企业(37%)表示,他们在规划预算和了解与数据中心网络自动化相关的成本方面有很大困难。EMA认为,自动化计划的复杂性是造成成本不明确的原因。大多数受访人表示,自己所在公司和组织既购买商业自动化工具,又有自己开放的自动化软件,很难预测要实施和维护这一系列工具所需的成本是多少。
部署阶段
基础网络设备的配置复杂低效
在推动实施数据中心网络自动化时,44%的组织在网络基础设施问题上大费周章。数据中心的网络设备和其他组件往往还有很多历史遗留问题,使得这项工作变得更加困难。例如,旧设备可能缺乏API,于是自动化团队不得不通过效率更低的的命令行脚本来配置设备。
更麻烦的是,生产网络中往往有多个版本的供应商的网络操作系统(NOS),而每个NOS版本在命令行(CLI)语法上可能有细微的差别,这就造成了更大的复杂性。不少网络工程师表示,他们有些设备上的API在应用范围、功能和质量等方面都非常局限。
与整体应用交付系统的集成
近一半(44%)的企业认为,难点在于将他们的自动化pipeline集成到整体应用服务交付系统中。这其实与规划阶段的第一个难点相呼应了。
使用阶段
数据权限和质量问题
在使用自动化时,有42%受访人认为数据权限和质量是主要问题。数据是网络自动化的命脉,工程师需要有关网络状态的数据(如设备指标和流量等)来了解需要执行哪些变更。他们还需要有关配置标准和安全策略的网络数据,依据这些信息去更改网络,并保证其稳定运行。但许多企业都在数据存储库上遇到了难题。
网络变化带来的不确定性
有40%的受访者担心网络变化会影响现网的应用行为和性能。正如来自一家价值500亿美元的咨询公司的一名网络架构师所言,”把新的网络配置一键推送给成千上万的盒子并不难,但要是这个配置是错误的,你就GG了” 。
附录:数据中心网络自动化运维相关工具
Ansible与AsterNOS SDK
Ansible – 红帽Redhat https://www.redhat.com/zh/technologies/management/ansible
在市面上各类网络自动化工具中,红帽公司的Ansible极具代表性。它能够将运营环境中大量的重复性工作以“Playbook”的方式进行自动化,从而为管理员降低工作负载,提升工作效率。Ansbile不需要被管理对象(服务器或网络设备)安装任何客户端,而是通过标准的SSH通道进行交互,所有需要被管理对象执行的命令和返回给服务器的结果都在这个标准通道中传递。Ansible的这种架构在很大程度上降低了自身的运维与管理复杂度。
AsterNOS – 星融元Asterfusion
AsterNOS是一款基于SONiC的企业级发行版网络操作系统。
星融元(Asterfusion.com)为AsterNOS开发了符合Ansible标准的AsterPlaybook,通过AsterPlaybook,Ansible服务器能够快速、便捷地完成自动化运维。 同时,对于任何以容器模式运行在AsterNOS内部的第三方应用,也能完全融入到基于Ansible的DevOps环境中去。
更重要的是,AsterNOS还拥有一套面向NetDevOps的开发环境(AsterNOS SDK)
运维工程师可以通过AsterNOS SDK所提供的REST API和/或System API自动化地、高效地运维网络,甚至开放自己的网络应用。
例如:对应用系统访问情况的高效审计
在网络中,访问控制一般是通过ACL(Access Control List,访问控制列表)实现的。AsterNOS支持ACL功能,并且能够提供所有ACL被命中过的统计数据;AsterNOS SDK所提供的REST API中,包含对ACL各个字段和统计数据的访问接口,通过调用这些接口,即可直接获得ACL的这些信息用以分析。
伪代码: