インフラのーと

インフラエンジニアが気になったことを書いていきます。アウトプットのための技術ブログ。

CML 2.0 に起動したノードのコンソールにターミナルソフトからアクセスする

CML 2.0 に起動したノードのコンソールにターミナルソフトからアクセスするためには、Breout Tool を介して telnet 接続する必要があります。この Breakout Tool は CML 2.0 とは別に用意する必要があります。

Virl 1.x では Virl サーバーに直接 telnet することでノードのコンソールにアクセスすることが出来ました。しかし、CML 2.0 (Virl2.0) ではこの方法でのアクセスは出来なくなっています。CML 2.0 は Virl 1.x に比べるとかなり使いやすくなっていますが、デフォルトだとブラウザ経由でしかコンソールアクセスが出来ません。

Cisco Modeling Labs 2.0 Release Notes - Cisco Modeling Labs 2.0 [Cisco Modeling Labs] - Cisco

本記事ではローカルの Mac 上で Breakout Tool を起動し、CML 2.0 に起動したノードにターミナルソフトからコンソール接続する方法を紹介します。

CML 2.0 Lab

接続対象として、以下のような Lab を作成しておきます。

f:id:nozawana44:20200527155235p:plain:w300

Breakout Tool

Breakout Tool のダウンロード

CML のトップページから Tools -> Breakout を選択します。

f:id:nozawana44:20200527161225p:plain

ページの下部にダウンロードリンクがあります。

今回は Mac で Breakout Tool を動かすので breakout-macos-x86_amd64 をローカルマシンにダウンロードします。

f:id:nozawana44:20200527155455p:plain:w400

適当なディレクトリを作成し、ダウンロードしたbreakout-macos-x86_amd64を配置します。今回はホームディレクトリの直下にbreakout ディレクトリを作成しました。

nozawana44@MacBookPro ~% mkdir ~/breakout
nozawana44@MacBookPro ~% cp Downloads/breakout-macos-x86_amd64 ~/breakout

Breakout Tool の起動

ターミナルから実行権限を付与し、ui オプションを付けて起動します。

nozawana44@MacBookPro breakout % chmod +x breakout-macos-x86_amd64
nozawana44@MacBookPro breakout % ./breakout-macos-x86_amd64 ui
Starting up...
W0527 21:45:12.920949   71142 run.go:238] open labs.yaml: no such file or directory
Running... Serving UI/API on http://[::1]:8080, Ctrl-C to stop.

Breakout Tool に接続

http://localhost:8080 に接続して Configuration ページに移動します。

f:id:nozawana44:20200528211444p:plain

以下のように設定して Save します。

f:id:nozawana44:20200527160123p:plain

Labs タブで更新のボタンをクリックして CML 2.0 で作成した Lab が表示されれば、Breakout tools の設定は完了です。

f:id:nozawana44:20200527161401p:plain

ノードのコンソールに接続

接続したい Lab の Status を On にして、Lab 名をクリックします。

f:id:nozawana44:20200527161455p:plain

Links にかかれているアドレスに telnet することで CML 2.0 で起動したノードのコンソールにアクセスできます。

f:id:nozawana44:20200527160757p:plain

nozawana44@MacBookPro ~ % telnet localhost 9000
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

**************************************************************************
* IOSv is strictly limited to use for evaluation, demonstration and IOS  *
* education. IOSv is provided as-is and is not supported by Cisco's      *
* Technical Advisory Center. Any use or disclosure, in whole or in part, *
* of the IOSv Software or Documentation to any third party for any       *
* purposes is expressly prohibited except as otherwise authorized by     *
* Cisco in writing.                                                      *
**************************************************************************
inserthostname_here>
inserthostname_here>

Telnet URL スキームを iTerm2 で開くように設定しておけば、Breakout Tool のリンクをクリックするだけで Telnet することもできます。

f:id:nozawana44:20200527160818p:plain

私は以下のページを参考に設定しました。

macOS Catalinaでtelnet URLスキームを手軽に扱う | ネットワークとともに

まとめ

CML 2.0 に起動したノードのコンソールに Mac のターミナルソフトからアクセスする方法をまとめました。

CML 2.0 を利用してみた感想としては、かなり使いやすいので検証や学習におすすめです。年間 $199 のライセンス料はかかりますが払う価値はあると思います。