読者です 読者をやめる 読者になる 読者になる

らくがきちょう

なんとなく

Cisco ACI アプリケーションを好きな位置に挿入してみる

先日、Cisco ACI App Center アプリケーションは任意の場所にインストール出来る!というメモを書きました。 今回は Cisco DevNet で公開されている「Cisco-HelloAciStateful」を改造し、実際に Tenant へアプリケーションを挿入してみます。 アプリケーションの改造(作成)は CentOS7 上で実施しました。

事前準備

後の手順で必要な為、gccpython-develpip をインストールしておきます。

yum -y install gcc python-devel
curl -O https://bootstrap.pypa.io/get-pip.py
python get-pip.py

cisco_aci_app_packager をインストール&展開しておきます。

pip install cisco_aci_app_packager-1.0.tgz
unzip cisco_aci_app_packager-1.0.tgz
cisco_aci_app_packager-1.0.tgz

app.json へ insertionURL を追記する

DevNet で公開されているアプリケーションを展開しておきます。

unzip Cisco-HelloAciStateful-1.0.aci

Cisco_HelloAciStateful/app.json を編集し、以下のように "insertionURL":"fv:infoTenant:center", の一行を挿入します。

{
    "api":{
        "getTenant.json":"Get tenant information"
    },
    "apicversion":"2.2(1a)",
    "appid":"HelloAciStateful",
    "author":"Amit Jain, Sunil Verma",
    "category":[
        "Visibility and Monitoring"
    ],
    "contact":{
        "contact-email":"sunverma@cisco.com",
        "contact-phone":"123-4567890",
        "contact-url":"http://www.cisco.com/aci/"
    },
    "iconfile":"HelloAci.png",
    "insertionURL":"fv:infoTenant:center",
    "name":"HelloAciStateful",
    "permissions":[
        "tenant-qos",
        "tenant-security",
        "tenant-epg",
        "tenant-connectivity-l3"
    ],
    "permissionslevel":"write",
    "shortdescr":"This app demonstrates an example of an stateful app.",
    "vendor":"Cisco",
    "vendordomain":"Cisco",
    "version":"1.0"
}

改造したアプリケーションをパッケージングし直す

app.json の編集が完了したらアプリケーションをパッケージングし直します。

python ~/cisco_aci_app_packager-1.0/packager/aci_app_packager.py -f ~/Cisco_HelloAciStateful

改造したアプリケーションをインストールする

改造したアプリケーションを Cisco ACI へインストールします。 Tenant トップ画面にアプリケーション名のタブが増えています。 実際にアプリケーション名のタブをクリックすると、アプリケーションが動作します。

f:id:sig9:20170322221741p:plain

まとめ

app.jsoninsertionURL に挿入位置を書くだけで、簡単に好きな位置へアプリケーションを挿入することが出来ました!