1. はじめに
本稿では REST API を用いて Management Object (MO) を作成する方法について解説します。
MO についての解説は下記の記事を参照してください。
ACI Policy Model (パートナー トレーニング資料)
また、REST API を利用するためには APIC へのログインが必要ですが、その方法については下記の記事を参照してください。
後述の部分で Postman を用いていますが、その使い方などについても下記を確認してください。
Cisco ACI : ACI における REST API 利用のためのログイン認証
本稿は下記の Document に基づいています。
万が一、下記 Document と内容に相違があった場合には下記の Document の内容が優先されます。
Cisco APIC REST API Configuration Guide
2. 作成方法
MO を作成するには下記の Format で HTTP POST Request を実行することで作成できます。
下記 URL 内の { } は User が適切な文字列を入力する必要がある必須の部分を意味しています。
[ ] は User が必要に応じて入力する任意の部分を意味しています (つまり、無くてもよい)。
A | B は「 A 又は B のいずれかを指定」の意味で用いています。
( ) は 実行したい操作に応じた何か具体的な文字列を入れる必要があることを意味しています。
http(s)://{(apic-ip-addr)}/api/mo/{(dn)}.{xml|json}[?(option)]
上記の Format の URL で POST Request を行うことで MO の作成が出来ます。
- (apic-ip-addr): 操作を行いたい APIC の IP Address を指定してください。
- (dn): 作成する MO の Distinguished Name (DN) を指定してください。
- xml|json: MO の詳細情報を与える形式を指定してください。
- (option): Option を使う必要がある場合にはここで指定してください。
- Payload: HTTP Request の Payload に json/xml で MO の詳細情報 ( MO 作成時に指定する具体的な値など ) を指定してください。
3. 実行例
APIC の IP Address が 192.168.1.1 の時、demo-tenant という名前の Tenant を作成する操作を例示します。
URL は下記のようになります。
https://192.168.1.1/api/mo/uni/tn-demo-tenant.json
Payload の内容は下記のようになります。
{
"fvTenant": {
"attributes": {
"name": "demo-tenant"
}
}
}
これに成功すると、下記のような HTTP 200 OK の Response を受け取ります。
{
"totalCount": "0",
"imdata": []
}
下記が実際にこの操作を実行した際の Postman の Screenshot です。

moquery コマンドで対象の MO が作成されているか、調べると下記のようになりました。
apic1# moquery -d "uni/tn-demo-tenant"
Total Objects shown: 1
# fv.Tenant
name : demo-tenant
annotation :
childAction :
descr :
dn : uni/tn-demo-tenant
extMngdBy :
lcOwn : local
modTs : 2022-09-22T11:09:59.832+09:00
monPolDn : uni/tn-common/monepg-default
nameAlias :
ownerKey :
ownerTag :
rn : tn-demo-tenant
status :
uid : 15374
userdom : :all:common:
確かに作成されていることが分かります。
4. 注意事項
- Payload に入れて受け渡す情報量には 1 MB の制限があります。
- 2022 年 7 月 26 日現在、ACI でサポートされる HTTP Method は GET、POST、DELETE がサポートされています。
- 上記の Method のみがサポートされているため、MO を更新する際には PUT ではなく、POST で更新を行ってください。
以上で本稿は終了です。
参考情報
Cisco APIC REST API Configuration Guide
ACI Policy Model (パートナー トレーニング資料)
Cisco ACI : ACI における REST API 利用のためのログイン認証