Cisco Japan Blog

onePK を使ってアプリケーションを作る – All-in-one VMのご紹介

1 min read



今回は、All-in-one VM をご紹介します。もし onePK に少し興味があって、個人的に試してみたいけど、onePK に対応したシスコ機器を持っていない、あるいは持っていても自由に使える機器はない、または開発環境を準備するには手間がかかる、という場合には、All-in-one VM がお勧めです。

All-in-one VM のダウンロード

All-in-one VM は、Cisco.com ID をお持ちであればどなたでも以下のサイトからダウンロード可能です。

https://developer.cisco.com/site/onepk/downloads/all-in-one-vm/

All-in-one VM の使い方のドキュメント(英語)もあります。

https://developer.cisco.com/media/onepk_getting_started_guide/c_Using_the_All-in-One_Virtual_Machine.html

さて、「All-in-one VM とはなんぞや?」ですが、一言でいうと onePK アプリケーションを開発するためのお手軽仮想環境です。ダウンロードするOVF(Open Virtualization Format)のファイルサイズは少し大きいですが、上記のサイトからダウンロードしたファイルを仮想環境に VM 展開すると、Ubuntu 上に onePK の C 言語、Java、Python の SDK と仮想 IOS ルータを含む環境がすぐに利用できます。なお、サポートしている仮想環境は次のとおりです。

  • VMWare ESXi 5 or later
  • VMWare Workstation 9 or later
  • VMWare Fusion 5 or later
  • Oracle VirtualBox 4.2 or later

初期設定

準備作業は非常に簡単です。

  1. OVF ファイルをダウンロードして、それをハイパーバイザーに VM として登録し、その VM を起動します。
  2. Ubuntu のログイン画面が表示されますので、ユーザ名「cisco」、パスワード「cisco123」でログインします。すると、パスワード変更の画面が出ますので、そこで適当なパスワードを入力してください。
  3. License Agreement(使用許諾契約)の画面が表示されますので、それを Accept(許諾)してください。
  4. この環境で利用できる仮想 IOS ルータ(IOSv)用のユーザ名とパスワードの入力を求められるので、適当に入力してください。

以上で初期設定作業は終わりです。

 developing-applications-with-onepk-all-in-one-vm-fig1

初期設定後の All-in-one VMの画面

初期設定が完了すると、デスクトップ上に「Start 3node」というアイコンが現れます。これをダブルクリックすると、仮想 IOS ルータが 3台起動され、コンソール用のウィンドウが 3つ開きます。これら 3台の仮想 IOS ルータは以下のようなトポロジーで接続された仮想ネットワーク環境になっています。

developing-applications-with-onepk-all-in-one-vm-fig2

3nodeで構成されるネットワーク構成

 

developing-applications-with-onepk-all-in-one-vm-fig3

「Start 3node」を実行し、起動された3つの仮想ルータのコンソール画面

この 3台の仮想 IOS ルータを利用して自身で開発したonePKアプリケーションの動作確認を、このVMの中で行なえるというわけです。

アプリケーション開発の第一歩

いきなり何もない状態から onePK のプログラミングを始めるのはハードルが高いでしょう。そこでまずは、Tutorial のサンプル プログラムを利用してみるのがいいと思います。IP 経路情報の取得や制御、ACL 制御、QoS 制御、インターフェイス情報取得、イベント取得など、様々なサンプル プログラムが用意されています。ほとんどのサンプル プログラムが、そのままコンパイルすれば、あるいは Eclipse で実行すれば動作しますので、プログラミングの第一歩として onePK の動作を確認できます。

参考までに最初によくはまる点(私が以前にはまった点)を紹介します。

  • C 言語の Tutorial プログラムを実行する場合には、展開するサーバが 32ビットか 64ビットかによってライブラリが異なります。多くの方は 64ビットのサーバを利用されていると思いますので、以下のファイルの LBITS を 64 に変更してから Make してください。これを忘れて Make するとエラーがいっぱい出ます。
/opt/cisco/onep/c64/sdk-c64-1.2.0.173/c/tutorials/Makefile.defs

# --------------------------------------
# Build 32 bit as a default
# To build 64 bit, update LBITS to 64
# for setting some FLAGS
# --------------------------------------
LBITS ?=64 ←ここ。最初は32になっています。

  • onePK のプログラムからルータにセッションを張る際には、セキュリティ上確保のために証明書が必要です。”Start 3node”で起動したルータには、あらかじめルータ側で必要な証明書はインポートされています。ですので、皆さんがTutorial プログラムを実行する時に -R オプションで/home/cisco/ca.pemのルート証明書を指定することで、ルータとの間でonePKのセッションが確立できると思います。

以上、ぜひ onePK 環境を All-in-one VM の中でも体験してみてください。

Tags:
コメントを書く


6 コメント

  1. ダウンロードができないようですが、また、変更になったのでしょうか?

    • 早川 浩平

      確認させていただきましたが、リンクは問題ないようです。CCOにログインしていない場合には、自動リダイレクトでCCOのログイン画面が表示されるはずです。お手数ですが、再度ご確認のほど、宜しくお願いいたします。

  2. 早川 浩平

    All-in-one VMのダウンロードURLが変更されておりますので、ブログ内容も更新しました。

  3. All-in-one VMを試してみたくてCisco.comに登録してみたのですが、提示されているURLは「We could not find the requested page on Cisco DevNet」となって見れませんでした。

    他になにか登録が必要でしょうか?

    • 早川 浩平

      シスコ早川です。
      ご指摘ありがとうございます。
      リンクが変更されておりましたので、ブログ内容を更新いたしました。
      よろしくお願いいたします。

      • ありがとうございます。無事ダウンロードできました。