云原生 Contrail 网络概述
总结 了解云原生 Contrail 网络 (CN2)。
本部分旨在简要概述瞻博网络云原生 Contrail 网络解决方案,并且可能包含您正在使用的 Kubernetes 发行版中不支持的功能说明。请参阅《云原生 Contrail 网络发行说明》,了解适用于您的发行版的当前版本中的功能。
除非另有说明,否则本概述部分中对 Kubernetes 的所有引用均为泛泛而语,并非旨在挑出特定发行版。
在版本 23.4 中,云原生 Contrail 网络在以下方面受支持:
Contrail 网络是一款 SDN 解决方案,可自动创建和管理虚拟化网络,从而跨私有云和公共云无缝连接、隔离和保护云工作负载和服务。
云原生 Contrail 网络 (CN2) 将这一丰富的 SDN 功能集作为网络平台和容器网络接口 (CNI) 插件引入 Kubernetes。
CN2 专为云原生架构重新设计,充分利用 Kubernetes 提供的优势,从简化的 DevOps 到全包式可扩展性,所有这些都建立在一个高度可用的平台上。这些优势包括利用标准的 Kubernetes 工具和实践在整个生命周期内管理 Contrail:
- 使用标准 Kubernetes 和第三方工具管理 CN2。
- 通过添加或移除节点来扩展 CN2。
- 使用自定义资源定义 (CRD) 配置 CN2。
- 应用更新的清单来升级 CN2 软件。
- 通过删除 Contrail 命名空间和资源(在支持的情况下)来卸载 CN2。
CN2 不仅仅是一个 CNI 插件,更是一个网络平台,通过一个中央控制点,为跨多群集计算和存储环境的云原生容器化和虚拟机 (VM) 工作负载提供动态的端到端虚拟网络和安全性。它支持在多个租户、团队、应用或工程阶段共享的单个或多群集环境中的硬多租户,并扩展到数千个节点。
CN2 实施由一组 Contrail 控制器组成,这些控制器根据分布分布驻留在 Kubernetes 控制平面节点或工作节点上。Contrail 控制器管理由每个节点上的 CNI 插件和虚拟路由器实施的一组分布式数据平面。通过将成熟的虚拟路由器与工作负载集成,CN2 能够灵活地支持从小型单群集到多群集部署的各种网络需求,其中包括:
- 完全叠加网络,包括单群集和多群集部署中的负载平衡、安全性和多租户、弹性和弹性 VPN 以及网关服务
- 高度可用且具有弹性的网络控制器,可监控网络配置和控制平面的所有方面
- 使用遥测和行业标准监控以及演示工具(如 Prometheus 和 Grafana)的分析服务
- 支持 CRI-O 和容器化运行时
- 支持容器和 VM 工作负载(使用 kubevirt)
- 支持 DPDK 数据平面加速
Contrail 控制器会自动检测工作负载调配事件(例如要实例化的新工作负载)、网络调配事件(例如正在创建的新虚拟网络)、来自内部和外部源的路由更新以及意外网络事件(例如链路和节点故障)。Contrail 控制器会在适当的时候报告和记录这些事件,并在必要时重新配置 vRouter 数据平面。
尽管任何单个节点都只能包含一个 Contrail 控制器,但典型的部署包含在多个节点上运行的多个控制器。当存在多个 Contrail 控制器时,这些控制器会使用 iBGP 来交换路由,从而保持同步。如果某个 Contrail 控制器出现故障,其他节点上的 Contrail 控制器将保留所有数据库信息,并继续不间断地提供网络控制平面。
在工作负载所在的工作节点上,每个 vRouter 都会与两个 Contrail 控制器建立通信,这样,如果任一控制器出现故障,vRouter 都可以继续接收指令。
通过原生支持 Kubernetes,CN2 解决方案充分利用了 Kubernetes 架构固有的简单性、灵活性、可扩展性和可用性,同时支持丰富的 SDN 功能集,以满足企业和服务提供商等需求。企业和服务提供商现在可以使用简化且熟悉的 DevOps 工具和流程管理 Contrail,而无需学习新的生命周期管理 (LCM) 范式。
云原生 Contrail 网络的优势
- 为您的叠加网络支持丰富的网络功能集。
- 在上游和商业 Kubernetes 发行版上部署高度可扩展和高度可用的 SDN 解决方案。
- 使用熟悉的行业标准工具和实践管理 CN2。
- 或者,使用 CN2 Web UI 来配置和监控您的网络。
- 利用现有 DevOps 工程师的技能来快速启动并运行 CN2。
- 与瞻博网络交换矩阵设备和交换矩阵管理解决方案结合使用,或使用您自己的交换矩阵或第三方云网络。