基础架构即代码 (IaC) 是一种战略,其中操作 IT 基础架构所需的元素被视为软件并可通过 API、基于标准的协议和开源自动化框架(如 Ansible、Saltstack、Puppet 和 Chef)管理。IaC 能够自动化并利用工具和实践,加快在基础架构与操作专家 (Ops) 和应用程序开发与交付团队 (Dev) 之间的协作、部署和持续集成 – 这就是适用于网络的 DevOps!两个团队都需要协同工作,以更高的速度提供更好的创新客户体验,但不影响质量。将基础架构视为代码对于双方均有益。

基础架构即代码和网络自动化

随着越来越多的企业迁移到云和虚拟化,企业必须通过自动化和适应其 IT 基础架构变得具有敏捷性,从而保持竞争力。迁移到网络自动化是实现网络中物理和虚拟设备配置、管理、测试、部署和操作自动化的过程。图 1 显示网络自动化的进展。

图 1:网络自动化进展

自动化部署支持您自动生成和部署网络配置,然后可在网络中运行持续测试,在此您可以尽快识别并解决所有问题。随后,您可以借助基础架构即代码测试并验证网络更改,再将这些更改部署到您的生产环境,为基于人工智能和机器学习的机器驱动型自动化夯实基础。机器做出决策并推动网络更改,最终融入瞻博网络的未来网络愿景,即自我驱动网络​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​™。类似于自动驾驶汽车,自我驱动网络是一种对其环境具有预测性和适应性的自主网络。有关更多信息,请阅读“瞻博网络,自我驱动网络”。

建议的实施

1. 选择自动化框架 – 选择要使用的开源自动化框架,如 Ansible、Saltstack、Puppet 和 Chef。

2. 从简单部分开始 – 先实施基础架构最常见的部分:用户帐户、NTP、DNS、SNMP 和常用前缀列表。逐步完全覆盖。谨记此过程缓慢,直至一切变得标准化。

3. 组织 – 查看现有设备库存、变量和角色。按功能或位置分组,并按共同性或功能将组应用到模板。该模板就变为策略!

4. 测试和验证 – 对每个配置文件执行定期试运行测试。从每个设备收集差异和报告错误。组合收集的数据,并发送至网络管理员。如果需要,进行任何更改并提交。

5. 部署 – 将配置发布到生产环境。

6. 分析 – 收集网络信息(遥测)并使用该信息做出决策。机构通过对网络事件实施基于规则的操作,完成环路自动化。

7. 优化 – 使用机器学习工具培训系统并驱动网络更改。通过持续监控确保基础架构保持在所需状态。

基础架构即代码的优势

通过实施基础架构即代码,企业可获得以下优势:

  • 提高了协作和效率—通过使 Ops 团队使用开发人员熟悉的语言和方法反复配置应用程序和基础架构,减少错误。这使 Dev 团队能够生成质量更高的代码,此代码可更频繁地进行测试并更快地投入生产—更少错误、更快发布频率、更高效。

  • 改善了客户体验—通过更快地解决问题,发布新版本以及增强应用程序,改进了客户通过应用程序与公司的互动,从而提供更好的客户体验。

  • 提高了业务敏捷性和性能—通过减少花费在管理现有应用程序的时间,Dev 和 Ops 团队可将更多时间投入开发面向新市场和客户的新应用程序和运营模式中,并加快上市时间。

瞻博网络和基础架构即代码

为了提供清晰的愿景,并帮助加快自动化旅程,您可与瞻博网络的专业服务团队协作。我们的专业服务组织拥有丰富的经验和专业知识,可帮助您在网络中采用 IaC 实践和架构并实现其自动化。

此外,瞻博网络还提供以下 IaC 组件和机制:

  • 将 Junos OS 与开源自动化框架(如 Ansible、Saltstack、Puppet、Napalm、Jenkins 和 Chef)集成。

  • Junos 遥测接口 (JTI) 使用推拉模式异步提供数据并消除轮询,这使得收集网络数据变得更简单。

  • 借助虚拟化机制(如 vMX 和 vSRX 设备),可快速构建并调整网络的虚拟试验台。

添加新服务、测试新应用程序和解决问题的速度越快越可靠,实现改进的时间就越短,从而提高竞争力和弹性,最终增加公司利润。软件质量提高将改善经营业绩,增加收入。