SlideShare uma empresa Scribd logo
1 de 56
シスコシステムズ合同会社
システムズエンジニア 丸山 隆太
2020/7/28
DevNet 編
Cisco Modeling Labs (CML) を使って
ネットワークを学ぼう!
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
Cisco Modeling Labsを使ってネットワークを学ぼう!
CMLとは何か、ユースケースや基本機能、ラボ構築など、デモを交えながらご紹介します
https://learningnetwork.cisco.com/s/article/jp-webinar-cml01
基礎編 (7/7 済)
CMLの活用方法、資格での勉強方法などをデモを交えCCIEホルダーがご紹介します
https://learningnetwork.cisco.com/s/article/jp-webinar-cml02
応用編 (7/14 済)
CMLのAPI/プログラマビリティを用いたネットワーク自動化の観点でご紹介します
https://learningnetwork.cisco.com/s/article/jp-webinar-cml03
DevNet編
終了したセミナーについては、順次、資料と動画を公開中
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
アジェンダ
1
2
3
4
5
CML のおさらい
DevNetについて
CML 2.0 API
DevNet における CML 活用例
まとめ
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
• 丸山 隆太(まるやま りゅうた)
• 人材育成の一環でインターンシップとして出向中 (2019/04〜)
• 出向元:富士通ネットワークソリューションズ株式会社
• インターンシップで学んでいること
• CiscoDNA 関連の製品知識 (Cisco DNA Center, ISE, etc.)
• Python/API/ネットワークプログラマビリティ関連
• お気に入りのCisco製品/技術
• IOS XE 17.2, Catalyst 9000シリーズ
自己紹介
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
アジェンダ
1
2
3
4
5
CML のおさらい
DevNetについて
CML 2.0 API
DevNet における CML 活用例
まとめ
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
Cisco Modeling Labs (CML) とは?
Ciscoが提供する
ネットワークシミュレーションプラットフォーム
• CML1.x
• VIRL (Virtual Internet Routing Labs)
• CML-Enterprise 2.0 (企業向け)
• CML-Personal 2.0 (個人向け)
待望のメジャーバージョンアップ
ブランドはCMLに統一
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
CML 標準付属 プラットフォーム
IOS
IOSv & IOSv L2
IOS XR
XRv & XRv
9000
IOS XE
CSR1000v
NexusASA
ASAv
Other
• TRex
• WAN
Emulator
• Tiny Core
Linux
• Ubuntu
18.04
• CoreOS
• Alpine Linux
NX-OS
7000v &
9000v
※カスタムVMイメージ機能により新規イメージ、サードパーティ製イメージを追加可能
※ディスクイメージバージョン: refplat-20200409-fcs.iso
※各イメージのバージョン等の情報 https://developer.cisco.com/docs/modeling-labs/#!reference-platforms-and-images
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
CML 付属 仮想ノード
ルーター, ファイアウォール
スイッチ サーバー
シミュレーター, その他
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
新規仮想ノードの追加例
新規仮想ノードを追加する際、下記2つのコンポーネントが必要
YAML形式のノード構成ファイル
• CPU,RAM,ネットワークアダプターなどの情報
• 参考:GitHub CML Community
qcow2形式のディスクイメージ
• OSのイメージ
• 別途入手が必要(ベンダーサイトなど)
参考:
https://github.com/CiscoDevNet/cml-community/tree/master/node-definitions
例) A10 vThunderを起動
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
ラボマネージャー と ワークベンチ
ラボ
ワークベンチラボマネージャ
ラボ
• ラボマネージャー: CMLサーバのステータス、ラボを管理するCMLのトップ画面
• ワークベンチ:作成したラボの編集、ネットワークシミュレーションを行うためのメイン画面
• CMLでは1つのネットワークシミュレーションの単位をラボとよぶ
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
ラボマネージャー
システムステータス
• CPU使用率
• メモリ使用率
• ディスク使用率
• 合計仮想ノード数
• 実行中仮想ノード数
など
ラボリスト
• ワークベンチへの移動
• ラボの実行
• ラボの停止
• ラボの初期化
• ラボの削除
など
メニューバー
• ラボの表示切替
• ラボ追加
• ラボのインポート
• ツールへのアクセス
など
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
ワークベンチ
操作・情報表示パネル
• ラボ・ノードの情報
• シミュレーション・ノードの開始
• コンソールアクセス
• ラボのログ表示
など
メニューバー
• ラボのログ表示
• ラボマネージャへの移動
• ラボのエクスポート
• ラボの強制初期化
など
ノード一覧
トポロジ作成
フィールド
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
CML-Enterprise, CML-Personal の比較
Cisco Modeling Labs–Enterprise Cisco Modeling Labs–Personal
対象ユーザ 企業・組織 個人
ユーザ数 マルチユーザ シングルユーザ
ノード数(標準) 20ノード 20ノード
ノード数(最大) 300ノード 20ノード
サポート Cisco TAC Community Support Forum
購入方法 Cisco パートナー経由 Cisco Learning Network Store
ライセンシング スマートライセンス スマートライセンス
スマートアカウントの取得 必要 不要(Cisco.comアカウントがあればOK)
インターネット接続性 必須ではない ※オフラインでの認証も可能 必要 ※1度認証すれば30日間はオフラインでも
使用可能
クラスタリング ロードマップに有り 無し
※現在のバージョンに基づきます。将来のバージョンでは変更される可能性があります。
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
CML
仮想
ラボ
コンソールサーバーとブレイクアウトツール
• CML自体がコンソールサーバーとして機能
• CMLへSSH接続し、各仮想ノードへ接続
• クライアントPCに「ブレイクアウトツール」をインストール
• クライアントPCがプロキシとして、CMLラボのノードに直
接コンソール接続
ブレイクアウトツールコンソールサーバー
自身の端末
CML
(コンソールサーバ)
SSH接続
CML
仮想
ラボ
iTerm2
ブレイクアウト
ツール
Windows, Mac, Linux
TLS通信
CML
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
外部接続コネクター
CML内の仮想ラボ物理ラボ External
Connector
• Cisco DNA Center
• Zabbix
• Ansible
• Docker
• …
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
アジェンダ
1
2
3
4
5
CML のおさらい
DevNetについて
CML 2.0 API
DevNet における CML 活用例
まとめ
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
Cisco DevNet
• アイデアソン&ハッカソン
• DevNet Express
• DevNet Create
• DevNet イノベーションチャレンジ
• DevNet Code Exchange
• DevNet Automation Exchange
• ビジネス、サービス事例
• DevNet Solution Exchange
• 人材開発
• DevNet Learning Labs
• DevNet Sandbox
• DevNet 資格取得
学習、スキル 経験、体験
成果、コードビジネス価値
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
Cisco DevNet コンテンツ/リソース
ソリューションポータル:
Ecosystem Exchange
開発者コミュニティ
コードリポジトリ:
Code Exchange
認定資格:
DevNet Certifications
イベント:
• DevNet Express, DevNet Create
• Cisco Live, Cisco Connect
API ガイド
リモートラボ環境:
DevNet Sandbox
学習コンテンツ:
Learning labs
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
DevNet 認定資格 2020年2月24日開始
https://developer.cisco.com/certification/
インフラ
ストラクチャ
ソフトウェア
アソシエイト スペシャリスト プロフェッショナル エキスパート
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
CCNA
Cisco Certified Network Associate
DevNet Associate
Cisco Certified DevNet Associate
https://www.cisco.com/c/ja_jp/training-events/training-certifications/exams/current-
list/ccna-200-301.html
https://www.cisco.com/c/ja_jp/training-events/training-
certifications/certifications/devnet/cisco-certified-devnet-associate.html
CMLを活用!
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
https://developer.cisco.com/modeling-labs/
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
アジェンダ
1
2
3
4
5
CML のおさらい
DevNetについて
CML 2.0 API
DevNet における CML 活用例
まとめ
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
CML 2.0 API
• APIドキュメントはCML組込
• CMLを操作する135種類のAPI
• Swagger GUIからAPIアクセスの確認
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
Swagger, Postman による認証 Token取得
参考 Postman Collection
https://github.com/sttrayno/CML-Personal-Guide
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
はじめての CML REST API コール
import json
import requests
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
url = "https://<cml_ipaddress>/api/v0/authenticate"
headers = {
'Content-Type': 'application/json',
'accept': 'application/json'
}
payload = {
"username": ”<username>",
"password": ”<password>"
}
response = requests.request("POST", url, headers=headers, data=json.dumps(payload), verify=False).json()
print(response)
認証Tokenの取得例
取得したTokenをヘッダに付けて各APIへアクセス
Pythonライブラリのインポート
HTTPヘッダやペイロードに格納する内容を作成
HTTP POSTメソッドで必要なヘッダ, ペイロードを送信
警告メッセージを表示しない
認証トークン取得APIの変数を作成
APIから返される認証トークンをプリント
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
参考: CMLクライアントライブラリ - virl2-client
認証、リンクやノードの追加削除をシンプルに行う
Python クライアントライブラリ
https://developer.cisco.com/codeexchange/github/repo/CiscoDevNet/virl2-client
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
参考: CMLクライアントライブラリ - virl2-client
参考: virl2-clientを試すJupyter
notebook ファイル(DevNet/Github)
https://github.com/CiscoDevNet/virl2-client/tree/master/examples
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
1. シミュレーションラボ稼働情報の取得
2. YAMLファイルを使ったラボ構成のインポートと起動
3. シミュレーションラボの停止と消去
4. pyATS Testbedファイル(yaml)の出力
ユースケース
1. ラボ情報取得 2. ラボ構成のインポートと起動
test-topology.yaml
3. ラボの停止と消去
getlab.py importlab.py
deletelab.py
CML
pyatsTb_f2d3c5.yaml
4. pyATS用のTestbedファイルを出力
※本セッションでは, pyATSそのも
のについての説明は行いません。
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
1. シミュレーションラボ稼働情報の取得
import json
import requests
cml_url = "https://<cml_ip>/api"
uname = ”<username>"
passwd = ”<password>"
labname = ”<labname>"
def get_token(url, user, password):
api_call = "/v0/authenticate"
url += api_call
headers = {
'Content-Type': 'application/json',
'accept': 'application/json'
}
payload = {
"username": user,
"password": password
}
response = requests.request("POST", url, headers=headers,
data=json.dumps(payload), verify=False).json()
return response
def get_labs(token, url):
api_call = "/v0/labs"
url += api_call
token = 'Bearer' + ' ' + token
headers = {
'accept': 'application/json',
'Authorization': token
}
response = requests.get(url, headers=headers, verify=False).json()
print("#" + " " + "CML 稼働ラボ数" + ": " + str(len(response)) + " at " + labname)
return response
def get_labsdetail(token, url, labids):
token = 'Bearer' + ' ' + token
headers = {
'accept': 'application/json',
'Authorization': token
}
for labid in labids:
api_call = "/v0/labs/" + labid
laburl = url + api_call
guiurl = url.rstrip('api')
guiurl = guiurl + "lab/" + labid
response = requests.get(laburl, headers=headers, verify=False).json()
print("{0:42}{1:22}{2:18}{3:18}".
format(str(response['lab_title']), str(response['created']),
str(response['state']), str(guiurl)))
if __name__ == "__main__":
auth_token = get_token(cml_url, uname, passwd)
print("#"*113)
labids = get_labs(auth_token, cml_url)
print("#"*113)
get_labsdetail(auth_token, cml_url, labids)
print("#"*113)
hellocml.py
認証Token取得
稼働ラボ情報取得
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
1. シミュレーションラボ稼働情報の取得 cont.
~ $python hellocml.py
#################################################################################################################
# CML 稼働ラボ数: 19 at Cisco SE ラボ
#################################################################################################################
Test by tatsaito 2020-06-11 13:33:46 STOPPED https://10.71.154.73/lab/866cb6
test by rmaruyam 2020-06-11 09:17:08 DEFINED_ON_CORE https://10.71.154.73/lab/b3a6eb
To DNAC96 2020-06-17 05:01:40 STARTED https://10.71.154.73/lab/2ba4d1
test by asai 2020-06-17 07:21:17 STOPPED https://10.71.154.73/lab/eeca34
CML-DevNet-Lab 2020-06-22 11:16:04 STARTED https://10.71.154.73/lab/48cadf
TEST Lab asai 2020-06-23 17:42:14 STOPPED https://10.71.154.73/lab/72cbd5
Lab asai 2020-06-24 11:00:16 STOPPED https://10.71.154.73/lab/0fbd5d
TEST Lab asai 2020-06-24 13:17:08 STOPPED https://10.71.154.73/lab/f2d3c5
asai 2020-06-25 13:36:02 STOPPED https://10.71.154.73/lab/0574e5
CML Basic Lab 2020-06-26 13:37:36 STOPPED https://10.71.154.73/lab/deaf38
manual_config_live_vis_configured.virl 2020-06-29 04:11:33 STOPPED https://10.71.154.73/lab/80bbfd
Nov_webinar_demo_topology.virl 2020-06-29 06:25:31 DEFINED_ON_CORE https://10.71.154.73/lab/65ccf2
July_webinar_ospf_eigrp.virl 2020-06-29 06:37:50 DEFINED_ON_CORE https://10.71.154.73/lab/609fbc
Mar15_webinar_l2_unmanaged.virl 2020-06-29 06:38:18 DEFINED_ON_CORE https://10.71.154.73/lab/bae85c
Basic Lab 2 2020-07-08 11:17:55 STOPPED https://10.71.154.73/lab/f72c4b
maruyama-API-Lab 2020-07-19 09:07:25 STOPPED https://10.71.154.73/lab/ebbddc
test-topology-kikuta 2020-07-20 13:23:37 DEFINED_ON_CORE https://10.71.154.73/lab/94d9b1
testtesttest-by-kikuta 2020-07-20 13:27:07 DEFINED_ON_CORE https://10.71.154.73/lab/bf2acf
test-topology.yaml 2020-07-20 15:07:35 STARTED https://10.71.154.73/lab/6b20de
#################################################################################################################
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
2. YAMLファイルを使ったラボ構成のインポートと起動
~ $python import.py test-topology.yaml
Please input an lab title [type q to quit]: test-by-kikuta
test-topology.yaml
<Response [200]>
CMLラボ構成ファイル(YAML or JSON)
インポート/起動するCMLラボの名称
• コンフィグレーションを含めたラボテスト構成を
YAMLで管理し、チームやコミュニティで共有
• CI/CDツールと組み合わせたNetDevOps
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
2. YAMLファイルを使ったラボ構成のインポートと起動 cont.
import.py
def import_lab(token, url):
labtitle = input("Please input an lab title [type q to quit]: ")
api_call = "/v0/import"
url += api_call + "?title=" + labtitle
token = 'Bearer' + ' ' + token
headers = {
'Content-Type': 'application/json',
'accept': 'application/json',
'Authorization': token
}
args = sys.argv
f = open(args[1])
data = f.read()
response = requests.request("POST", url, headers=headers, data=data, verify=False)
print(response)
作成するラボ名称を含めてPOST
ラボ構成YAMLファイルの読み込み
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
lab:
description: ''
notes: ''
timestamp: 1589315403.782141
title: Lab at Tue 20:30 PM
version: 0.0.3
nodes:
- id: n0
label: csr1000v-0
node_definition: csr1000v
x: -600
y: -50
configuration: hostname inserthostname_here
image_definition: csr1000v-161101b
tags: []
interfaces:
- id: i0
label: Loopback0
type: loopback
- id: i1
slot: 0
label: GigabitEthernet1
type: physical
- id: i2
slot: 1
label: GigabitEthernet2
type: physical
- id: i3
slot: 2
label: GigabitEthernet3
type: physical
- id: i4
slot: 3
label: GigabitEthernet4
type: physical
- id: n1
label: csr1000v-1
node_definition: csr1000v
x: 0
y: -50
configuration: hostname inserthostname_here
image_definition: csr1000v-161101b
tags: []
interfaces:
- id: i0
label: Loopback0
type: loopback
- id: i1
slot: 0
label: GigabitEthernet1
type: physical
- id: i2
slot: 1
label: GigabitEthernet2
type: physical
- id: i3
slot: 2
label: GigabitEthernet3
type: physical
- id: i4
slot: 3
label: GigabitEthernet4
type: physical
- id: n2
label: wan-em-0
node_definition: wan_emulator
x: -300
y: -100
configuration: |-
LATENCY="500"
JITTER="5"
LOSS="30.0"
BANDWIDTH="512"
image_definition: alpine-3-10-wanem
tags: []
interfaces:
- id: i0
slot: 0
label: eth0
type: physical
- id: i1
slot: 1
label: eth1
type: physical
links:
- id: l0
i1: i1
n1: n0
i2: i0
n2: n2
- id: l1
i1: i1
n1: n2
i2: i1
test-topology.yaml
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
参考: CMLラボ構成のエクスポート
エクスポートされたCMLラボ構成のYAMLファイル
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
3. シミュレーションラボの停止と消去
def delete_lab(token, url):
token = 'Bearer' + ' ' + token
headers = {
'accept': 'application/json',
'Authorization': token
}
deletelabid = input("Please input lab ID to be deleted? [type q to quit]: ")
api_call = "/v0/labs/" + deletelabid
url = url + api_call
response = requests.delete(url, headers=headers, verify=False)
print(response)
消去したいラボIDをDeleteメソッドで送信
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
4. pyATS Testbedファイル(yaml)の出力
def get_pyats_testbed(token, url, hostname):
pyatslabid = input("Please input lab ID to be deleted? [type q to quit]: ")
token = 'Bearer' + ' ' + token
headers = {
'accept': 'application/json',
'Authorization': token
}
api_call = "/v0/labs/" + pyatslabid + "/pyats_testbed?hostname=" + hostname
url = url + api_call
response = requests.get(url, headers=headers, verify=False)
print(response.text)
with open('testbed.yaml', 'w') as f:
f.write(response.text)
pyATS用のTestbed YAMLファイルをリクエストするAPI
※本セッションでは, pyATSそのも
のについての説明は行いません。
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
~ $ python pyats_testbed.py
Please input lab ID to be deleted? [type q to quit]: deaf38
testbed:
name: CML Basic Lab
tacacs:
login_prompt: 'login:'
password_prompt: 'Password:'
username: '%ENV{PYATS_USERNAME}'
passwords:
tacacs: '%ENV{PYATS_PASSWORD}'
enable: '%ENV{PYATS_AUTH_PASS}'
line: '%ENV{PYATS_PASSWORD}'
devices:
terminal_server:
os: linux
type: linux
connections:
cli:
protocol: ssh
ip: 10.71.154.73
username: change_me
password: change_me
iosv-0:
os: ios
type: router
series: iosv
tacacs:
username: cisco
passwords:
tacacs: cisco
connections:
defaults:
class: unicon.Unicon
a:
protocol: telnet
proxy: terminal_server
command: open /deaf38/n7/0
iosv-1:
os: ios
type: router
series: iosv
tacacs:
username: cisco
passwords:
tacacs: cisco
connections:
defaults:
class: unicon.Unicon
a:
protocol: telnet
proxy: terminal_server
command: open /deaf38/n10/0
iosv-2:
os: ios
type: router
series: iosv
tacacs:
username: cisco
passwords:
tacacs: cisco
connections:
defaults:
class: unicon.Unicon
a:
protocol: telnet
proxy: terminal_server
command: open /deaf38/n11/0
iosv-3:
os: ios
<省略>
~ $ ls | grep deaf38
pyatsTb_deaf38.yaml
pyATS用のTestbed
YAMLファイルを出力
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
スキル人材育成のサイクル短縮を目指し、プログラマビリティをフル活用した
新たな研修プラットフォーム「バーチャルリモートラボ(VRL)」を構築
NTT 西日本のグループ企業として西日本に約 200 の拠点で通信ネットワーク環境の構築から開通・運用サポート・修理まで、暮らしの
快適・安心を地域密着で支えている NTT フィールドテクノ。通信設備の維持管理業務からより付加価値の高い設備系 BPO 事業への
シフトチェンジを推進する上で高品質なスキル人材育成のスピードアップが求められた同社は、プログラマビリティを最大限活用した新
たな研修プラットフォーム「バーチャルリモートラボ(VRL)」を構築。CML (Cisco Modeling Lab) API による仮想での NW 構築研修も実
施し、Off-JT(学び)とOJT(実践)のサイクル短縮化を実現しました。*
DevNet 活用事例:株式会社NTTフィールドテクノ
・豊富な実践的ドキュメントと充実したコミュニティ
・DevNet Expressでシスコ SEから実践的な API / プログラマビリティが学べる
事業内容
課題 ソリューション 結果〜今後
設立
シスコ との関係
1999年4月1日
エンドユーザー
Why DevNet?
コールセンター業務/宅内設備の保守業務/
光開通関連オペレーション業務/交換・伝送路
設備のオンサイト保守業務/設備業務に関す
る技術者育成の業務 など
• CML(Cisco Modeling Labs)
• Cisco DNA Center
• Cisco ISE
• Cisco TrustSec
• Cisco Stealthwatch
シスコ関連製品・サービス
DevNetユースケース
人材育成/高付加価値化
 通信設備の維持管理業務から、より付加
