Ubuntu Weekly Recipe

第483回 UbuntuとOpenNebulaでもういちどクラウド環境を構築してみよう

この記事を読むのに必要な時間:およそ 5.5 分

クラウド構築・管理ツールのOpenNebulaが,2017年7月20日にOpenNebula 5.4 'Medusa'をリリースしました※1)⁠バージョン5系列で3回目の安定版リリースとなります。Ubuntu Weekly Recipeでは第345回346回でOpenNebula バージョン4系列での環境構築方法を取り上げました。5系列では手順に一部変更がありますので,今回は改めてUbuntuでのOpenNebula 5.4の環境構築を紹介します※2)⁠

※1
OpenNebulaのリリース名は(たまに例外がありますが)伝統的に星雲の名称から採用されます。OpenNebula 5.4は双子座に位置するSh2-274メドゥーサ星雲から採られています。
※2
「OpenNebulaとはなんぞや」については第345回を参照してください。

OpenNebula 5.4のごく簡単な紹介

OpenNebula 5.4はVMware vSphere環境向けの機能強化の他,新機能がいくつか追加されています。主要なものを取り上げてみます。

VM Groups

「仮想マシンと仮想マシン」⁠仮想マシンとホスト」というグループ化と,affinity/anti-affinityのルール付けができるようになりました。特定の仮想マシングループを特定のホストで実行する,CPUバウンドな仮想マシン同士が同じホスト割り当てられないようにする,といったルールが定義できます。

既存の類似機能としてClusterがありますが,こちらはホストとネットワークやデータストアといった粒度の大きいリソースでグループ化するもので,細かな設定に難がありました。VM Groupsはホストと仮想マシン単位でのグループ化とルール付けが可能で,利用するシーンが多そうです。

図1 仮想マシンaoi,hinataをグループ化してhost001に,kokona,honokaをグループ化してhost002に割り当て

画像

High Availability

フロントエンドの冗長構成がOpenNebulaネイティブな機能として実装されました。過去のバージョンではCorosyncとPacemakerを利用して冗長構成が組めましたが,5.4ではこれらのサードパーティーコンポーネントは不要となっています。

複数のOpenNebulaフロントエンドをゾーンとして束ねるData Center Federation機能も,バックエンドデータベースのMySQL/MariaDBによるレプリケーションが不要となっています。いずれの機能も過去のバージョンに比べて構築しやすいものとなっているようです。

OpenNebula 5.4のサポートする環境

Release Notes 5.4Platform NotesにOpenNebulaがサポートする環境の一覧がまとまっています。UbuntuについてはUbuntu Server 14.04 LTS,16.04 LTS,17.04がサポートされています※3)⁠また,Debianは8,9が,Red Hat Enterprise LinuxとCentOSは7系列がサポートされています。

※3
14.04では,Ruby gemのruby-oxがCLIと非互換のバージョンであるためインストールすべきでない,という注意点があります。

OpenNebula 5.4でクラウド環境を構築してみよう

今回は以下の構成で環境を構築します。

  • OpenNebulaデーモンの稼働する「フロントエンド」⁠仮想マシンの稼働する「ホスト」の合計2台のマシンからなるインフラ構成とします。
  • フロントエンド,ホストともにUbuntu Server 16.04.2 LTSを使用します。
  • OpenNebula公式リポジトリの5.4パッケージを使用します。Ubuntu 16.04 LTSのリポジトリにはOpenNebula 4.12パッケージがありますが,こちらは使用しません。
  • データベースはデフォルトのSQLiteを使用します。
  • データストアの転送ドライバはsshを使用します。

OpenNebulaリポジトリ追加

フロントエンドとホストの両方にOpenNebulaの公式リポジトリを追加します。まずは鍵を登録します。

$ wget -q -O- https://downloads.opennebula.org/repo/repo.key | sudo apt-key add -

$ apt-key list
(略)
pub   2048R/85E16EBF 2013-06-13
uid                  OpenNebula Repository <contact@opennebula.org>
sub   2048R/01BC0188 2013-06-13

続いてUbuntu Server 16.04用のOpenNebula 5.4リポジトリを追加します。

$ sudo bash -c 'echo "deb https://downloads.opennebula.org/repo/5.4/Ubuntu/16.04 stable opennebula" > /etc/apt/sources.list.d/opennebula.list'

$ cat /etc/apt/sources.list.d/opennebula.list
deb https://downloads.opennebula.org/repo/5.4/Ubuntu/16.04 stable opennebula

apt updateした後,apt policyでインストールされるOpenNebulaパッケージを確認します。

$ sudo apt update

$ apt policy opennebula
opennebula:
  Installed: (none)
  Candidate: 5.4.0-1
  Version table:
     5.4.0-1 500
        500 https://downloads.opennebula.org/repo/5.4/Ubuntu/16.04 stable/opennebula amd64 Packages
     4.12.3+dfsg-3build1 500
        500 http://ftp.jaist.ac.jp/pub/Linux/ubuntu xenial/universe amd64 Packages

Candidate: 5.4.0-1となっていますね。

著者プロフィール

大田晃彦(おおたあきひこ)

株式会社 創夢 所属。UbuntuとGentooでアニメを録画したりしながら暮らしています。全体的に浅いです。

コメント

コメントの記入