Wakame-VDC/OpenVnet AdventCalender 2014の記事を書くにあたり、とりあえずOpenVNetをインストール。
その際、せっかくなのでchefで構築することにした。
OpenVNetは簡単にインストールできることもあってか、あるいは探し方が悪かったのか、cookbookが見当たらなかったので、作成してみた。
概要
- これは、Wakame-VDC / OpenVNet AdventCalendar 2014 12/12(金)の記事。
- chefでCentOS6.5 minimalにOpenVNetをインストールしてみる。
そもそもOpenVNetとは
OpenVNetは、オープンソースのエッジオーバーレイネットワーク仮想化プロダクトで、githubで公開されている。
同じような位置付けのプロダクトとしてはOpenDaylightのOpenDOVE、OpenContrail、MidoNetなどがある。
インストール
公式ではCentOS6.4とされているが、6.5、6.6でも動作する。
CentOS7で動作させた方もいる模様。
流れは以下のようになる。
- CentOS6.5 minimalをインストール
- chefdkをインストール
- chefでcookbookを実行
今回はchef-client --local-mode(chef-solo相当)でインストールする。
CentOS6.5 minimalのインストール
メディアからインストールする。
git、chefdkのインストール
yumでインストールできる。
$ yum -y install git https://opscode-omnibus-packages.s3.amazonaws.com/el/6/x86_64/chefdk-0.3.5-1.x86_64.rpm
chefでcookbookを実行
Berksfile等が入ったプロジェクトをダウンロードし、chef-clientを実行する。
デフォルトでは1boxのall-in-one構成(vnmgr、vna、webapi)でインストールされる。
$ git clone https://github.com/qb0C80aE/openvnet-chef_repo.git
$ cd openvnet-chef_repo
$ berks vendor ./cookbooks
$ chef-client --local-mode -c ./config/config.rb -j ./nodes/localhost.json
インストールのパターン
roleにはall_in_one、manager、agent、webapiの4つが存在する。
role | インストールされるもの |
---|---|
all_in_one | vnmgr, vna, webapi |
manager | vnmgr |
agent | vna |
webapi | webapi |
all_in_one以外でインストールしたい場合、roleを変更する。
vnaだけインストールしたい場合などは、run_listを修正する。
その他
- OpenVNetのインストールは元々が親切かつ簡単であり、少数のサーバに試験的に入れるだけであれば、手動インストールしても掛かる時間に大して差がない。
- しかしエッジオーバーレイという特性上、将来的には多くのノードに展開して運用するものであり、cookbookがあったほうが後々の為にはなる、かも、しれない。