OpenNebulaのAdd-on
前ページまでで基本的な環境構築が終わりましたので,
OpenNebulaはハイパーバイザやストレージ形式などの差異をドライバスクリプトで吸収しています。ドライバスクリプトはAdd-onとして追加が可能で,
今回はLXD用Add-onのLXDoNeをOpenNebulaに追加して,
LXDoNe
LXDはコンテナ技術を利用したソフトウェアです。Ubuntu Weekly Recipeでは第459回,
LXDoNeはOpenNebulaでLXDコンテナを操作するための仮想マシンドライバスクリプトとインフォメーションドライバスクリプトをまとめたAdd-onです。ライセンスはApache License 2.
- ※2
- pylxdのバージョンに依存しており,
pylxd 2. 0.5以外のバージョンでは正常に動作しないようです。
特殊な点として,
今回インストールするLXDoNe 5.
フロントエンドにLXDoNe Add-onを追加する
まずはフロントエンド側の作業です。OpenNebulaフロントエンドの標準的なセッティングは終わっているものとします。
ドライバスクリプトのインストール
GitHubからリリース版のLXDoNeをフロントエンド上にダウンロードします。今回は執筆時の最新版のバージョン5.
$ wget https://github.com/OpenNebula/addon-lxdone/archive/v5.2-4.1.tar.gz
tar.
$ tar xvzpf v5.2-4.1.tar.gz
展開されたドライバスクリプトを/var/
$ cd addon-lxdone-5.2-4.1 $ sudo cp -rp src/remotes /var/lib/one $ sudo chown -R oneadmin:oneadmin /var/lib/one/remotes/ $ cd /var/lib/one/remotes/ $ sudo chmod 755 -R vmm/lxd im/lxd* $ sudo chmod 644 im/lxd.d/collectd-client.rb
ネットワークリソースで802.
$ sudo cp -p src/one_wait/nic.rb /var/lib/one/remotes/vnm/nic.rb $ chown oneadmin:oneadmin /var/lib/one/remotes/vnm/nic.rb $ chmod 755 /var/lib/one/remotes/vnm/nic.rb
Add-onの有効化
フロントエンドの/etc/
$ sudo vi /etc/one/oned.conf
Information Driver Configurationセクション内の適当な場所に以下の内容でインフォメーションドライバ設定を追記します。
#-------------------------------------------------------------------------------
# lxd Information Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of hosts monitored at the same time
#-------------------------------------------------------------------------------
IM_MAD = [ NAME = "lxd",
EXECUTABLE = "one_im_ssh",
ARGUMENTS = "-r 3 -t 15 lxd" ]
#-------------------------------------------------------------------------------
また,
#-------------------------------------------------------------------------------
# lxd Virtualization Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of actions performed at the same time
#-------------------------------------------------------------------------------
VM_MAD = [ NAME = "lxd",
EXECUTABLE = "one_vmm_exec",
ARGUMENTS = "-t 15 -r 0 lxd",
KEEP_SNAPSHOTS = "yes",
TYPE = "xml",
IMPORTED_VMS_ACTIONS = "migrate, live-migrate, terminate, terminate-hard,
undeploy, undeploy-hard, hold, release, stop, suspend, resume, delete,
delete-recreate, reboot, reboot-hard, resched, unresched, poweroff,
poweroff-hard, disk-attach, disk-detach, nic-attach, nic-detach,
snap-create, snap-delete"
]
#-------------------------------------------------------------------------------
OpenNebulaサービスを再起動します。
$ sudo systemctl restart opennebula.service