NVUE 对象模型
NVUE 对象模型定义使用 OpenAPI 规范 (OAS)。类似于 YANG (RFC 6020 和 RFC 7950),OAS 是一种数据定义、操作和建模语言 (DML),可让您为人类和机器构建模型驱动的接口。尽管计算机网络和电信行业通常使用 YANG(由 IETF 标准化)作为 DML,但 OpenAPI 的应用范围更广,从云到计算、存储、物联网,甚至社交媒体。OpenAPI 倡议 (OAI) 联盟 领导 OpenAPI 标准化,这是一个 Linux 基金会下的特许项目。
OAS 模式构成了管理平面模型,您可以使用该模型配置、监控和管理 Cumulus Linux 交换机。OAS 的 v3.0.2 版本定义了 NVUE 数据模型。
与使用 OpenAPI 的其他系统一样,NVUE OAS 模式定义了作为 RESTful API 公开的端点(路径)。使用这些 REST API,您可以执行各种创建、检索、更新、删除和执行 (CRUDX) 操作。OAS 模式还描述了 API 输入和输出(数据模型)。
您可以通过以下两种方式使用 NVUE 对象模型
- 通过 NVUE REST API,您可以在 NVUE 对象模型端点上运行 GET、PATCH、DELETE 和其他 REST API,以配置、监控和管理交换机。由于 OAS 拥有庞大的用户社区和成熟度,您可以使用多种流行的工具和库来创建客户端绑定,以使用 NVUE REST API。
- 通过 NVUE CLI,您可以在其中配置、监控和管理 Cumulus Linux 网络元素。CLI 命令转换为等效的 REST API,然后 Cumulus Linux 在 NVUE 对象模型上运行这些 API。
CLI 和 REST API 在功能上是等效的;您可以从 REST API 或 CLI 运行所有管理操作。NVUE 对象模型驱动 REST API 和 CLI 管理操作。所有操作都是一致的;例如,CLI nv show
命令反映您通过 REST API 运行的任何 PATCH 操作(创建)。
NVUE 遵循声明式模型,删除了特定于上下文的命令和设置。它被构建为一棵大树,代表 Cumulus Linux 实例的整个状态。树的底部是代表对象的高级分支,例如路由器和接口。在每个分支下还有更深的分支。当您在树中导航时,您会获得更具体的上下文。树的叶子是实际的属性,表示为键值对。树的路径类似于文件系统路径。

Cumulus Linux 默认安装 NVUE 并启用 NVUE 服务 nvued
。