最新バージョン(2015/12/27日現在)のインストール手順は下記になります。(本記事へのアクセスが多いため、追記しました。)
こんにちは。ccieojisan です。
先日購入した Cisco VIRL のインストール手順を書いてみます。
CCIE の勉強にも使えそうな VIRL なので、今後使う人が増えるのかなーと思ったのと、たぶん日本語で書いているページは今のところ見たことない(2015年3月29日現在)ので、書いてみました。
VMware Workstation を持っているのですが、たぶん VMware Player で使う人が多いかなと思ったので VMware Player 6.0.4 でのインストール方法です。
- VIRL Installation onto VMware Player
上記Ciscoのページを参考にして書いています。
注 : 私の PC が英語版のため、画面表示が全て英語表記になっています。予めご了承ください。スクリーンキャプチャなどから分かるかと思います。
ちなみに私がインストールする環境は下記です。
- Microsoft Surface Pro 3 (Core i5/MEM 8GB/SSD 256GB)
- Windows8.1
- VMware Player 6.0.4
目次
1. はじめに
VIRL は OVA フォーマットで提供されます。また、VMware Player は v5.02 以降であれば OK です。Oracle Virtual Box はサポートされておらず、インストールできませんのでご注意ください。
インストールするPCには下記の条件を満たす必要があります。
- Intel VT-x / EPT or AMD-V / RVI virtualization extensions が有効になっている必要があります。場合によっては BIOS での設定が必要。
- 最低 2 vCPU コア、4GB メモリが必要です。推奨は 4 vCPUs、8GB メモリ。
- 50GB の空きディスク容量が必要
- インターネットへ接続できる環境。また、TCPポート 4505 / 4506 が通ること。
環境によりけりですが、インストールには 30-60 分くらいかかります。ノートパソコンなどは電源を接続して休止などにならないようにしといてください。もしうまくいかなかった場合は VM を一旦削除して最初からインストールした方がいいです。
2. VIRL OVA のダウンロード
VIRL 購入後に、シスコから下記のタイトルのメールが届き、ダウンロード手順が書いているのでそれにしたがって OVA をダウンロードします。OVA は 4GB 程度あるので、ダウンロードには少し時間がかかります。
ダウンロードするファイルは2つです。購入する時期によってバージョンが異なる可能性があるので、ファイル名などは違う場合があります。
- virl.0.9.17.pc.ova
- virl.0.9.17.hashes.txt
ダウンロードした OVA ファイルを Microsoft File Checksum Integrity Verifier(FCIV) などで MD5 をチェックしておきましょう。イメージが壊れている場合などは正常にインストールができない結果になってしまいます。
C:\Users\xxxxx_000\Downloads>fciv.exe virl.0.9.17.pc.ova // // File Checksum Integrity Verifier version 2.05. // 7384b9b5c546f17884e93cab05eb6168 virl.0.9.17.pc.ova
上記 fciv.exe での結果と virl.0.9.17.hashes.txt の中に記載されている内容と一致することを確認してください。異なっている場合はOVAファイルがダウンロード中に問題があり、破損している可能性がある ので再度ダウンロードしてください。
3. VIRL OVA のインストール
1) VMWare Player を起動します。
2) “Open a Virtual Machine” を選択します。
3) OVA ファイルを開きます。
ダウンロードした OVA ファイルを選択します。
4) OVA ファイルのインポート
Virtual Machine 名と保存する場所を指定して Import をクリックするとインポートが始まります。インポート完了までには PC のスペックにもよりますが、数分~数十分かかります。
私の環境では約4分でインポート完了しました。そこまで時間かからないですね。
5) ネットワークアダプタの設定
“Edit virtual machine settings” をクリック。
下記画面になり、Network Adapter (数字無し=1) は変更しないので注意。
Network Adapter 2~5 を下記の通り custom network に対応させます。
- Network Adapter 2 : vmnet1
- Network Adapter 3 : vmnet2
- Network Adapter 4 : vmnet3
- Network Adapter 5 : vmnet4
Network Adapter 2 の場合の設定方法は下記になります。Network Adapter 3-5 は同様の手順で変更してください。
Network Adapter 2 を選択し、Network connection で Custom を選択、そして対応する VMnet1 を選択します。
Network Adapter を全て変更した後の画面を下記になります。
枠内の表示が同じ状態になっているのを確認してください。
6) CPU の設定
“Processors” をクリックして CPU 設定を行います。
私は推奨の 4 vCPU としました。Preferred mode はちょっと不明でしたが Automatic にしてます。”Virtualize Intel VT-x/EPT or AMD-V/RVI” にチェックが入っていることを確認してください。
7) メモリ設定
“Memory” をクリックして、メモリ容量を設定します。
メモリも推奨の 8GB としました。Surface Pro 3 には実メモリが 8GB しかないので不足することになりますが、スワップするのを期待し、また SSD なのでボトルネックにはならないだろうという期待を込めて。。
これで設定は完了なので OK を押します。
4. VIRL のアクティベーションの準備
VIRL をアクティベーションする準備を行います。
1) まずは VM を起動します。
“Play virtual machine” をクリックします。
下記のようなポップアップが出たら特に気にする必要ないので OK します。
2) ログイン
ユーザ名は “virl”、パスワードは “VIRL”(全て大文字) です。ユーザ名はデフォルトで選択されているはずなので、パスワードを入力して “Log In” をクリックしてください。
ログイン後の画面はこんな感じ。
3) xterm の起動
デスクトップ上にある xterm をダブルクリックしてターミナルを開きます。
4) KVM acceleration の確認
xterm 上で “sudo kvm-ok” と入力してください。
virl@virl:~$ sudo kvm-ok INFO: /dev/kvm exists KVM acceleration can be used
上記のように “KVM acceleration can be used” と表示されれば OK です。表示が異なる場合は、今までのステップで問題があった可能性や、要件を満たさない PC の場合(CPUがVirtualicationをサポートしていない等)があります。
5) インターネット接続の確認
xterm 上で “ping -c 4 www.cisco.com” を実行し、インターネットへ接続できることを確認します。
virl@virl:~$ ping -c 4 www.cisco.com PING e144.dscb.akamaiedge.net (184.29.112.170) 56(84) bytes of data. 64 bytes from a184-29-112-170.deploy.static.akamaitechnologies.com (184.29.112.170): icmp_seq=1 ttl=128 time=55.3 ms 64 bytes from a184-29-112-170.deploy.static.akamaitechnologies.com (184.29.112.170): icmp_seq=2 ttl=128 time=56.0 ms 64 bytes from a184-29-112-170.deploy.static.akamaitechnologies.com (184.29.112.170): icmp_seq=3 ttl=128 time=56.4 ms 64 bytes from a184-29-112-170.deploy.static.akamaitechnologies.com (184.29.112.170): icmp_seq=4 ttl=128 time=54.8 ms --- e144.dscb.akamaiedge.net ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3005ms rtt min/avg/max/mdev = 54.813/55.653/56.416/0.671 ms
上記のように最後から 二行目で 0% packet loss になっていれば問題ありません。会社などでインストールを試している場合などで Ping が通らない場合は Ping パケット(ICMP) がファイアウォールで止められていないかなどを知っておく必要があります。
6) NTP設定
VIRLはNTPで時刻同期をする必要があるため、NTPの設定を行います。たぶん正しくライセンス管理をするためなのかと思います。
nano で ntp.conf ファイルの編集をします。server pool.ntp.org iburst と表示されている行を削除し、ファイルの最後に下記4行を追加します。
server 0.ubuntu.pool.ntp.org
server 1.utuntu.pool.ntp.org
server 2.ubuntu.pool.ntp.org
server 3.ubuntu.pool.ntp.org
nano で上記を編集したら Control-X を押し、保存するか聞かれるので Y を入力、そしてファイル名の確認があるので、そのまま Return(Enter) キーを押してください。
最終的な ntp.conf の内容は下記になります。
virl@virl:~$ cat /etc/ntp.conf # /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help driftfile /var/lib/ntp/ntp.drift # Enable this if you want statistics to be logged. #statsdir /var/log/ntpstats/ statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable # Specify one or more NTP servers. # Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board # on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for # more information. # Use Ubuntu's ntp server as a fallback. # Access control configuration; see /usr/share/doc/ntp-doc/html/accopt.html for # details. The web page <http://support.ntp.org/bin/view/Support/AccessRestrictions> # might also be helpful. # # Note that "restrict" applies to both servers and clients, so a configuration # that might be intended to block requests from certain clients could also end # up blocking replies from your own upstream servers. # By default, exchange time with everybody, but don't allow configuration. restrict -4 default kod notrap nomodify nopeer noquery restrict -6 default kod notrap nomodify nopeer noquery # Local users may interrogate the ntp server more closely. restrict 127.0.0.1 restrict ::1 # Clients from this (example!) subnet have unlimited access, but only if # cryptographically authenticated. #restrict 192.168.123.0 mask 255.255.255.0 notrust # If you want to provide time to your local subnet, change the next line. # (Again, the address is an example only.) #broadcast 192.168.123.255 # If you want to listen to time broadcasts on your local subnet, de-comment the # next lines. Please do this only if you trust everybody on the network! #disable auth #broadcastclient server 0.ubuntu.pool.ntp.org server 1.utuntu.pool.ntp.org server 2.ubuntu.pool.ntp.org server 3.ubuntu.pool.ntp.org
NTP daemon を停止させます。
virl@virl:~$ sudo service ntp stop * Stopping NTP server ntpd [ OK ]
NTP Server を使って時刻を設定します。
virl@virl:~$ sudo ntpd -gq ntpd: time slew -0.019388s
NTP daemon を再度起動させます。
virl@virl:~$ sudo service ntp start * Starting NTP server ntpd [ OK ]
NTP daemonがセットアップされるまで、90秒程待ちます。
NTP Query Tool (sudo ntpq) を使って、NTPピアの状態を確認します。
virl@virl:~$ sudo ntpq ntpq> associations ind assid status conf reach auth condition last_event cnt =========================================================== 1 6310 963a yes yes none sys.peer sys_peer 3 2 6311 9424 yes yes none candidate reachable 2 3 6312 9424 yes yes none candidate reachable 2 ntpq> peers remote refid st t when poll reach delay offset jitter ============================================================================== *zero.gotroot.ca 30.114.5.31 2 u 13 64 377 95.885 -3.303 1.911 +174.137.63.116 206.108.0.131 2 u 13 64 377 47.540 -1.537 0.925 +ntp.jacobparry. 132.246.11.229 3 u 12 64 377 54.177 -1.141 3.510
sudo ntpq と入力した後、associations と入力し、一つのピアの condition が “sys.peer” になっているのを確認してください。また、peers と入力し、reach のところが全て 377 になっていれば NTP 同期は問題ないです。もし上記のような表示になっていない場合は NTP 同期には時間がかかるため、associations/peers を時間をあけて何回か入力して状況の変化を確認してください。それでもダメな場合は、再度前述の ntp.conf の編集からやり直してみてくだださい。
NTP同期に問題がないようであれば、ntpq を quit で終了し、exit で xterm をクローズしてください。
ntpq> quit virl@virl:~$ exit
5. アクティベーション
VIRL を使うためにはアクティベーションをする必要があります。
1) ライセンスの入手
VIRL 購入後に受信したメールの中に下記記載があるので、リンクをクリックしてライセンスを入手してください。
ライセンスのファイル名のフォーマットは key-id.domain.tld.pem となっており、例えば “AB34CD56.virl.info.pem” とかになっています。
2) IPアドレスの確認
VIRL VM のデスクトップにある “IP Address” というアイコンをダブルクリックします。
アイコンをダブルクリックすると、ウィンドウが開いて下記のような表示が出ます。
inet addr:192.168.163.131 Bcast:192.168.163.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe7f:1e9f/64 Scope:Link virl@virl:~$ exit
上記 “inet addr:” の部分が VIRL が使用している IPアドレス となるので、これをメモして exit コマンドでウィンドウを閉じてください。
3) ブラウザから VIRL へアクセス
先ほど調べた IPアドレスにブラウザからアクセスします。IE/Firefox/Chrome等のブラウザで URL に http://VIRLのアドレス を入力してアクセスすると下記のような画面が表示されます。
4) アクティベート
前述のウェブブラウザでアクセスした画面で、”User Workspace Management” をクリックします。
Username “uwmadmin” / Password “password” を入力して Login をクリック。
“Salt Status” をクリック。
※何か赤字でエラーみたいなのが表示されていますが、無視します。
“Rest Keys and ID” をクリック。
Reset salt settings のページで下記情報を入力します。
- Salt ID and domain : ライセンスファイル名を入力。拡張子.pemは入れない。AB34CD56.virl.info.pem の場合は “AB34CD56.virl.info” と入力
- Customer email Address : Eメールアドレスを入力。VIRLのオーダ完了メールを受信しているメールアドレス。
- List of Cisco salt masters : us-virl-salt.cisco.com (or eu-virl-salt.cisco.com)
- Minion private RSA key in PEM format : ライセンスファイル AB34CD56.virl.info.pem をテキストエディタで開き全内容をコピーアンドペースト。
※ Master sign public key は Cisco の手順書にも記載がなく不明なので eft.pub のままとします。
上記を入力し、Reset をクリック。
下記のようなエラーが画面に表示されますが、時間が経てば解消されるので無視します。
画面最上部の “User Workspace Management” をクリックします。
“Salt status” を再びクリックします。
“Check status now” をクリック。
“Last successful contact” に日付が入っていることを確認してください。
もしうまくいかない場合は、再度 “Reset keys and ID” から再び試してみてください。
問題ない場合はブラウザを閉じてください。
6. VIRL インストレーションの確認
VIRL が正常にインストールできたことを確認します。
デスクトップの xterm をクリックしてターミナルウィンドウを開きます。
“neutron agent-list” コマンドを入力して、OpenStack network agent status を確認します。下記のように最低でも4行表示されるので、どの行も alive ステータスが “:-)” になっていることを確認してください。場合により4行以上ある場合もあります。
virl@virl:~$ neutron agent-list +--------------------------------------+--------------------+------+-------+----------------+ | id | agent_type | host | alive | admin_state_up | +--------------------------------------+--------------------+------+-------+----------------+ | 3e58b349-b600-4419-8f65-92c3a10d3085 | Metadata agent | virl | :-) | True | | 75f1e57e-1023-4fc0-8b75-60e9263e71de | L3 agent | virl | :-) | True | | b6d7ad2b-18a9-4bc1-995e-fa15644f380a | DHCP agent | virl | :-) | True | | f1d4f8f8-57a8-48a6-82b1-eb58c4e67a0b | Linux bridge agent | virl | :-) | True | +--------------------------------------+--------------------+------+-------+----------------+
“sudo virl_health_status | grep listening” コマンドを入力し、STD Server 及び UWM Server が listening 状態であることを確認します。
virl@virl:~$ sudo virl_health_status | grep listening STD server on url http://localhost:19399 is listening, server version 0.10.13.11 UWM server on url http://localhost:19400 is listening, server version 0.10.13.11
“sudo virl_health_status | grep -A 4 -e hostid -e product” コマンドを入力し、hostid とライセンス情報を確認します。下記の項目をチェックしてください。
- product-capacity : このライセンスで起動できるノード数が表示されます。
- hostid : ライセンスファイル名(拡張子.pemを除く)
- product-expires : 7
virl@virl:~$ sudo virl_health_status | grep -A 4 -e hostid -e product "product-capacity": 15, "product-usage": 0, "uwm-url": "http://192.168.163.131:19400/admin/salt/", "hostid": "AB34CD56.virl.info", "product-license": [ "us-virl-salt.cisco.com" ], "features": [ "Cariden.MATE.import", -- "product-expires": 7 } STD server autonetkit status:
上記の内容が確認できれば、exit でターミナルウィンドウを閉じます。
7. VM Maestro のインストールと設定
VM Maestro とは VMware Player に作成した VIRL VM に Windows からアクセスするためのクライアントソフトウェアです。Windows だけでなく OS X や Linux でも使うことが可能です。
以前の手順でメモした VIRL VM で使用しているIPアドレスにウェブブラウザからアクセスし、”VM Maestro Clients” をクリックしてください。
下記の画面に移動するので、”VMMaestro-dev-1.2.1-128-setup_64.exe” をクリックしてダウンロードしてください。※ご使用の PC 環境によりダウンロードするファイルは変わります。
通常の Windows アプリケーションのインストールと同じようにダウンロードしたファイルをダブルクリックで実行してインストールをしてください。
インストールの画面は省略しますが、全てデフォルトで次へ進めてインストールすれば OK です。
インストール最後の画面で “Run VM Maestro” にチェックが入っているので、そのまま Finish をします。すると VM Maestro が起動します。
下記は VM Maestro 起動中に表示されます。
License Agreement 読んでを Agree してください。
“User Experience Improvement” が表示されるので OK する。
Welcome to VM Maestro と表示される画面で下記を入力します。
- Server : VIRL VM の IPアドレス (前述の手順でメモしたアドレス)
- Username : guest
- Password : guest
※ Username/Password はデフォルトで入力されているはずです。
上記を入力し、OK をクリックします。
Secure Storage というポップアップが表示されるので、OK します。
Password Recovery というポップアップが表示されるので、パスワードリカバリー用の質問と答えを設定します。Question1/Question2 の両方入力して OK します。
※画面例は空欄にしていますが、入力が必要です。
すると、VM Maestro の画面になります。右下の guest をクリックしてください。
全ての Web サービスが Compatible として緑色になっていることを確認してください。
問題なければ OK をクリックします。
以上で VIRL のインストールと設定は完了です。次は VIRL の使い方についても書いてみたいと思います。