価値の高い設備系BPO*事業へのシフト
チェンジを推進する上で、高品質なスキル
人材育成のスピードアップが求められる
*BPO .. Business Process Outsourcing
 従来型の集合研修は開催時期が限られ、
事前や事後学習もままならない
 専用ハードウェア購入費用や設置スペー
スを抑えたい
 突発的な業務繁忙や災害発生などで学習
機会が失われることも多かった
デジタル技術活用により、いつでもどこ
でも研修を受講できる環境「バーチャル
リモートラボ(VRL)」を構築
 CML (Cisco Modeling Lab) API
:NW 設計、構築、視覚化、シミュレー
ションを仮想環境で実現(CMLをバック
エンドで活用した研修プラットフォーム)
 Cisco ISE REST API 、pxGrid
 Cisco TrustSec
 Cisco DNA Center
 Cisco Stealthwatch
:受講者のセキュアなアクセスを可能に
する認証システムを構築
 新研修プラットフォーム「VRL」により、オンデ
マンド型でいつでもどこでも学べる研修環境
を実現
 CML により ネットワーク 機器購入コストを
大幅に抑え、受講者は自由な NW 設計、構
築、シミュレーション環境がいつでも活用で
きる
 VRL での研修分野を広げフィードバック、集
合研修とのブレンディッドラーニングで育成
効果を向上。今後はグループ企業への提供
拡大も計画
*本取り組みは日本最大級の人事ポータル HR プロの「第 9 回日本 HR チャレンジ大賞」を受賞しました。
https://www.hrpro.co.jp/challenge.php
参考事例
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
アジェンダ
1
2
3
4
5
CML のおさらい
DevNetについて
CML 2.0 API
DevNet における CML 活用例
まとめ
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
DevNet における CML 活用例
デモ1)NETCONF/RESTCONFネットワークOSでのAPI
デモ2)IOS XE on-box pythonネットワーク装置でのプログラマビリティ
デモ3)Cisco DNA CenterSDNコントローラー API
デモ4)AnsibleIaC/構成管理ツール
DevNet/プログラマビリティの要素 CML活用例
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
ネットワークOSでのAPI ネットワーク装置でのプログラマビリティ
SDNコントローラー API IaC/構成管理ツール
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
ネットワークOSでのAPI ネットワーク装置でのプログラマビリティ
SDNコントローラー API IaC/構成管理ツール
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
ネットワークOSでのAPI ネットワーク装置でのプログラマビリティ
SDNコントローラー API IaC/構成管理ツール
複数の装置(OS)での
Netconf/Restconfのテスト
CML上でのLinux活用
複数の装置(OS)での
On-boxプログラミング機能
外部接続を使った
コントローラー接続
外部接続を使った
IaCツール試験
CML上でのIaCツール構築
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
デモ1 NETCONF/RESTCONF
ネットワーク機器の情報取得, 設定変更
CML
CML
実機
CSR1000V
Postman
Ubuntu
デモ1.1 NETCONF/YANG (RFC6241)
デモ1.2 RESTCONF/YANG (RFC8040)
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
デモ2 IOS XE on-box Python
設定変更後に疎通確認&結果報告
event manager applet TestAfterConfig
event syslog pattern "SYS-5-CONFIG_I"
action 100 cli command "enable"
action 110 syslog msg "## Testing after Configuration Change ...... ##"
action 200 cli command "guestshell run python /home/guestshell/pingreport.py"
IOS XE, NXOS,
IOS XR..
CML
on-box Python:
pingreport.py
IOS XE:
EEM*
*EEM … Embedded Event Manager
例)コンフィグ変更のsyslogを検知し、
On-box Pythonを実行
例)ルーター上のpythonスクリプトでは、
事前に指定されたIPアドレスに対してping
を実行し、その結果をExcelファイルにまと
め、Webex Teamsへ送信
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
デモ3 SDNコントローラー API
CML
ネットワーク
実機
Cisco DNA CenterPC
Cisco DNA CenterのAPIで機器情報取得
Cisco DNA Center API ドキュメント
例)
• PC上で, DNAC Command Runner APIへアクセスする
Pythonスクリプトを実行
• DNA Center経由で装置のCLIへアクセス
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
デモ4 IaC/構成管理ツール
Ansibleで複数機種に一括設定変更
例)
• CML上で動作するUbuntu仮想マシンから、
Ansibleを実行
• IOSv, IOSv-L2, IOS XE, Nexus9000vといった
様々なモデルにVRFを設定するPlaybookを実行
VRF設定Playbook:
vrf-test.yaml
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
アジェンダ
1
2
3
4
5
CML のおさらい
DevNetについて
CML 2.0 API
DevNet における CML 活用例
まとめ
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
• CML環境を使ったネットワークのコンフィグや学習に加え、CML環境をAPIから操作すること
で、環境の自動生成や共有が容易
 ネットワークインフラのCI/CD, NetDevOps
 カスタマイズされた学習システム – NTTフィールドテクノ様事例
