メモのページ - チラシの裏メモ 3枚目

通信技術や気になった事を黙々とメモし続ける

Cisco CSR1000V(3.11.03S)をVMware Playerで動かす

Cisco社製ソフトウェアルータであるCisco CSR1000vをVMware Playerに入れてみた時のメモ。

Cisco Cloud Services Router(CSR)シリーズルータとは、Cisco社が開発したソフトウェアベースのルータ。
クラウド環境への導入を想定した物であり、AWSにおいてはVPNルータやMPLSルータとして既に導入実績が有る。
自宅環境にて仮想化を考えており、今回は第1歩目としてCSR1000vをVMware Playerに入れてみた。


当方の環境
・DELL LATITUDE E6400
・Windows7 Home Edition (32bit版) / 4GB RAM / Intel Core2Duo P9700 2.8GHz
・VMware Player 6.0.7 (英語版)
・CSR1000v: csr1000v-universalk9.03.11.03.S.154-1.S3-std.iso
 
先日のNexus1000V同様、ESXiに乗せる事無くVMware Playerにそのまま突っ込むだけである為、コマンドの操作確認や物理的に他機器と接続し疎通確認は可能であるものの、残念ながらCisco CSR1000Vならではの機能を堪能するは出来ない。
60日の評価期間を超えると、もしくはライセンス切れになるとスループットは2.5Mbpsに抑えられる仕様だが、学習用途であれば充分だろう。


デプロイ手順
1. デプロイ前の状態
VMware Playerは既にインストール済みとする。
インストール済みではなくても、VMware社のサイトからダウンロードしインストーラを立ち上げるだけで簡単にインストール出来る為、インストールに関しては割愛。
 
2. isoファイルの準備
Cisco CSR1000Vのisoファイルは、Ciscoのサイトからisoファイルをダウンロード。
"Download Software"に入り、
"Products"、"Routers"、"Virtual Routers"、"Cloud Services Router 1000V Series"、"Cloud Services Router 1000V"の順に移り、IOS-XE Softwareをクリック。
自分は、動作が比較的軽いcsr1000v-universalk9.03.11.03.S.154-1.S3-std.isoを選択し、ダウンロードした。
 
3. VMware Player側の設定
"Create a New Virtual Machhine"をクリックし...
・"Install from:"にて"Installer disc image file (iso):"にチェックを入れ、上記にて準備したisoファイルを選択。Nextをクリックして次へ。
・"Guest operating system"は"Linux"にチェックを入れ、バージョンは"Other Linux 2.6.x kernel 64-bit"を選択。Nextをクリック。
・"Virtual machine name:"は任意で。仮想マシン名はCSR1000vに設定するホスト名で良い。入力後にNextをクリック。
・"Specify Disk Capacity"。自分の環境では、ディスク容量の指定およびファイルの格納方法はそのまま(ファイル分割の方)にした。Nextをクリック。
・"Ready to Create Virtual Machine"にてOKをクリックし起動させる前に、"Customize Hardware..."をクリック。
 
Memoryは2GBに変更。メモリは大きければ大きい程良いが、CSR1000vのバージョン3.11であれば2GBで充分。
Processorsのコア数は1のまま。
既存のNetwork Adapterの設定はWANインターフェースで使用する為、"NAT"のまま。
LANインターフェースが無い為に追加する必要がある。
"Add..."をクリックし"Network Adapter"を選択しNextをクリック。"Network connection"で"Host-only:"を選択し、"Connect at power on"にチェックが入っている事を確認しFinish。
"Printer"と"Sound Card"は不要である為削除してよい。
 
ついでに、CSR1000vにシリアルコンソール接続する為の設定を追加。
何らかの理由でCSR1000vのインターフェースがDownしSSHやTelnetでログイン出来なくなった際の、ログインの為の手段。
・"Serial Port"を選択し"Nextをクリック。
・ここでは一旦、"Output to named pipe"にチェックを入れNextをクリック。
・"Connect at power on"にチェックが入っている事を確認しFinishをクリック。
Serial Portの設定は完全ではないが、一旦ここで完了させる。
・"Ready to Create Virtual Machine"に戻る。OK(もしくはFinish)をクリック。
・VMware Playerの最初の画面に戻る。"Play virtual machine"をクリック。
 
