介绍
在ArubaOS 8.0.0.0之前,配置控制器的唯一方法是使用命令行接口 (CLI) 或控制器用户接口 (WebUI)。这给自动化带来了障碍,因为CLI通常会随着时间的推移而变化,并且由于大多数页面都是手工制作的,因此WebUI无法轻松实现自动化。WebUI还使用CLI与后端进行通信,后端是硬编码的,不易扩展。
旧体系结构的另一个问题是,show命令用于显示配置页面 (GET请求),该页面来自apps,apps以自己的专有结构维护呈现配置,导致show命令输出和apps之间不一致。因此,用户必须知道要使用哪个show命令,如何解析它,并获得输出。如果此输出随时间变化,则脚本也必须更改,因为并非所有输出都是使用结构化数据生成的。所有配置的结构化格式的获取和发布是实现JSON模型的主要要求。
结构化数据-Schema(模式)和数据
提供JSON接口的主要原因之一是,所有配置现在都可以使用结构化数据应用程序接口(API)进行GET和POST。结构化数据意味着所有数据都以一种结构格式(可以有许多结构)进行组织,其中属于一种数据类型的所有元素都遵循相同的数据模型。这是通过将架构与数据分离来实现的。
Schema是数据模型表示形式(JSON格式),它告诉用户解释数据的方式。它列出了特定配置元素可以采用的每个参数或令牌的完整详细信息。例如,类型(整数,短整数,字符,字符串,IP地址,IPv6地址,MAC地址等),最小值,最大值,默认值(当用户不提供任何值时),可选或必需。
数据以JSON格式表示Mobility Master的配置状态。它以与Schema相同的顺序排列数据,并且可以解释为模式指示要解释的数据。可能存在参数或标记,如果它们在Schema中的存在只是为了传达各种参数或标记之间的关系,则参数或标记在Schema中是必需的,因此在数据中将被省略。
Schema(也称为元数据)和数据完成了结构化数据表示。
先决条件
- 完全了解配置层次结构。
- 需要了解CLI,因为所有对象都基于等效的CLI。
- AOS8提供了运行Mobility Master中支持的各种容器和对象的完整文档,该文档的URL为https://<MM-IP>:4343/api
- 用户可以从Mobility Master的API页面上运行GET或POST命令,也可以从任何支持curl命令的计算机上运行等效的curl命令。 文档中的curl命令是运行查询的示例。
API操作演示
录制3个不同方式的操作API演示,实际上还有更多的工作需要开发人员去代码实现。
Postman在线版常用API
https://documenter.getpostman.com/view/2980877/SVYouLCo?version=latest#intro
如何通过API 的方式获取到 无线AP 信道利用率 和干扰率数值呢
Showcommand API 支持所有show 命令。
#show ap radio-summary 就能查看信道利用率和干扰。其他具体的信息参考CLI Guide。
注意:采用show command返回显示内容时,show user相关的都是无法正常显示内容的,例如show user、show user mac、show user ip ,仅显示This operation can take a while depending on number of users. Please be patient ….。如果需要通过api查询user的详细信息,可以分别通过show user-table ip 和show ap association client-mac 来查看
学习学习