• CML環境を使ったネットワークのコンフィグや学習に加え、仮想ノードのAPIやプログラミング
機能の学習に活用
 装置のモデルドリブンインターフェース - Netconf, Restconf
 On-box プログラマビリティ
 SDN コントローラー API
 構成管理/IaCツール
• DevNet資格取得への近道
まとめ
CML
API
確認
インポート,起動
消去
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
・ CML 紹介ページ
https://developer.cisco.com/modeling-labs/
• CMLのドキュメント一覧ページ
https://developer.cisco.com/docs/modeling-labs/
• CML-Pのコミュニティサイト
https://learningnetwork.cisco.com/s/topic/0TO3i00000094ZjGAI/cisco-modeling-labs-personal-community
• DevNet ポータルサイト
https://developer.cisco.com/
• DevNet コードリポジトリ検索ページ
https://developer.cisco.com/codeexchange/
• CML – Personal(日本語)
https://learningnetwork.cisco.com/s/article/jp-cisco-cml-personal
• CML – Enterprise(日本語)
https://learningnetwork.cisco.com/s/jp-modeling-labs
参考リンク
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
• 102のラーニングモジュール(7/27現在)
• テクノロジーごとにトラックとして分類された学習コース
(DevNet Express)
• PC環境セットアップ, プログラミング基礎, REST-API
基礎, AnsibleやPowerShellなどのシスコ以外の内
容もカバー
• 概念/考え方, 必要性, プログラミング初歩, 実用コー
ドまでステップ
• サンドボックスのラボに対応
• 学習コードはすべてGitHubで公開
• DevNet 資格の勉強にも有用!
DevNet Express Tracks
https://developer.cisco.com/learning/devnet-express
https://github.com/CiscoDevNet
https://developer.cisco.com/site/sandbox/
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
NETCONF/RESTCONF
https://developer.cisco.com/learning/devnet-express/dnav3-track-jp
1. 複数の装置(OS)でのNetconf/Restconfのテスト
2. CML上でのLinux活用
CML
CML
実機
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
IOS XE on-box python
https://developer.cisco.com/learning/devnet-express/dnav3-track-jp
IOS XE, NXOS,
IOS XR..
複数の装置(OS)でのOn-boxプログラミング機能
CML
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
SDNコントローラー API
https://developer.cisco.com/learning/devnet-express/dnav4-track
CML
ネットワーク
実機
外部接続を使ったコントローラー接続
Cisco DNA CenterPC
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
IaC/構成管理ツール
https://developer.cisco.com/learning/devnet-express/dnav4-track
ネットワーク
Ansible
1. 外部接続を使ったIaCツール試験
2. CML上でのIaCツール構築
CML
CML
実機
各種ネットワークOS, 構成各種Ansibleモジュール

Mais conteúdo relacionado

Mais procurados

