スケールアウト型OSSクラウド基盤に最適なUbuntu Serverをひも解く 8

[実践編] MaaSとJujuによるOSS配備、Ubuntu Serverの運用・管理(後編)

前編では、スケールアウト基盤にOSを簡単にベアメタル配備するためのMaaSサーバーの構築手順を解説しました。後編ではOSSのオーケストレーションを実現するJujuを解説します。Jujuを使ったOSSオーケストレーションOSSクラウド基盤では、ユーザーの要求や自社の業務要件によって、ベアメタルでのO

古賀 政純

2014年3月26日 20:00

前編では、スケールアウト基盤にOSを簡単にベアメタル配備するためのMaaSサーバーの構築手順を解説しました。後編ではOSSのオーケストレーションを実現するJujuを解説します。

Jujuを使ったOSSオーケストレーション

OSSクラウド基盤では、ユーザーの要求や自社の業務要件によって、ベアメタルでのOS環境や仮想化環境にサービスを素早く配備する必要があります。個々のOSSを人間が手動で構築し、サービスを展開することも可能ですが、OSSスタックや連携が複雑になると、構築やメンテナンスの工数が増える傾向にあります。

特にOSSの場合、各種OSSのバージョンの組み合わせによって動作が不安定になる場合や、サービスが稼働できない場合もあるため、OSSの組み合わせの事前検証作業は重要です。また、利用するユーザーアカウントや設定ファイルの記述の整合性チェックにも手間がかかります。例えば、Webサーバー、アプリケーションサーバー、データベースサーバーからなる典型的な3層構成のプライベート・クラウド環境の構築を行う場合、データベースサーバーのアカウントの作成やアプリケーションサーバーとの紐付け、Webサーバーの業務用LANへの公開設定の有無等、OSSの連携の整合性を保ちながら設定する必要があります。

Canonical社が提供するJujuは、OSS環境をGUIによって簡単に紐付けて連携させることができます。一般的に、OSSに限らず、クラウド基盤において様々なコンポーネントを連携させて一つの目的を持ったサービスやシステムを自動的に構築・稼働させることを「オーケストレーション」といいます。ハードウェアベンダーは、クラウド・アプライアンスにおいて、様々なハードウェアコンポーネントとOSの配備、連携を自動化する「オーケストレーション」の仕組みを提供しており、Canonical社のJujuもこれと同様のコンセプトを持っています。

図1:クラウド基盤におけるIaaSやSaaSのオーケストレーションでは、セルフ・サービス・ポータルによる分かりやすいGUIが特徴的である(クリックで拡大)

Jujuは、物理環境だけでなく、パブリック・クラウド環境へのOSS配備にも対応します。さらに、手間のかかる「OSSのオーケストレーション」をマウス操作で簡単に行える点が革新的と言えます。Jujuの配備先としては、大きく分けて3種類あります。

  1. ベアメタル環境におけるUbuntu ServerとOSS配備(MaaSを利用)
  2. クラウドへのOSS配備(Amazon、OpenStack、HP Cloud、Windows Azure等を利用)
  3. ローカルマシンの仮想化環境へのOSS配備(Juju-localとLinuxコンテナーを利用)

1. は、近年の超省電力のカートリッジ型のスケールアウト・サーバーを利用し、仮想化を行わない物理サーバー環境でOSSのオーケストレーションを行う場合が当てはまります。Ubuntu Serverの配布は、MaaSで行い、物理サーバー上に配備されたUbuntu ServerにJujuを使ってOSSを配備します。

2. は、自社内の物理サーバーを使わずにクラウド環境へのOSS配備を行います。OSSの迅速な配備を物理サーバー資産無しに行いたい場合に有用な方法です。

3. は、単体のサーバー上にLinuxコンテナーによる仮想化基盤を有し、Linuxコンテナー上でOSSサービスを提供する形態です。1台の物理サーバー上にインストールされたUbuntu Server上でJujuを利用します。ローカルの物理マシン上のLinuxコンテナー環境を利用するため、1. と2. のJujuと区別し、「juju-local」と呼ばれます。Juju-localは、煩雑なLinuxコンテナーのコマンドラインによる操作を隠ぺいするため、OSSを使ったサービスの提供を目的としたLinuxコンテナーによる仮想化基盤導入のハードルを下げる役割も担っています。

今回は、1. のMaaSによるベアメタル配備とJujuを組み合わせたOSSのオーケストレーション手順を解説します。

Jujuを利用するためには、MaaSノードとは異なる別のサーバーに「Jujuブート・ストラップノード」を構築します。MaaSサーバー上にインストールしたjujuコマンドを使い、管理対象サーバーをPXEブートさせてOSとJujuを自動インストールし、Jujuブート・ストラップノードを構築します。JujuのWeb画面(Juju GUI)はJujuブート・ストラップノードで提供することが可能です。MaaSとJujuのシステム構成例を以下に示します。

図2:MaaSサーバーによりUbuntu Serverの配布を行う。Juju GUIによりOSSの配備やオーケストレーションを行う(クリックで拡大)
この記事のキーワード

この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る