2020-11-02 思科ACI的自动化编程分享- 使用Postman

       思科ACI提供了很多可编程的方式,本文章来分享一下如何使用Postman通过REST API对思科ACI进行自动化编程。由于内容很多,所以分成多个文章来分享。

       下面首先来介绍一下如何搭建Postman对思科ACI APIC策略控制器进行登录和获取token。

I. 介绍

          本文章简单介绍一下如何使用Postman对思科ACI APIC进行自动化操作。本文里,我们讲讨论思科ACI APIC里的Distinguished name 和Class,以及我们要使用的REST API工具Postman, 以及如何使用Postman登录思科ACI APIC。后续我们会陆续介绍如何操作APIC下面的可管理对象。

II. Postman

1. Postman是什么?

Postman 是一个第三方REST API工具。它可以用来进行创建和获取思科ACI APIC里的对象。

2. Postman下载

https://www.getpostman.com/

III. ACI APIC下的2个重要概念:Distinguish Name 和 Managed Object

在ACI里的所有的组件都可以在ACI的管理信息树(Management information Tree)中有循可依,每一个节点就是一个可管理的对象(Managed object)。可管理对象(MO)通过他们唯一的独特的名字(distinguished name)来标识。这个独特的名字(DN)里包含一个从对象树的根开始,一直到这个对象本身的完整路径,其中每一个部分都称为相对名称(Relative Name). 比如:

dn = {rn}/{rn}/{rn}/{rn}…

思科ACI APIC REST API是一个针对APIC控制器的可编程接口。有可以用任何编程语言通过JSON或XML格式的数据对APIC 管理信息树里的可管理对象进行REST呼叫。

IV.完成Postman初始化准备工作

1. 在Postman下定义变量

点击Settings > Manage Environments



点击add, 完成环境变量的配置,配置环境变量是为了节省每次都需要手工输入的繁琐工作。后面做REST API呼叫时可以直接调用这个环境变量。

请注意:上图中的环境变量来自思科DevNet sandbox always-on lab环境,你也可以用来进行思科ACI APIC的可编程学习。有兴趣点击思科DevNet官网了解详情:https://developer.cisco.com/

2. 在Postman下创建一个Collections.

Collection是Postman下用于整理REST API的一个目录文件,可以讲相关的REST API操作放到同一个Collection下,方便管理和使用。


输入名字和描述后,点击Create完成Colllection的创建。

V. 使用Postman创建登录ACI APIC的REST API请求

点击新建Request


在会话框里输入APIC登录link:

选择POST,然后输入:    https://{{apic}}/api/aaaLogin.json

在Body中选择Raw,贴入下面内容:

{ "aaaUser" : { "attributes":{"name":"{{username}}","pwd":"{{password}}"} } }

最后点击send 按钮。

如下图:


在图中你可以看到{{apic}} {{username}} {{password}} 这三个参数就是对你前面创建的环境变量的调用。


Once Send, you can see the response at the bottom of the Postmanthat shows you the token generated.

点击完send按钮后,你将可以在Postman的下方看到REST API呼叫的回应。里面可以看到生成的APIC 登录的Token. 请注意这个token有效期为10分钟,如上图:RefreshTimeoutSeconds:"600".意思是如果你接下来对APIC的操作在生成登录token的10分钟内是不需要再登录了。如果超过了10分钟了,就需要再次完成登录请求来获取有效的token. 老版本的APIC token有效期默认为5分钟。

点击保存Save按钮,将本次登录请求保存刚创建的Collection里。


本次文章先介绍到这里。接下来我们继续探索使用Postman来完成对ACI APIC的REST API操作。比如创建Tenant, EPG等自动化配置工作。

你可能感兴趣的:(2020-11-02 思科ACI的自动化编程分享- 使用Postman)