ネットワーク機器のAPIあれこれ入門 (NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門 (NetOpsCoding#2)Kentaro Ebisawa
 
大規模DCのネットワークデザイン
大規模DCのネットワークデザイン大規模DCのネットワークデザイン
大規模DCのネットワークデザインMasayuki Kobayashi
 
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理NTT DATA Technology & Innovation
 
kubernetes-meetup-tokyo-20210624-kubevirt
kubernetes-meetup-tokyo-20210624-kubevirtkubernetes-meetup-tokyo-20210624-kubevirt
kubernetes-meetup-tokyo-20210624-kubevirtYukinori Sagara
 
フロー技術によるネットワーク管理
フロー技術によるネットワーク管理フロー技術によるネットワーク管理
フロー技術によるネットワーク管理Motonori Shindo
 
cloudpackサーバ仕様書(サンプル)
cloudpackサーバ仕様書(サンプル)cloudpackサーバ仕様書(サンプル)
cloudpackサーバ仕様書(サンプル)iret, Inc.
 
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース 【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース Juniper Networks (日本)
 
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化dcubeio
 
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Etsuji Nakai
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたakira6592
 
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コースJuniper Networks (日本)
 
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/FallZabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/FallAtsushi Tanaka
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門Kohei Tokunaga
 
Keycloak拡張入門
Keycloak拡張入門Keycloak拡張入門
Keycloak拡張入門Hiroyuki Wada
 
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜Taiji Tsuchiya
 
大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌LINE Corporation
 
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方Toru Makabe
 
OpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれOpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれToru Makabe
 
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化シスコシステムズ合同会社
 

Mais procurados (20)

ネットワーク機器のAPIあれこれ入門 (NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門 (NetOpsCoding#2)
 
大規模DCのネットワークデザイン
大規模DCのネットワークデザイン大規模DCのネットワークデザイン
大規模DCのネットワークデザイン
 
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
 
kubernetes-meetup-tokyo-20210624-kubevirt
kubernetes-meetup-tokyo-20210624-kubevirtkubernetes-meetup-tokyo-20210624-kubevirt
kubernetes-meetup-tokyo-20210624-kubevirt
 
フロー技術によるネットワーク管理
フロー技術によるネットワーク管理フロー技術によるネットワーク管理
フロー技術によるネットワーク管理
 
cloudpackサーバ仕様書(サンプル)
cloudpackサーバ仕様書(サンプル)cloudpackサーバ仕様書(サンプル)
cloudpackサーバ仕様書(サンプル)
 
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース 【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース
【EX/QFX】JUNOS ハンズオントレーニング資料 EX/QFX シリーズ サービス ゲートウェイ コース
 
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
 
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
 
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース
 
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/FallZabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
 
Keycloak拡張入門
Keycloak拡張入門Keycloak拡張入門
Keycloak拡張入門
 
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
 
大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌
 
ネットワーク構築訓練 入門
ネットワーク構築訓練 入門ネットワーク構築訓練 入門
ネットワーク構築訓練 入門
 
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
 
OpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれOpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれ
 
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
 

Semelhante a Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)

2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMFAtomu Hidaka
 
Cell/B.E. プログラミング事始め
Cell/B.E. プログラミング事始めCell/B.E. プログラミング事始め
Cell/B.E. プログラミング事始めYou&I
 
VIRLとPyATSで実現するネットワークCI
VIRLとPyATSで実現するネットワークCIVIRLとPyATSで実現するネットワークCI
VIRLとPyATSで実現するネットワークCItetsusat
 
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうDevTakas
 
Microsoft Tunnel 概要
Microsoft Tunnel 概要Microsoft Tunnel 概要
Microsoft Tunnel 概要Yutaro Tamai
 
CSCJ_Webcast_20180626_ACI.pdf
CSCJ_Webcast_20180626_ACI.pdfCSCJ_Webcast_20180626_ACI.pdf
CSCJ_Webcast_20180626_ACI.pdfyojitanaka2
 
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用de:code 2017
 
201111 04
201111 04201111 04
201111 04openrtm
 
.NET アプリを改善して実践する継続的インテグレーション
.NET アプリを改善して実践する継続的インテグレーション.NET アプリを改善して実践する継続的インテグレーション
.NET アプリを改善して実践する継続的インテグレーションYuta Matsumura
 
2021/03/19 パブリッククラウドを活かす運用プロセス自動化
2021/03/19 パブリッククラウドを活かす運用プロセス自動化2021/03/19 パブリッククラウドを活かす運用プロセス自動化
2021/03/19 パブリッククラウドを活かす運用プロセス自動化Issei Hiraoka
 
20220914_MySQLでDevOps!
20220914_MySQLでDevOps!20220914_MySQLでDevOps!
20220914_MySQLでDevOps!Machiko Ikoma
 
20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデート20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデートKazumasa Ikuta
 
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」Nobuyuki Tamaoki
 
Prometheus超基礎公開用.pdf
Prometheus超基礎公開用.pdfPrometheus超基礎公開用.pdf
Prometheus超基礎公開用.pdf勇 黒沢
 
20150704 MS Azure最新 - innovation egg 第4回
20150704 MS Azure最新 - innovation egg 第4回20150704 MS Azure最新 - innovation egg 第4回
20150704 MS Azure最新 - innovation egg 第4回Keiji Kamebuchi
 
4.総合演習(1)
4.総合演習(1)4.総合演習(1)
4.総合演習(1)openrtm
 
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-Hiroki Kondo
 
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜Daiki Kawanuma
 
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜Shuji Yamada
 

Semelhante a Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編) (20)

2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF
 
Cell/B.E. プログラミング事始め
Cell/B.E. プログラミング事始めCell/B.E. プログラミング事始め
Cell/B.E. プログラミング事始め
 
VIRLとPyATSで実現するネットワークCI
VIRLとPyATSで実現するネットワークCIVIRLとPyATSで実現するネットワークCI
VIRLとPyATSで実現するネットワークCI
 
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おう
 
Microsoft Tunnel 概要
Microsoft Tunnel 概要Microsoft Tunnel 概要
Microsoft Tunnel 概要
 
CSCJ_Webcast_20180626_ACI.pdf
CSCJ_Webcast_20180626_ACI.pdfCSCJ_Webcast_20180626_ACI.pdf
CSCJ_Webcast_20180626_ACI.pdf
 
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
 
201111 04
201111 04201111 04
201111 04
 
.NET アプリを改善して実践する継続的インテグレーション
.NET アプリを改善して実践する継続的インテグレーション.NET アプリを改善して実践する継続的インテグレーション
.NET アプリを改善して実践する継続的インテグレーション
 
2021/03/19 パブリッククラウドを活かす運用プロセス自動化
2021/03/19 パブリッククラウドを活かす運用プロセス自動化2021/03/19 パブリッククラウドを活かす運用プロセス自動化
2021/03/19 パブリッククラウドを活かす運用プロセス自動化
 
20220914_MySQLでDevOps!
20220914_MySQLでDevOps!20220914_MySQLでDevOps!
20220914_MySQLでDevOps!
 
20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデート20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデート
 
IOS/IOS-XE 運用管理機能アップデート
IOS/IOS-XE 運用管理機能アップデートIOS/IOS-XE 運用管理機能アップデート
IOS/IOS-XE 運用管理機能アップデート
 
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
 
Prometheus超基礎公開用.pdf
Prometheus超基礎公開用.pdfPrometheus超基礎公開用.pdf
Prometheus超基礎公開用.pdf
 
20150704 MS Azure最新 - innovation egg 第4回
20150704 MS Azure最新 - innovation egg 第4回20150704 MS Azure最新 - innovation egg 第4回
20150704 MS Azure最新 - innovation egg 第4回
 
4.総合演習(1)
4.総合演習(1)4.総合演習(1)
4.総合演習(1)
 
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
 
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
 
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜
 

Mais de シスコシステムズ合同会社

【Interop Tokyo 2016】 ShowNet - SSS-17 : ShowNet 2016 を支える シスコの最新テクノロジー
【Interop Tokyo 2016】 ShowNet - SSS-17 :  ShowNet 2016 を支えるシスコの最新テクノロジー【Interop Tokyo 2016】 ShowNet - SSS-17 :  ShowNet 2016 を支えるシスコの最新テクノロジー
【Interop Tokyo 2016】 ShowNet - SSS-17 : ShowNet 2016 を支える シスコの最新テクノロジーシスコシステムズ合同会社
 
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco の先進セキュリティ ソリューション」 Shownet 2016...
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco の先進セキュリティ ソリューション」 Shownet 2016...【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco の先進セキュリティ ソリューション」 Shownet 2016...
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco の先進セキュリティ ソリューション」 Shownet 2016...シスコシステムズ合同会社
 
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...シスコシステムズ合同会社
 
【Interop Tokyo 2016】 Seminar - EA-09 : エンタープライズ ワイヤレス:デジタル世界のための信頼性と汎用性に優れたアクセス
【Interop Tokyo 2016】 Seminar - EA-09 : エンタープライズ ワイヤレス:デジタル世界のための信頼性と汎用性に優れたアクセス【Interop Tokyo 2016】 Seminar - EA-09 : エンタープライズ ワイヤレス:デジタル世界のための信頼性と汎用性に優れたアクセス
【Interop Tokyo 2016】 Seminar - EA-09 : エンタープライズ ワイヤレス:デジタル世界のための信頼性と汎用性に優れたアクセスシスコシステムズ合同会社
 
【Interop Tokyo 2016】 Seminar - EA-08 : シスコ データセンターSDN戦略、3本の矢
【Interop Tokyo 2016】 Seminar - EA-08 : シスコ データセンターSDN戦略、3本の矢【Interop Tokyo 2016】 Seminar - EA-08 : シスコ データセンターSDN戦略、3本の矢
【Interop Tokyo 2016】 Seminar - EA-08 : シスコ データセンターSDN戦略、3本の矢シスコシステムズ合同会社
 
【Interop Tokyo 2016】 Seminar - EA-05 : 「Cisco の先進コア ネットワーク ソリューション」 Shownet 2...
【Interop Tokyo 2016】 Seminar - EA-05 : 「Cisco の先進コア ネットワーク ソリューション」 Shownet 2...【Interop Tokyo 2016】 Seminar - EA-05 : 「Cisco の先進コア ネットワーク ソリューション」 Shownet 2...
【Interop Tokyo 2016】 Seminar - EA-05 : 「Cisco の先進コア ネットワーク ソリューション」 Shownet 2...シスコシステムズ合同会社
 
【Interop Tokyo 2016】 SP ネットワークの変革を支える技術イノベーション
【Interop Tokyo 2016】 SP ネットワークの変革を支える技術イノベーション【Interop Tokyo 2016】 SP ネットワークの変革を支える技術イノベーション
【Interop Tokyo 2016】 SP ネットワークの変革を支える技術イノベーションシスコシステムズ合同会社
 
【Interop Tokyo 2016】 新たなルーティング パラダイム セグメントルーティング
【Interop Tokyo 2016】 新たなルーティング パラダイム セグメントルーティング【Interop Tokyo 2016】 新たなルーティング パラダイム セグメントルーティング
【Interop Tokyo 2016】 新たなルーティング パラダイム セグメントルーティングシスコシステムズ合同会社
 
【Interop Tokyo 2016】 ネットワーク モデリングと自動制御
【Interop Tokyo 2016】 ネットワーク モデリングと自動制御【Interop Tokyo 2016】 ネットワーク モデリングと自動制御
【Interop Tokyo 2016】 ネットワーク モデリングと自動制御シスコシステムズ合同会社
 
【Interop Tokyo 2016】 次世代サービス チェイニング NSH (Network Service Header)
【Interop Tokyo 2016】 次世代サービス チェイニング NSH (Network Service Header)【Interop Tokyo 2016】 次世代サービス チェイニング NSH (Network Service Header)
【Interop Tokyo 2016】 次世代サービス チェイニング NSH (Network Service Header)シスコシステムズ合同会社
 
【Interop Tokyo 2016】 ビッグデータ解析手法による脅威分析サービス
【Interop Tokyo 2016】 ビッグデータ解析手法による脅威分析サービス【Interop Tokyo 2016】 ビッグデータ解析手法による脅威分析サービス
【Interop Tokyo 2016】 ビッグデータ解析手法による脅威分析サービスシスコシステムズ合同会社
 
【Interop Tokyo 2016】 Cisco Advanced Malware Protection(AMP)/ レトロ スペクティブで見えてくる...
【Interop Tokyo 2016】 Cisco Advanced Malware Protection(AMP)/ レトロ スペクティブで見えてくる...【Interop Tokyo 2016】 Cisco Advanced Malware Protection(AMP)/ レトロ スペクティブで見えてくる...
【Interop Tokyo 2016】 Cisco Advanced Malware Protection(AMP)/ レトロ スペクティブで見えてくる...シスコシステムズ合同会社
 
【Interop Tokyo 2016】 世界最大級の脅威情報と自社ネットワークの脅威可視化
【Interop Tokyo 2016】 世界最大級の脅威情報と自社ネットワークの脅威可視化【Interop Tokyo 2016】 世界最大級の脅威情報と自社ネットワークの脅威可視化
【Interop Tokyo 2016】 世界最大級の脅威情報と自社ネットワークの脅威可視化シスコシステムズ合同会社
 
【Interop Tokyo 2016】 初心者でもわかるCisco SDNの概要
【Interop Tokyo 2016】 初心者でもわかるCisco SDNの概要【Interop Tokyo 2016】 初心者でもわかるCisco SDNの概要
【Interop Tokyo 2016】 初心者でもわかるCisco SDNの概要シスコシステムズ合同会社
 
【Interop Tokyo 2016】 LAN/WAN向けSDNコントローラ APIC-EMのご紹介
【Interop Tokyo 2016】 LAN/WAN向けSDNコントローラ APIC-EMのご紹介【Interop Tokyo 2016】 LAN/WAN向けSDNコントローラ APIC-EMのご紹介
【Interop Tokyo 2016】 LAN/WAN向けSDNコントローラ APIC-EMのご紹介シスコシステムズ合同会社
 
【Interop Tokyo 2016】 CCNA RS 改訂ポイントと BOOTCAMP トレーニング
【Interop Tokyo 2016】 CCNA RS 改訂ポイントと BOOTCAMP トレーニング【Interop Tokyo 2016】 CCNA RS 改訂ポイントと BOOTCAMP トレーニング
【Interop Tokyo 2016】 CCNA RS 改訂ポイントと BOOTCAMP トレーニングシスコシステムズ合同会社
 
【Interop Tokyo 2016】 30年の実績と経験!シスコ スイッチ最新機能と伝統機能をご紹介
【Interop Tokyo 2016】 30年の実績と経験!シスコ スイッチ最新機能と伝統機能をご紹介【Interop Tokyo 2016】 30年の実績と経験!シスコ スイッチ最新機能と伝統機能をご紹介
【Interop Tokyo 2016】 30年の実績と経験!シスコ スイッチ最新機能と伝統機能をご紹介シスコシステムズ合同会社
 
【Interop Tokyo 2016】 次世代ハイパーコンバージド Cisco HyperFlex (初心者編)
【Interop Tokyo 2016】 次世代ハイパーコンバージド Cisco HyperFlex (初心者編)【Interop Tokyo 2016】 次世代ハイパーコンバージド Cisco HyperFlex (初心者編)
【Interop Tokyo 2016】 次世代ハイパーコンバージド Cisco HyperFlex (初心者編)シスコシステムズ合同会社
 

Mais de シスコシステムズ合同会社 (20)

【Interop Tokyo 2016】 ShowNet - SSS-17 : ShowNet 2016 を支える シスコの最新テクノロジー
【Interop Tokyo 2016】 ShowNet - SSS-17 :  ShowNet 2016 を支えるシスコの最新テクノロジー【Interop Tokyo 2016】 ShowNet - SSS-17 :  ShowNet 2016 を支えるシスコの最新テクノロジー
【Interop Tokyo 2016】 ShowNet - SSS-17 : ShowNet 2016 を支える シスコの最新テクノロジー
 
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco の先進セキュリティ ソリューション」 Shownet 2016...
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco の先進セキュリティ ソリューション」 Shownet 2016...【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco の先進セキュリティ ソリューション」 Shownet 2016...
【Interop Tokyo 2016】 Seminar - EA-18 : 「Cisco の先進セキュリティ ソリューション」 Shownet 2016...
 
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
 
【Interop Tokyo 2016】 Seminar - EA-09 : エンタープライズ ワイヤレス:デジタル世界のための信頼性と汎用性に優れたアクセス
【Interop Tokyo 2016】 Seminar - EA-09 : エンタープライズ ワイヤレス:デジタル世界のための信頼性と汎用性に優れたアクセス【Interop Tokyo 2016】 Seminar - EA-09 : エンタープライズ ワイヤレス:デジタル世界のための信頼性と汎用性に優れたアクセス
【Interop Tokyo 2016】 Seminar - EA-09 : エンタープライズ ワイヤレス:デジタル世界のための信頼性と汎用性に優れたアクセス
 
【Interop Tokyo 2016】 Seminar - EA-08 : シスコ データセンターSDN戦略、3本の矢
【Interop Tokyo 2016】 Seminar - EA-08 : シスコ データセンターSDN戦略、3本の矢【Interop Tokyo 2016】 Seminar - EA-08 : シスコ データセンターSDN戦略、3本の矢
【Interop Tokyo 2016】 Seminar - EA-08 : シスコ データセンターSDN戦略、3本の矢
 
【Interop Tokyo 2016】 Seminar - EA-05 : 「Cisco の先進コア ネットワーク ソリューション」 Shownet 2...
【Interop Tokyo 2016】 Seminar - EA-05 : 「Cisco の先進コア ネットワーク ソリューション」 Shownet 2...【Interop Tokyo 2016】 Seminar - EA-05 : 「Cisco の先進コア ネットワーク ソリューション」 Shownet 2...
【Interop Tokyo 2016】 Seminar - EA-05 : 「Cisco の先進コア ネットワーク ソリューション」 Shownet 2...
 
【Interop Tokyo 2016】 SP ネットワークの変革を支える技術イノベーション
【Interop Tokyo 2016】 SP ネットワークの変革を支える技術イノベーション【Interop Tokyo 2016】 SP ネットワークの変革を支える技術イノベーション
【Interop Tokyo 2016】 SP ネットワークの変革を支える技術イノベーション
 
【Interop Tokyo 2016】 新たなルーティング パラダイム セグメントルーティング
【Interop Tokyo 2016】 新たなルーティング パラダイム セグメントルーティング【Interop Tokyo 2016】 新たなルーティング パラダイム セグメントルーティング
【Interop Tokyo 2016】 新たなルーティング パラダイム セグメントルーティング
 
【Interop Tokyo 2016】 ネットワーク モデリングと自動制御
【Interop Tokyo 2016】 ネットワーク モデリングと自動制御【Interop Tokyo 2016】 ネットワーク モデリングと自動制御
【Interop Tokyo 2016】 ネットワーク モデリングと自動制御
 
【Interop Tokyo 2016】 次世代サービス チェイニング NSH (Network Service Header)
【Interop Tokyo 2016】 次世代サービス チェイニング NSH (Network Service Header)【Interop Tokyo 2016】 次世代サービス チェイニング NSH (Network Service Header)
【Interop Tokyo 2016】 次世代サービス チェイニング NSH (Network Service Header)
 
【Interop Tokyo 2016】 ビッグデータ解析手法による脅威分析サービス
【Interop Tokyo 2016】 ビッグデータ解析手法による脅威分析サービス【Interop Tokyo 2016】 ビッグデータ解析手法による脅威分析サービス
【Interop Tokyo 2016】 ビッグデータ解析手法による脅威分析サービス
 
【Interop Tokyo 2016】 Cisco Advanced Malware Protection(AMP)/ レトロ スペクティブで見えてくる...
【Interop Tokyo 2016】 Cisco Advanced Malware Protection(AMP)/ レトロ スペクティブで見えてくる...【Interop Tokyo 2016】 Cisco Advanced Malware Protection(AMP)/ レトロ スペクティブで見えてくる...
【Interop Tokyo 2016】 Cisco Advanced Malware Protection(AMP)/ レトロ スペクティブで見えてくる...
 
【Interop Tokyo 2016】 世界最大級の脅威情報と自社ネットワークの脅威可視化
【Interop Tokyo 2016】 世界最大級の脅威情報と自社ネットワークの脅威可視化【Interop Tokyo 2016】 世界最大級の脅威情報と自社ネットワークの脅威可視化
【Interop Tokyo 2016】 世界最大級の脅威情報と自社ネットワークの脅威可視化
 
【Interop Tokyo 2016】 初心者でもわかるCisco SDNの概要
【Interop Tokyo 2016】 初心者でもわかるCisco SDNの概要【Interop Tokyo 2016】 初心者でもわかるCisco SDNの概要
【Interop Tokyo 2016】 初心者でもわかるCisco SDNの概要
 
【Interop Tokyo 2016】 LAN/WAN向けSDNコントローラ APIC-EMのご紹介
【Interop Tokyo 2016】 LAN/WAN向けSDNコントローラ APIC-EMのご紹介【Interop Tokyo 2016】 LAN/WAN向けSDNコントローラ APIC-EMのご紹介
【Interop Tokyo 2016】 LAN/WAN向けSDNコントローラ APIC-EMのご紹介
 
【Interop Tokyo 2016】 CCNA RS 改訂ポイントと BOOTCAMP トレーニング
【Interop Tokyo 2016】 CCNA RS 改訂ポイントと BOOTCAMP トレーニング【Interop Tokyo 2016】 CCNA RS 改訂ポイントと BOOTCAMP トレーニング
【Interop Tokyo 2016】 CCNA RS 改訂ポイントと BOOTCAMP トレーニング
 
【Interop Tokyo 2016】 Cisco Jasper Control Center
【Interop Tokyo 2016】 Cisco Jasper Control Center【Interop Tokyo 2016】 Cisco Jasper Control Center
【Interop Tokyo 2016】 Cisco Jasper Control Center
 
【Interop Tokyo 2016】 Cisco IoT (展示内容紹介)
【Interop Tokyo 2016】 Cisco IoT (展示内容紹介)【Interop Tokyo 2016】 Cisco IoT (展示内容紹介)
【Interop Tokyo 2016】 Cisco IoT (展示内容紹介)
 
【Interop Tokyo 2016】 30年の実績と経験!シスコ スイッチ最新機能と伝統機能をご紹介
【Interop Tokyo 2016】 30年の実績と経験!シスコ スイッチ最新機能と伝統機能をご紹介【Interop Tokyo 2016】 30年の実績と経験!シスコ スイッチ最新機能と伝統機能をご紹介
【Interop Tokyo 2016】 30年の実績と経験!シスコ スイッチ最新機能と伝統機能をご紹介
 
【Interop Tokyo 2016】 次世代ハイパーコンバージド Cisco HyperFlex (初心者編)
【Interop Tokyo 2016】 次世代ハイパーコンバージド Cisco HyperFlex (初心者編)【Interop Tokyo 2016】 次世代ハイパーコンバージド Cisco HyperFlex (初心者編)
【Interop Tokyo 2016】 次世代ハイパーコンバージド Cisco HyperFlex (初心者編)
 

Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)

  • 1. シスコシステムズ合同会社 システムズエンジニア 丸山 隆太 2020/7/28 DevNet 編 Cisco Modeling Labs (CML) を使って ネットワークを学ぼう!
  • 2. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public Cisco Modeling Labsを使ってネットワークを学ぼう! CMLとは何か、ユースケースや基本機能、ラボ構築など、デモを交えながらご紹介します https://learningnetwork.cisco.com/s/article/jp-webinar-cml01 基礎編 (7/7 済) CMLの活用方法、資格での勉強方法などをデモを交えCCIEホルダーがご紹介します https://learningnetwork.cisco.com/s/article/jp-webinar-cml02 応用編 (7/14 済) CMLのAPI/プログラマビリティを用いたネットワーク自動化の観点でご紹介します https://learningnetwork.cisco.com/s/article/jp-webinar-cml03 DevNet編 終了したセミナーについては、順次、資料と動画を公開中
  • 3. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public アジェンダ 1 2 3 4 5 CML のおさらい DevNetについて CML 2.0 API DevNet における CML 活用例 まとめ
  • 4. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public • 丸山 隆太(まるやま りゅうた) • 人材育成の一環でインターンシップとして出向中 (2019/04〜) • 出向元:富士通ネットワークソリューションズ株式会社 • インターンシップで学んでいること • CiscoDNA 関連の製品知識 (Cisco DNA Center, ISE, etc.) • Python/API/ネットワークプログラマビリティ関連 • お気に入りのCisco製品/技術 • IOS XE 17.2, Catalyst 9000シリーズ 自己紹介
  • 5. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public アジェンダ 1 2 3 4 5 CML のおさらい DevNetについて CML 2.0 API DevNet における CML 活用例 まとめ
  • 6. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public Cisco Modeling Labs (CML) とは? Ciscoが提供する ネットワークシミュレーションプラットフォーム • CML1.x • VIRL (Virtual Internet Routing Labs) • CML-Enterprise 2.0 (企業向け) • CML-Personal 2.0 (個人向け) 待望のメジャーバージョンアップ ブランドはCMLに統一
  • 7. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public CML 標準付属 プラットフォーム IOS IOSv & IOSv L2 IOS XR XRv & XRv 9000 IOS XE CSR1000v NexusASA ASAv Other • TRex • WAN Emulator • Tiny Core Linux • Ubuntu 18.04 • CoreOS • Alpine Linux NX-OS 7000v & 9000v ※カスタムVMイメージ機能により新規イメージ、サードパーティ製イメージを追加可能 ※ディスクイメージバージョン: refplat-20200409-fcs.iso ※各イメージのバージョン等の情報 https://developer.cisco.com/docs/modeling-labs/#!reference-platforms-and-images
  • 8. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public CML 付属 仮想ノード ルーター, ファイアウォール スイッチ サーバー シミュレーター, その他
  • 9. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 新規仮想ノードの追加例 新規仮想ノードを追加する際、下記2つのコンポーネントが必要 YAML形式のノード構成ファイル • CPU,RAM,ネットワークアダプターなどの情報 • 参考:GitHub CML Community qcow2形式のディスクイメージ • OSのイメージ • 別途入手が必要(ベンダーサイトなど) 参考: https://github.com/CiscoDevNet/cml-community/tree/master/node-definitions 例) A10 vThunderを起動
  • 10. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public ラボマネージャー と ワークベンチ ラボ ワークベンチラボマネージャ ラボ • ラボマネージャー: CMLサーバのステータス、ラボを管理するCMLのトップ画面 • ワークベンチ:作成したラボの編集、ネットワークシミュレーションを行うためのメイン画面 • CMLでは1つのネットワークシミュレーションの単位をラボとよぶ
  • 11. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public ラボマネージャー システムステータス • CPU使用率 • メモリ使用率 • ディスク使用率 • 合計仮想ノード数 • 実行中仮想ノード数 など ラボリスト • ワークベンチへの移動 • ラボの実行 • ラボの停止 • ラボの初期化 • ラボの削除 など メニューバー • ラボの表示切替 • ラボ追加 • ラボのインポート • ツールへのアクセス など
  • 12. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public ワークベンチ 操作・情報表示パネル • ラボ・ノードの情報 • シミュレーション・ノードの開始 • コンソールアクセス • ラボのログ表示 など メニューバー • ラボのログ表示 • ラボマネージャへの移動 • ラボのエクスポート • ラボの強制初期化 など ノード一覧 トポロジ作成 フィールド
  • 13. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public CML-Enterprise, CML-Personal の比較 Cisco Modeling Labs–Enterprise Cisco Modeling Labs–Personal 対象ユーザ 企業・組織 個人 ユーザ数 マルチユーザ シングルユーザ ノード数(標準) 20ノード 20ノード ノード数(最大) 300ノード 20ノード サポート Cisco TAC Community Support Forum 購入方法 Cisco パートナー経由 Cisco Learning Network Store ライセンシング スマートライセンス スマートライセンス スマートアカウントの取得 必要 不要(Cisco.comアカウントがあればOK) インターネット接続性 必須ではない ※オフラインでの認証も可能 必要 ※1度認証すれば30日間はオフラインでも 使用可能 クラスタリング ロードマップに有り 無し ※現在のバージョンに基づきます。将来のバージョンでは変更される可能性があります。
  • 14. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public CML 仮想 ラボ コンソールサーバーとブレイクアウトツール • CML自体がコンソールサーバーとして機能 • CMLへSSH接続し、各仮想ノードへ接続 • クライアントPCに「ブレイクアウトツール」をインストール • クライアントPCがプロキシとして、CMLラボのノードに直 接コンソール接続 ブレイクアウトツールコンソールサーバー 自身の端末 CML (コンソールサーバ) SSH接続 CML 仮想 ラボ iTerm2 ブレイクアウト ツール Windows, Mac, Linux TLS通信 CML
  • 15. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 外部接続コネクター CML内の仮想ラボ物理ラボ External Connector • Cisco DNA Center • Zabbix • Ansible • Docker • …
  • 16. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public アジェンダ 1 2 3 4 5 CML のおさらい DevNetについて CML 2.0 API DevNet における CML 活用例 まとめ
  • 17. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public Cisco DevNet • アイデアソン&ハッカソン • DevNet Express • DevNet Create • DevNet イノベーションチャレンジ • DevNet Code Exchange • DevNet Automation Exchange • ビジネス、サービス事例 • DevNet Solution Exchange • 人材開発 • DevNet Learning Labs • DevNet Sandbox • DevNet 資格取得 学習、スキル 経験、体験 成果、コードビジネス価値
  • 18. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public Cisco DevNet コンテンツ/リソース ソリューションポータル: Ecosystem Exchange 開発者コミュニティ コードリポジトリ: Code Exchange 認定資格: DevNet Certifications イベント: • DevNet Express, DevNet Create • Cisco Live, Cisco Connect API ガイド リモートラボ環境: DevNet Sandbox 学習コンテンツ: Learning labs
  • 19. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public DevNet 認定資格 2020年2月24日開始 https://developer.cisco.com/certification/ インフラ ストラクチャ ソフトウェア アソシエイト スペシャリスト プロフェッショナル エキスパート
  • 20. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public CCNA Cisco Certified Network Associate DevNet Associate Cisco Certified DevNet Associate https://www.cisco.com/c/ja_jp/training-events/training-certifications/exams/current- list/ccna-200-301.html https://www.cisco.com/c/ja_jp/training-events/training- certifications/certifications/devnet/cisco-certified-devnet-associate.html CMLを活用!
  • 21. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public https://developer.cisco.com/modeling-labs/
  • 22. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public アジェンダ 1 2 3 4 5 CML のおさらい DevNetについて CML 2.0 API DevNet における CML 活用例 まとめ
  • 23. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public CML 2.0 API • APIドキュメントはCML組込 • CMLを操作する135種類のAPI • Swagger GUIからAPIアクセスの確認
  • 24. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public Swagger, Postman による認証 Token取得 参考 Postman Collection https://github.com/sttrayno/CML-Personal-Guide
  • 25. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public はじめての CML REST API コール import json import requests import urllib3 urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) url = "https://<cml_ipaddress>/api/v0/authenticate" headers = { 'Content-Type': 'application/json', 'accept': 'application/json' } payload = { "username": ”<username>", "password": ”<password>" } response = requests.request("POST", url, headers=headers, data=json.dumps(payload), verify=False).json() print(response) 認証Tokenの取得例 取得したTokenをヘッダに付けて各APIへアクセス Pythonライブラリのインポート HTTPヘッダやペイロードに格納する内容を作成 HTTP POSTメソッドで必要なヘッダ, ペイロードを送信 警告メッセージを表示しない 認証トークン取得APIの変数を作成 APIから返される認証トークンをプリント
  • 26. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 参考: CMLクライアントライブラリ - virl2-client 認証、リンクやノードの追加削除をシンプルに行う Python クライアントライブラリ https://developer.cisco.com/codeexchange/github/repo/CiscoDevNet/virl2-client
  • 27. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 参考: CMLクライアントライブラリ - virl2-client 参考: virl2-clientを試すJupyter notebook ファイル(DevNet/Github) https://github.com/CiscoDevNet/virl2-client/tree/master/examples
  • 28. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 1. シミュレーションラボ稼働情報の取得 2. YAMLファイルを使ったラボ構成のインポートと起動 3. シミュレーションラボの停止と消去 4. pyATS Testbedファイル(yaml)の出力 ユースケース 1. ラボ情報取得 2. ラボ構成のインポートと起動 test-topology.yaml 3. ラボの停止と消去 getlab.py importlab.py deletelab.py CML pyatsTb_f2d3c5.yaml 4. pyATS用のTestbedファイルを出力 ※本セッションでは, pyATSそのも のについての説明は行いません。
  • 29. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 1. シミュレーションラボ稼働情報の取得 import json import requests cml_url = "https://<cml_ip>/api" uname = ”<username>" passwd = ”<password>" labname = ”<labname>" def get_token(url, user, password): api_call = "/v0/authenticate" url += api_call headers = { 'Content-Type': 'application/json', 'accept': 'application/json' } payload = { "username": user, "password": password } response = requests.request("POST", url, headers=headers, data=json.dumps(payload), verify=False).json() return response def get_labs(token, url): api_call = "/v0/labs" url += api_call token = 'Bearer' + ' ' + token headers = { 'accept': 'application/json', 'Authorization': token } response = requests.get(url, headers=headers, verify=False).json() print("#" + " " + "CML 稼働ラボ数" + ": " + str(len(response)) + " at " + labname) return response def get_labsdetail(token, url, labids): token = 'Bearer' + ' ' + token headers = { 'accept': 'application/json', 'Authorization': token } for labid in labids: api_call = "/v0/labs/" + labid laburl = url + api_call guiurl = url.rstrip('api') guiurl = guiurl + "lab/" + labid response = requests.get(laburl, headers=headers, verify=False).json() print("{0:42}{1:22}{2:18}{3:18}". format(str(response['lab_title']), str(response['created']), str(response['state']), str(guiurl))) if __name__ == "__main__": auth_token = get_token(cml_url, uname, passwd) print("#"*113) labids = get_labs(auth_token, cml_url) print("#"*113) get_labsdetail(auth_token, cml_url, labids) print("#"*113) hellocml.py 認証Token取得 稼働ラボ情報取得
  • 30. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 1. シミュレーションラボ稼働情報の取得 cont. ~ $python hellocml.py ################################################################################################################# # CML 稼働ラボ数: 19 at Cisco SE ラボ ################################################################################################################# Test by tatsaito 2020-06-11 13:33:46 STOPPED https://10.71.154.73/lab/866cb6 test by rmaruyam 2020-06-11 09:17:08 DEFINED_ON_CORE https://10.71.154.73/lab/b3a6eb To DNAC96 2020-06-17 05:01:40 STARTED https://10.71.154.73/lab/2ba4d1 test by asai 2020-06-17 07:21:17 STOPPED https://10.71.154.73/lab/eeca34 CML-DevNet-Lab 2020-06-22 11:16:04 STARTED https://10.71.154.73/lab/48cadf TEST Lab asai 2020-06-23 17:42:14 STOPPED https://10.71.154.73/lab/72cbd5 Lab asai 2020-06-24 11:00:16 STOPPED https://10.71.154.73/lab/0fbd5d TEST Lab asai 2020-06-24 13:17:08 STOPPED https://10.71.154.73/lab/f2d3c5 asai 2020-06-25 13:36:02 STOPPED https://10.71.154.73/lab/0574e5 CML Basic Lab 2020-06-26 13:37:36 STOPPED https://10.71.154.73/lab/deaf38 manual_config_live_vis_configured.virl 2020-06-29 04:11:33 STOPPED https://10.71.154.73/lab/80bbfd Nov_webinar_demo_topology.virl 2020-06-29 06:25:31 DEFINED_ON_CORE https://10.71.154.73/lab/65ccf2 July_webinar_ospf_eigrp.virl 2020-06-29 06:37:50 DEFINED_ON_CORE https://10.71.154.73/lab/609fbc Mar15_webinar_l2_unmanaged.virl 2020-06-29 06:38:18 DEFINED_ON_CORE https://10.71.154.73/lab/bae85c Basic Lab 2 2020-07-08 11:17:55 STOPPED https://10.71.154.73/lab/f72c4b maruyama-API-Lab 2020-07-19 09:07:25 STOPPED https://10.71.154.73/lab/ebbddc test-topology-kikuta 2020-07-20 13:23:37 DEFINED_ON_CORE https://10.71.154.73/lab/94d9b1 testtesttest-by-kikuta 2020-07-20 13:27:07 DEFINED_ON_CORE https://10.71.154.73/lab/bf2acf test-topology.yaml 2020-07-20 15:07:35 STARTED https://10.71.154.73/lab/6b20de #################################################################################################################
  • 31. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 2. YAMLファイルを使ったラボ構成のインポートと起動 ~ $python import.py test-topology.yaml Please input an lab title [type q to quit]: test-by-kikuta test-topology.yaml <Response [200]> CMLラボ構成ファイル(YAML or JSON) インポート/起動するCMLラボの名称 • コンフィグレーションを含めたラボテスト構成を YAMLで管理し、チームやコミュニティで共有 • CI/CDツールと組み合わせたNetDevOps
  • 32. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 2. YAMLファイルを使ったラボ構成のインポートと起動 cont. import.py def import_lab(token, url): labtitle = input("Please input an lab title [type q to quit]: ") api_call = "/v0/import" url += api_call + "?title=" + labtitle token = 'Bearer' + ' ' + token headers = { 'Content-Type': 'application/json', 'accept': 'application/json', 'Authorization': token } args = sys.argv f = open(args[1]) data = f.read() response = requests.request("POST", url, headers=headers, data=data, verify=False) print(response) 作成するラボ名称を含めてPOST ラボ構成YAMLファイルの読み込み
  • 33. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public lab: description: '' notes: '' timestamp: 1589315403.782141 title: Lab at Tue 20:30 PM version: 0.0.3 nodes: - id: n0 label: csr1000v-0 node_definition: csr1000v x: -600 y: -50 configuration: hostname inserthostname_here image_definition: csr1000v-161101b tags: [] interfaces: - id: i0 label: Loopback0 type: loopback - id: i1 slot: 0 label: GigabitEthernet1 type: physical - id: i2 slot: 1 label: GigabitEthernet2 type: physical - id: i3 slot: 2 label: GigabitEthernet3 type: physical - id: i4 slot: 3 label: GigabitEthernet4 type: physical - id: n1 label: csr1000v-1 node_definition: csr1000v x: 0 y: -50 configuration: hostname inserthostname_here image_definition: csr1000v-161101b tags: [] interfaces: - id: i0 label: Loopback0 type: loopback - id: i1 slot: 0 label: GigabitEthernet1 type: physical - id: i2 slot: 1 label: GigabitEthernet2 type: physical - id: i3 slot: 2 label: GigabitEthernet3 type: physical - id: i4 slot: 3 label: GigabitEthernet4 type: physical - id: n2 label: wan-em-0 node_definition: wan_emulator x: -300 y: -100 configuration: |- LATENCY="500" JITTER="5" LOSS="30.0" BANDWIDTH="512" image_definition: alpine-3-10-wanem tags: [] interfaces: - id: i0 slot: 0 label: eth0 type: physical - id: i1 slot: 1 label: eth1 type: physical links: - id: l0 i1: i1 n1: n0 i2: i0 n2: n2 - id: l1 i1: i1 n1: n2 i2: i1 test-topology.yaml
  • 34. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 参考: CMLラボ構成のエクスポート エクスポートされたCMLラボ構成のYAMLファイル
  • 35. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 3. シミュレーションラボの停止と消去 def delete_lab(token, url): token = 'Bearer' + ' ' + token headers = { 'accept': 'application/json', 'Authorization': token } deletelabid = input("Please input lab ID to be deleted? [type q to quit]: ") api_call = "/v0/labs/" + deletelabid url = url + api_call response = requests.delete(url, headers=headers, verify=False) print(response) 消去したいラボIDをDeleteメソッドで送信
  • 36. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 4. pyATS Testbedファイル(yaml)の出力 def get_pyats_testbed(token, url, hostname): pyatslabid = input("Please input lab ID to be deleted? [type q to quit]: ") token = 'Bearer' + ' ' + token headers = { 'accept': 'application/json', 'Authorization': token } api_call = "/v0/labs/" + pyatslabid + "/pyats_testbed?hostname=" + hostname url = url + api_call response = requests.get(url, headers=headers, verify=False) print(response.text) with open('testbed.yaml', 'w') as f: f.write(response.text) pyATS用のTestbed YAMLファイルをリクエストするAPI ※本セッションでは, pyATSそのも のについての説明は行いません。
  • 37. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public ~ $ python pyats_testbed.py Please input lab ID to be deleted? [type q to quit]: deaf38 testbed: name: CML Basic Lab tacacs: login_prompt: 'login:' password_prompt: 'Password:' username: '%ENV{PYATS_USERNAME}' passwords: tacacs: '%ENV{PYATS_PASSWORD}' enable: '%ENV{PYATS_AUTH_PASS}' line: '%ENV{PYATS_PASSWORD}' devices: terminal_server: os: linux type: linux connections: cli: protocol: ssh ip: 10.71.154.73 username: change_me password: change_me iosv-0: os: ios type: router series: iosv tacacs: username: cisco passwords: tacacs: cisco connections: defaults: class: unicon.Unicon a: protocol: telnet proxy: terminal_server command: open /deaf38/n7/0 iosv-1: os: ios type: router series: iosv tacacs: username: cisco passwords: tacacs: cisco connections: defaults: class: unicon.Unicon a: protocol: telnet proxy: terminal_server command: open /deaf38/n10/0 iosv-2: os: ios type: router series: iosv tacacs: username: cisco passwords: tacacs: cisco connections: defaults: class: unicon.Unicon a: protocol: telnet proxy: terminal_server command: open /deaf38/n11/0 iosv-3: os: ios <省略> ~ $ ls | grep deaf38 pyatsTb_deaf38.yaml pyATS用のTestbed YAMLファイルを出力
  • 38. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public スキル人材育成のサイクル短縮を目指し、プログラマビリティをフル活用した 新たな研修プラットフォーム「バーチャルリモートラボ(VRL)」を構築 NTT 西日本のグループ企業として西日本に約 200 の拠点で通信ネットワーク環境の構築から開通・運用サポート・修理まで、暮らしの 快適・安心を地域密着で支えている NTT フィールドテクノ。通信設備の維持管理業務からより付加価値の高い設備系 BPO 事業への シフトチェンジを推進する上で高品質なスキル人材育成のスピードアップが求められた同社は、プログラマビリティを最大限活用した新 たな研修プラットフォーム「バーチャルリモートラボ(VRL)」を構築。CML (Cisco Modeling Lab) API による仮想での NW 構築研修も実 施し、Off-JT(学び)とOJT(実践)のサイクル短縮化を実現しました。* DevNet 活用事例:株式会社NTTフィールドテクノ ・豊富な実践的ドキュメントと充実したコミュニティ ・DevNet Expressでシスコ SEから実践的な API / プログラマビリティが学べる 事業内容 課題 ソリューション 結果〜今後 設立 シスコ との関係 1999年4月1日 エンドユーザー Why DevNet? コールセンター業務/宅内設備の保守業務/ 光開通関連オペレーション業務/交換・伝送路 設備のオンサイト保守業務/設備業務に関す る技術者育成の業務 など • CML(Cisco Modeling Labs) • Cisco DNA Center • Cisco ISE • Cisco TrustSec • Cisco Stealthwatch シスコ関連製品・サービス DevNetユースケース 人材育成/高付加価値化  通信設備の維持管理業務から、より付加 価値の高い設備系BPO*事業へのシフト チェンジを推進する上で、高品質なスキル 人材育成のスピードアップが求められる *BPO .. Business Process Outsourcing  従来型の集合研修は開催時期が限られ、 事前や事後学習もままならない  専用ハードウェア購入費用や設置スペー スを抑えたい  突発的な業務繁忙や災害発生などで学習 機会が失われることも多かった デジタル技術活用により、いつでもどこ でも研修を受講できる環境「バーチャル リモートラボ(VRL)」を構築  CML (Cisco Modeling Lab) API :NW 設計、構築、視覚化、シミュレー ションを仮想環境で実現(CMLをバック エンドで活用した研修プラットフォーム)  Cisco ISE REST API 、pxGrid  Cisco TrustSec  Cisco DNA Center  Cisco Stealthwatch :受講者のセキュアなアクセスを可能に する認証システムを構築  新研修プラットフォーム「VRL」により、オンデ マンド型でいつでもどこでも学べる研修環境 を実現  CML により ネットワーク 機器購入コストを 大幅に抑え、受講者は自由な NW 設計、構 築、シミュレーション環境がいつでも活用で きる  VRL での研修分野を広げフィードバック、集 合研修とのブレンディッドラーニングで育成 効果を向上。今後はグループ企業への提供 拡大も計画 *本取り組みは日本最大級の人事ポータル HR プロの「第 9 回日本 HR チャレンジ大賞」を受賞しました。 https://www.hrpro.co.jp/challenge.php 参考事例
  • 39. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public アジェンダ 1 2 3 4 5 CML のおさらい DevNetについて CML 2.0 API DevNet における CML 活用例 まとめ
  • 40. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public DevNet における CML 活用例 デモ1)NETCONF/RESTCONFネットワークOSでのAPI デモ2)IOS XE on-box pythonネットワーク装置でのプログラマビリティ デモ3)Cisco DNA CenterSDNコントローラー API デモ4)AnsibleIaC/構成管理ツール DevNet/プログラマビリティの要素 CML活用例
  • 41. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public ネットワークOSでのAPI ネットワーク装置でのプログラマビリティ SDNコントローラー API IaC/構成管理ツール
  • 42. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public ネットワークOSでのAPI ネットワーク装置でのプログラマビリティ SDNコントローラー API IaC/構成管理ツール
  • 43. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public ネットワークOSでのAPI ネットワーク装置でのプログラマビリティ SDNコントローラー API IaC/構成管理ツール 複数の装置(OS)での Netconf/Restconfのテスト CML上でのLinux活用 複数の装置(OS)での On-boxプログラミング機能 外部接続を使った コントローラー接続 外部接続を使った IaCツール試験 CML上でのIaCツール構築
  • 44. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public デモ1 NETCONF/RESTCONF ネットワーク機器の情報取得, 設定変更 CML CML 実機 CSR1000V Postman Ubuntu デモ1.1 NETCONF/YANG (RFC6241) デモ1.2 RESTCONF/YANG (RFC8040)
  • 45. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public デモ2 IOS XE on-box Python 設定変更後に疎通確認&結果報告 event manager applet TestAfterConfig event syslog pattern "SYS-5-CONFIG_I" action 100 cli command "enable" action 110 syslog msg "## Testing after Configuration Change ...... ##" action 200 cli command "guestshell run python /home/guestshell/pingreport.py" IOS XE, NXOS, IOS XR.. CML on-box Python: pingreport.py IOS XE: EEM* *EEM … Embedded Event Manager 例)コンフィグ変更のsyslogを検知し、 On-box Pythonを実行 例)ルーター上のpythonスクリプトでは、 事前に指定されたIPアドレスに対してping を実行し、その結果をExcelファイルにまと め、Webex Teamsへ送信
  • 46. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public デモ3 SDNコントローラー API CML ネットワーク 実機 Cisco DNA CenterPC Cisco DNA CenterのAPIで機器情報取得 Cisco DNA Center API ドキュメント 例) • PC上で, DNAC Command Runner APIへアクセスする Pythonスクリプトを実行 • DNA Center経由で装置のCLIへアクセス
  • 47. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public デモ4 IaC/構成管理ツール Ansibleで複数機種に一括設定変更 例) • CML上で動作するUbuntu仮想マシンから、 Ansibleを実行 • IOSv, IOSv-L2, IOS XE, Nexus9000vといった 様々なモデルにVRFを設定するPlaybookを実行 VRF設定Playbook: vrf-test.yaml
  • 48. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public アジェンダ 1 2 3 4 5 CML のおさらい DevNetについて CML 2.0 API DevNet における CML 活用例 まとめ
  • 49. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public • CML環境を使ったネットワークのコンフィグや学習に加え、CML環境をAPIから操作すること で、環境の自動生成や共有が容易  ネットワークインフラのCI/CD, NetDevOps  カスタマイズされた学習システム – NTTフィールドテクノ様事例 • CML環境を使ったネットワークのコンフィグや学習に加え、仮想ノードのAPIやプログラミング 機能の学習に活用  装置のモデルドリブンインターフェース - Netconf, Restconf  On-box プログラマビリティ  SDN コントローラー API  構成管理/IaCツール • DevNet資格取得への近道 まとめ CML API 確認 インポート,起動 消去
  • 50. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public ・ CML 紹介ページ https://developer.cisco.com/modeling-labs/ • CMLのドキュメント一覧ページ https://developer.cisco.com/docs/modeling-labs/ • CML-Pのコミュニティサイト https://learningnetwork.cisco.com/s/topic/0TO3i00000094ZjGAI/cisco-modeling-labs-personal-community • DevNet ポータルサイト https://developer.cisco.com/ • DevNet コードリポジトリ検索ページ https://developer.cisco.com/codeexchange/ • CML – Personal(日本語) https://learningnetwork.cisco.com/s/article/jp-cisco-cml-personal • CML – Enterprise(日本語) https://learningnetwork.cisco.com/s/jp-modeling-labs 参考リンク
  • 51.
  • 52. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public • 102のラーニングモジュール(7/27現在) • テクノロジーごとにトラックとして分類された学習コース (DevNet Express) • PC環境セットアップ, プログラミング基礎, REST-API 基礎, AnsibleやPowerShellなどのシスコ以外の内 容もカバー • 概念/考え方, 必要性, プログラミング初歩, 実用コー ドまでステップ • サンドボックスのラボに対応 • 学習コードはすべてGitHubで公開 • DevNet 資格の勉強にも有用! DevNet Express Tracks https://developer.cisco.com/learning/devnet-express https://github.com/CiscoDevNet https://developer.cisco.com/site/sandbox/
  • 53. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public NETCONF/RESTCONF https://developer.cisco.com/learning/devnet-express/dnav3-track-jp 1. 複数の装置(OS)でのNetconf/Restconfのテスト 2. CML上でのLinux活用 CML CML 実機
  • 54. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public IOS XE on-box python https://developer.cisco.com/learning/devnet-express/dnav3-track-jp IOS XE, NXOS, IOS XR.. 複数の装置(OS)でのOn-boxプログラミング機能 CML
  • 55. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public SDNコントローラー API https://developer.cisco.com/learning/devnet-express/dnav4-track CML ネットワーク 実機 外部接続を使ったコントローラー接続 Cisco DNA CenterPC
  • 56. © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public IaC/構成管理ツール https://developer.cisco.com/learning/devnet-express/dnav4-track ネットワーク Ansible 1. 外部接続を使ったIaCツール試験 2. CML上でのIaCツール構築 CML CML 実機 各種ネットワークOS, 構成各種Ansibleモジュール

Notas do Editor

  1. CML環境を使ったネットワークのコンフィグや学習に加え、CML環境をAPIから操作することで、環境の自動生成や共有が容易 ネットワークインフラのCI/CD, NetDevOps カスタマイズされた学習システム – NTTフィールドテクノ様事例 CML環境を使ったネットワークのコンフィグや学習に加え、仮想ノードのAPIやプログラミング機能の学習に活用 仮想ノードのプログラマビリティ機能 CML環境内でのLinuxノード活用 CML外部接続環境のテスト対象としてのCML仮想ノード DevNet資格取得への近道