whats aci api?

27
ACIのAPIって何それ美味しいの? Takao Setaka Cisco Systems November 6, 2014

Upload: takao-setaka

Post on 14-Jan-2017

801 views

Category:

Technology


0 download

TRANSCRIPT

ACIのAPIって何それ美味しいの?

Takao SetakaCisco Systems

November 6, 2014

ACIの理想と現実。

ACIの理想

アプリケーション視点のポリシーに基づいたインフラストラクチャ(特にネットワーク)の実現

ACIの現実

ネットワーク視点のデザインをいかにアプリケーション視点のデザインに落とし込むか?

• APIC GUIだけ?

• REST/APIは…(゜_゜)

ACIの管理手法。

ACIのAPIを活用する主な方法

1. Web GUI

2. API Inspector

3. APIC Object Browser (Visore)

4. Cobra SDK

5. APIC REST to Python Adapter (arya)

6. ACI Toolkit

7. ACI PowerTool - 開発休止中?

APICをブラウザのGUIを通じてREST/APIで処理するための、標準で提供されるWebアプリ実装

What’s APIC Web GUI?

What’s APIC Web GUI?

ブラウザのGUIを通じたREST/API通信を覗き見るためのツール

What’s API Inspector?

What’s API Inspector?

オブジェクトモデルのMIT(Management Information Tree)

構造のデータを簡易に参照するツール(主に開発者向け)

What’s APIC Object Browser?

TOOL: https://[your APIC]/visore.html

What’s APIC Object Browser?

APIC標準提供のPython SDK

ACIのMITにMappingされた開発環境

What’s Cobra SDK?

DOCS: https://[your APIC]/cobra/

CODE(EGG): https://[your APIC]/cobra/_download

What’s Cobra SDK?

APICのREST/APIをCobra SDKのPythonスクリプトに変換するオープンソースツール

What’s APIC REST to Python Adapter?

CODE&DOCS: https://github.com/datacenter/arya

What’s APIC REST to Python Adapter?

PythonでシンプルにACI(APIC)のAPIを活用してもらうためのオープンソースツール(+サンプルアプリ)日々進化中。

What’s ACI Toolkit?

DOCS: https://datacenter.github.io/acitoolkit

CODE: https://github.com/datacenter/acitoolkit/

•Cobra SDKは主に開発者向け(MIT構造に即したPython向け開発環境)

•ACI Toolkitは主に構築・管理者向け(PythonでAPICを簡易に管理するためのツール)

What’s different with Cobra SDK?

導入設定や運用管理を「楽にする」・「確実にする」ために活用する

How to use ACI Toolkit?

ACI Toolkitの中身

acitoolkit

acitoolkit

samples

applications

Pythonパッケージ フォルダacitoolkitのPythonソースコード一式(acitoolkit.py等)

サンプルスクリプト集acitoolkitを活用したスクリプトのサンプル

サンプルアプリケーション集acitoolkitを活用したちょっとしたアプリケーションのサンプル

ACI ToolkitのclassTenant EPG Taboo L2Interfac

e

VMM OutsideL3 PhyDomain

Context Contract FilterEntr

y

L3Interfac

e

VMMvSwitch

Info

OSPFInterf

acePolicy

EPGDomain

BridgeDoma

in

ContractSu

bject

IPEndpoint FexInterfa

ce

VmmDomain OSPFRouter L2ExtDomai

n

Subnet Filter AppProfile PortChanne

l

VMMCredent

ials

BGPSession L3ExtDomai

n

OutsideNet

work

BaseContra

ct

CommonEPG TunnelInte

rface

Search MonitorTar

get

OutsideEPG ContractIn

terface

Collection

Policy

Search BaseMonito

rClass

MonitorSta

ts

NetworkPoo

l

Endpoint LogicalMod

el

BaseMonito

rClass

MonitorCla

ss

サンプルアプリケーションアプリケーション 概要

ACI Diagram APIC構成情報のダイアグラム図画像ファイルの生成

Cable Plan ケーブル接続プランのXMLファイル参照と現状接続状況の比較

CLI APICに対するCisco CLI的な操作

Endpoint Tracker Endpoint情報の検索と参照

Event Feeds APIC変更情報のAtom Feed生成

Lint ACIファブリックの分析ツール(各種エラー・警告情報の提示)

Multi Site 複数APIC間でのアプリケーションネットワークプロファイル情報の同期

Object Browser

Reports ACI構成環境の各種レポートの生成

Search APIC構成情報パラメータの検索

Snap Back APIC構成情報のスナップショットの取得、差分の確認、ロールバックなど

Visualizations APIC情報のグラフ表示

APIを活用するツールを使って楽しましょう!

さらにはツールの改善に参加ください!!

@github

いいえ。

残念ながら、Web GUIやREST/APIの全ての機能には対応していません。

でも、80%ぐらいの「やりたいこと」には対応できる…ようになることを目指しています。

ACI Toolkitはなんでもできる?

はい。

でも、ちょっと便利にACIを活用するためにぜひお使いください。

ACI Toolkitは、手段です。

ACI Toolkitはサポートされない?

いいえ。

Pythonの実行環境さえあれば、WindowsでもMacでも使えます。

でも、一部サンプルアプリケーションはLinuxでの使用が前提となっています…。

ACI ToolkitはLinuxでしか使えない?