IT行业正在向所有的一切都采用应用程序编程接口(API)演进,这使得企业能够自动执行重复性任务,提高效率并减少错误的系统。但是,这引出了新的问题:在IT系统中API的大量使用会取代命令行界面(CLI)吗?
网络工程师多年来一直依赖CLI进行网络配置,但市场研究公司Gartner认为,CLI正在失去其在配置和运营网络方面的地位,并预测到2020年,只有30%的网络运营团队会使用CLI,远低于目前的85%。
什么是CLI
CLI包含多个组件:
- 用户输入/输出
- 命令行编辑,历史命令,完成的命令
- 输入解析、参数验证和命令调度/执行
- 错误处理和报告
大多数产品都包含至少两种CLI模式
- 交互模式:用于查询设备运行数据的命令,它通常用于收集故障排除数据,包括show命令以及查看设备配置的命令
- 配置模式:管理员更改设备的操作
CLI具有依靠简单的telnet或Secure Shell会话进行通信的优点,以及用于识别和执行命令的解析引擎。它不需要额外的软件(ASN.1,JSON或XML解析器)或协议(CMIP,SNMP)。CLI的缺点也很明显,虽然CLI也可与作为API使用,但是CLI缺少错误特定的返回代码,控制系统可与理解错误的类型并采取适当的措施。有时,自动化工具还必须处理输入或输出文本中的偶尔错字,CLI通常与手动配置更改有关,这是造成企业网络中断的主要原因。
取代CLI
业界目前正在逐渐取代CLI,因为单次配置一台设备已经不能满足需求,需要开始配置整个IT系统。例如要在所有企业网络设备(UC终端,交换机,路由器,防火墙和负载均衡器)上部署一致的服务质量(QoS)策略。理想情况下,我们将有一个通用的QoS模型,API映射到设备特定的配置。查询QoS实施操作的通用模型将允许我们验证IT系统是否按照我们设计的那样运行。
用API替换CLI并不困难,较新的设备通常通过使用命令元素的XML或JSON编码的REST接口支持CLI和API,另外,有些设备只支持API接口,CLI只是一个使用API调用的模块。
Gartner分析师指出,将CLI转移到集中的基于策略的操作是“网络团队必须处理由于使用微服务/容器以及物联网设备泛滥所带来的规模需求的前兆”。CLI并不会完全消失,依然对深入的故障排除或测试有效果,但是相关的CLI的测试认证就不那么重要,取而代之的是架构级技能,专注于网络自动化、API编程以及与其他基础设施的集成。
为了与这种转变保持一致,Gartner建议企业在购买新基础设施时要求网络自动化,而不要让传统CLI技术影响他们的购买决策。企业还应该利用API来实现更高的网络灵活性,并将投资重点从CLI和专有认证转移到网络编程工具和通过API编排。
SD-WAN和开放网络的兴起
根据Gartner的说法,软件定义的广域网(SD-WAN)是企业在不依赖于CLI的情况下所期望的技术之一。该公司预测,到2018年,与传统路由器相比,WAN边缘基础设施更新项目中将有超过40%将基于SD-WAN设备和/或基于x86的虚拟化客户端设备,与现在不到2%的份额相比,这是企业在这方面的巨大投入。
Gartner还认为开放源代码在企业网络中扮演着更重要的角色:到2020年,开源和自建选项至少占数据中心网络市场的20%,而现在占比不到2%。
Gartner研究总监Naresh Singh指出,DevOps组织倾向于使用开源产品,越来越多的企业计划采用DevOps方法,在2层和3层交换、路由和4-7层网络服务等核心业务领域,都有开放网络社区。OpenSwitch,ODL,ONOS,OPNFV,Nginx和HAProxy等项目也吸引了广泛的用户和供应商参与,从而使他们有更多的主流企业采用的机会。
基于意图的网络
Gartner还预测了基于意图的网络以及在分支机构部署直接互联网接入,根据Gartner的数据,10%的企业将使用基于意图的网络设计和操作工具。Gartner副总裁兼杰出分析师Joe Skorupa解释说,“意图”从业务角度描述了网络所需的服务,而不是如何配置各个参数,并作为配置的通用语言。
基于意图的网络通过在部署之前验证设计,防止配置错误以及通过持续监控来减少网络中断。根据Gartner的数据,虽然意图型网络刚刚兴起,但企业在分支机构部署直接互联网的速度会更快。到2020年底,将有60%以上的企业部署基于意图的网络。
CLI最终会被API所取代吗?在短期之内不可能,但是CLI在企业当中所占的比例毫无疑问会下降。基于API的服务器、网络设备和IT系统等都会慢慢侵蚀CLI的占有率,但值得注意的是CLI的重要地位依然不会被取代,在企业的应用中,CLI还将长期存在。