4. Cisco CSR1000vの起動
GRUB Loading stage2の出力にてEnterキーを叩く。(Enterキーを叩かず10秒待つとGRUBの画面が表示される)
GRUBのBoot選択画面では"CSR1000v virtual console"を選択しEnterキーを叩く。
インストールが完了すると自動的に再起動が実行される。その際はGRUBにて"CSR1000v packages.conf"を選択しEnterキーを叩く。
 
5. IOS-XE起動途中にて
"The following software is available for download:"と記載されたVMwareのウインドウが表示される。
VMware Toolsをインストールしていない為に表示されたのだが、今のところ導入の予定は無い為"Remind Me Later"をクリック。
 
"The VMware Tools power-on script did not run successfully in this virtual machine.
If you have configured a custom power-on script in this virtual machine,
make sure that it contains no errors. You can also submit a support request to report this issue"
の記載があるウインドウが表示された場合、OKをクリックしてそのまま放置しても問題は無い。
 
6. CSR1000Vの起動完了
起動が完了すると Router>ののプロンプトが出力されるが、以下のログが出力されるまでもう少し待機。
以下のログの出力後は、CSR1000vの動作が軽くなる。

%CONFIG_CSRLXC-5-CONFIG_DONE: Configuration was applied and saved to NVRAM.
See bootflash:/csrlxc-cfg.log for more detail


7. 初期設定
インストール自体は成功。Nexus1000Vの時のような試行錯誤は無く意外と簡単に入った。
まずは、Tera TermからSSHログインが出来るよう最低限の設定を入れてみた。

Router(config)#
Router(config)#username cisco secret cisco
Router(config)#enable secret cisco
Router(config)#service password-encryption
Router(config)#
ip domain lookupコマンドをnoで打ち消しても、Domain Name設定は必要。
Router(config)#no ip domain lookup
Router(config)#ip domain name hoge.net
Router(config)#
Router(config)#aaa new-model
Router(config)#aaa authentication login default local
Router(config)#aaa session-id common
Router(config)#
Router(config)#ip ssh version 2
Router(config)#crypto ket generate rsa
キー長を求められる。自分の環境では1024である為に1024を入力。デフォルトでは512。
Router(config)#
Router(config)#interface GigabitEthernet0
Router(config-if)#ip address dhcp
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#
Router(config)#line vty 0
Router(config-line)#exec-timeout 5 0
Router(config-line)#transport input telnet ssh
Router(config-line)#transport output telnet ssh
Router(config-line)#exit
Router(config)#exit


コンソールログインが可能になる為には、以下のコマンドの投入が必要。

Router(config)#
Router(config)#platform console serial
Router(config)#


最後に、設定内容を保存し終了。

Router(config)#exit
Router#copy running-config startup-config

CSR1000vへのコンソールログインが可能になる為に、もう一仕事。
.vmxファイル内のserial0.で始まる、既に記載されている数行を、以下の5行に書き換える。
.vmxファイルは、Windowsの"マイ ドキュメント""Virtual Machines""仮想マシン名"の順にフォルダを進むと見つける事が出来る。
PuTTYやTera Term等コンソールツールにて127.0.0.0:9001にTelnetでログインする事としている。

serial0.present = "TRUE"
serial0.fileType = "network"
serial0.fileName = "telnet://127.0.0.1:9001"
serial0.startConnected = "TRUE"
serial0.yieldOnMsrRead = "TRUE


.vmxファイルの中でserial0の部分がserial1やserial2の場合は、serial1やserial2に書き換えて編集。

CSR1000Vの再起動
reloadコマンドを打ちCSR1000Vの再起動を実行。
起動途中でPuTTYやTera Termにてコンソールログイン(Telnet://127.0.0.1:9001を指定)しCSR1000Vに入る事が出来るか確認する。
 
 
参照サイト 
https://www.cisco.com/c/ja_jp/products/routers/cloud-services-router-1000v-series/index.html
https://software.cisco.com/download/home/284364978/type