使用 Ansible 进行 NVUE 自动化

为了使用 Ansible 自动化数据中心的网络基础设施,NVIDIA 提供了以下选项

  • Ansible 模块
  • 生产就绪自动化

Ansible 模块

NVIDIA NVUE 集合包含 Ansible 模块,可帮助您与由 NVUE 管理的 NVIDIA 设备进行交互。这些模块使用 Ansible 2.11 和 Python 3.6 开发和验证,并在 Cumulus Linux 5.x 上受支持。该集合包括高级包装器模块和对象特定模块,如下所列

高级模块

  • nvidia.nvue.command - NVUE 命令行工具的包装器,增加了模板功能和自动化对话提示。
  • nvidia.nvue.api – NVUE REST API 的包装器,用于发送和检索 NVUE 配置。

对象特定模块

  • nvidia.nvue.acl - 使用 REST API 进行 ACL 配置
  • nvidia.nvue.bridge - 使用 REST API 进行 Bridge 配置。
  • nvidia.nvue.config – 使用 REST API 进行修订
  • nvidia.nvue.evpn - 使用 REST API 进行 EVPN 配置。
  • nvidia.nvue.interface - 使用 REST API 进行接口配置。
  • nvidia.nvue.mlag - 使用 REST API 进行 MLAG 配置。
  • nvidia.nvue.router - 使用 REST API 进行路由器配置。
  • nvidia.nvue.service - 使用 REST API 进行服务配置。
  • nvidia.nvue.system – 使用 REST API 进行系统配置。
  • nvidia.nvue.vrf - 使用 REST API 进行 VRF 配置。
  • nvidia.nvue.vxlan - 使用 REST API 进行 VXLAN 配置。

对于对象特定模块未涵盖的 REST API 端点,或者对于对象特定模块内的子路径(例如,/interface/<id>/qos/roce/counters),您可以利用 nvidia.nvue.api 模块并在 path 参数中指定端点。

注意:NVUE Ansible 模块由社区支持,未经 NVIDIA 验证。对这些模块的支持基于“尽力而为”原则。如果您有任何问题,请在此处提交请求here

生产就绪自动化 (PRA)

NVIDIA 的生产就绪自动化软件包使用 Ansible 角色,以 playbook 的形式提供完全可操作的自动化数据中心的多个示例,包括

  • 所有示例的标准参考拓扑。
  • 以下示例的各种黄金标准 EVPN-VXLAN 架构参考配置
    • EVPN 集中式
    • 仅 EVPN 二层
    • EVPN 对称式
    • EVPN 多宿主
  • NVIDIA 参考拓扑 (cldemo2) 的完整 Vagrant 和 libvirt 模拟,提供基础物理基础设施和引导配置,以支持和演示 Cumulus Linux 功能和技术。
  • 最佳实践 Ansible 自动化和基础设施即代码 (IaC)。
  • 使用 GitLab 的持续集成和持续部署 (CI/CD) 的工作示例。
  • 由 NetQ Cloud 驱动的 CI/CD 测试。

您可以将此生产就绪自动化软件包用作学习资源和起始模板,以在您的 Cumulus Linux 网络环境中实施这些功能、技术和操作工作流程。

生产就绪自动化为 NVUE 使用的启动配置 (startup.yaml) 生成 jinja2 模板。

您可以在此处找到更多信息。here

建议

配置Cumulus Linux 版本建议
第 0 天5.0 之前使用 PRA 软件包自动化 startup.yaml 文件生成。
5.x 及以上使用 Ansible 模块根据需要设置配置,并在所有交换机上运行。
第 1 天5.x 及以上使用可用的 Ansible 模块随时进行配置更改。