ParaScaleを試す(初期設定編)
さくらインターネット研究所の大井です。
前回のエントリ「ParaScaleを試す(インストール編)」より、引き続きParaScaleを試してみます。前回までの作業で、実験に使用する全てのノードへのParaScaleソフトウェアのインストールが完了しましたので、今回はWebインタフェースを使った初期設定を行っていきます。
今回の作業の概略は
- 全体の初期設定
- EULA同意
- ネットワーク設定
- メタデータ用デバイス選択
- システム内のストレージノード設定
- ストレージノードを使用可能な状態にする
- ストレージノードのデバイス設定
- ストレージノードの有効化
となります。
1. ネットワーク構成
今回準備した各サーバのネットワーク構成図を示します。

それぞれのサーバのホスト名とIPアドレスは以下のとおりとなります。
ホスト名 | 外部ネットワークIPアドレス | 内部ネットワークIPアドレス | ノードの種類 |
ps-nd01.test.sakura.ad.jp | 192.168.1.1 | 192.168.2.1 | コントロールノード |
ps-nd02.test.sakura.ad.jp | 192.168.1.2 | 192.168.2.2 | ストレージノード |
ps-nd03.test.sakura.ad.jp | 192.168.1.3 | 192.168.2.3 | ストレージノード |
ps-nd04.test.sakura.ad.jp | 192.168.1.4 | 192.168.2.4 | ストレージノード |
2. 初期設定
コントロールノード、ストレージノードのパッケージインストール後は全てWebの管理画面から設定を行います。コントロールノードps-nd01の8000番ポート(http://192.168.1.1:8000)にブラウザで接続し、「Initial Cloud Configuration」画面が表示されたら成功です。ここでは設定の簡単な手順が示されています。

次のEULA同意画面を経て、それぞれの画面で以下のように設定しました。
2-1. Select
新規に作成するので「Storage Cloud - create new cloud」のラジオボタンを選択します。
2-2. Cell
ここでは主にネットワーク関連の設定を行います。各項目の入力値は次の通りとしました。
Configure the Storage Cell
Storage Cell name
Storage Cell virtual IP address
Storage Cell netmask
Gateway
DNS server
Domain
Configure the Storage Cell’s network.
External IP address pool
Control Node maintenance IP address
Internal Class C network
Provide adminstrative information for the Storage Cell.
New password
Confirm password
Enable Proactive Support
Configure how the clocks will be synchronized within the Storage Cell.
NTP server
2-3. Interfaces
外部・内部それぞれのネットワークに接続するインタフェースを選択します。今回は外部ネットワークをeth0インタフェース、内部ネットワークをeth1インタフェースに接続したので、以下のように選択しました。
External interface | eth0 |
Internal interface | eth1 |
2-4. Metadata
コントロールノードではストレージのメタデータを保持する役割も持ちます。今回はps-nd01サーバが持つ「sda1」デバイスを選択しました。
2-5. SMTP Server
ParaScaleではシステムに問題が発生した場合のメール通知機能なども持っていますが、今回の検証では使用しないため、空欄のままとしました。
2-6. Summary
最後に、これまでの設定項目と設定値が一覧表示されます。問題がなければ「Finish」ボタンを押して、設定を完了します。ボタンを押すと最初の初期化作業が始まり、数分で使用可能になります。
3. 各ノードの設定
再度、ps-nd01(http://192.168.1.1:8000)に接続します。今度は設定画面ではなくログイン画面が出ますので、Usernameに「admin」、パスワードに設定画面で入力したパスワードを入力し、ログインします。
3-1. Summary画面の確認
正常にログインができると、最初にSummary画面が表示されます。

初期状態ではストレージが全く設定されておらず、全てのストレージ容量の値が0.00GBと表示されています。
3-2. ストレージノードを使用可能な状態にする
ストレージノードとして構築したサーバを、今操作しているコントロールノードの配下に置き、使用可能な状態にしてみます。画面上部の「Storage Nodes」のリンクを見ると、次のような画面が表示されます。

内部ネットワーク(192.168.2.0/24)を通し、ストレージノードとしてパッケージをインストールしたps-nd02、ps-nd03、ps-nd04が自動的に認識され、「Unprovisioned Storage Nodes」リストに表示されています。これが、どのコントロールノードにも属していないストレージノードです。各ノード行の右側チェックボックスをチェックし、「Actions」ポップアップメニューから「Provision」を選択し、Runボタンを押します。

数分後、再度「Storage Nodes」画面を読み込むと、次のようになりました。

このように、「Unprovisioned Storage Nodes」のリストにあった3つのノードが「Provisioned Storage Nodes」のリストに表示されます。これで、このコントロールノードから制御可能なノードとなりました。
3-3. ストレージノードのボリュームを使用可能な状態にする
次は、各ストレージノードに搭載されているボリュームのうち、ParaScaleのストレージ用として使用するボリュームをデバイスごとに指定します。画面上部の「Disk Volumes」のリンクを開きます。
この画面では、ストレージ領域として使用可能な状態のボリューム、まだ使用可能な状態になっていないボリューム、そしてOSのブートに使用されているなどの理由で使用ができないボリュームのリストが、各ノードのデバイスごとに表示されます。
今回のテスト環境では、各ノードのボリュームのうちParaScaleが使用できるのはひとつだけ(/dev/sda1)なので、「Unprovisioned Disk Volumes」のリストに表示されているそれぞれのノードのsda1を使用可能な状態にします。
全てのノードのsda1のチェックボックスをチェックし、ポップアップメニューで「Provision」を選択し、Runボタンを押します。

しばらくすると、このように「Provisioned Disk Volumes」のリストに各ノードのsda1が加わります。

3-4. ストレージノードを有効化する
次に、これらのストレージノードを実際にノードとして使用するように設定します。「Provisioned Storage Nodes」のActionsポップアップメニューにある「Enable」を選択し、Runボタンを押します。

External IP address poolで指定した仮想IPアドレスが各ストレージノードに付与され、これでようやくストレージが使用可能となります。

Summaryの画面も、このようにストレージノードの個数やストレージ容量が反映されています。

4. 最後に
このように、他のオープンな実装では考えられないほどの簡単な手順でセットアップが完了しました。これも商用ソフトウェアの強みのひとつだと思いました。
次回は、実際に外部からアクセスしてみたり、ノードを追加したり削除したり、突然の障害を想定したテストを行っていきたいと思います。