ParaScaleを試す(初期設定編)

  • yuto
at
    Tags:
  • ParaScale

さくらインターネット研究所の大井です。

前回のエントリ「ParaScaleを試す(インストール編)」より、引き続きParaScaleを試してみます。前回までの作業で、実験に使用する全てのノードへのParaScaleソフトウェアのインストールが完了しましたので、今回はWebインタフェースを使った初期設定を行っていきます。

今回の作業の概略は

  1. 全体の初期設定
    1. EULA同意
    2. ネットワーク設定
    3. メタデータ用デバイス選択
  2. システム内のストレージノード設定
    1. ストレージノードを使用可能な状態にする
    2. ストレージノードのデバイス設定
    3. ストレージノードの有効化

となります。

1. ネットワーク構成

今回準備した各サーバのネットワーク構成図を示します。

Image
ネットワーク構成図

それぞれのサーバのホスト名と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」画面が表示されたら成功です。ここでは設定の簡単な手順が示されています。

Image
図2 ParaScaleの初期設定画面

次の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画面が表示されます。

Image
図3 コントロールパネルにログイン後の画面

初期状態ではストレージが全く設定されておらず、全てのストレージ容量の値が0.00GBと表示されています。

3-2. ストレージノードを使用可能な状態にする

ストレージノードとして構築したサーバを、今操作しているコントロールノードの配下に置き、使用可能な状態にしてみます。画面上部の「Storage Nodes」のリンクを見ると、次のような画面が表示されます。

Image
図4 「Storage Nodesを選択後の画面

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

Image
図5 Storage Nodes画面でProvisionを実行

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

Image
図6 ストレージノードのProvision後の画面

このように、「Unprovisioned Storage Nodes」のリストにあった3つのノードが「Provisioned Storage Nodes」のリストに表示されます。これで、このコントロールノードから制御可能なノードとなりました。

3-3. ストレージノードのボリュームを使用可能な状態にする

次は、各ストレージノードに搭載されているボリュームのうち、ParaScaleのストレージ用として使用するボリュームをデバイスごとに指定します。画面上部の「Disk Volumes」のリンクを開きます。

この画面では、ストレージ領域として使用可能な状態のボリューム、まだ使用可能な状態になっていないボリューム、そしてOSのブートに使用されているなどの理由で使用ができないボリュームのリストが、各ノードのデバイスごとに表示されます。

今回のテスト環境では、各ノードのボリュームのうちParaScaleが使用できるのはひとつだけ(/dev/sda1)なので、「Unprovisioned Disk Volumes」のリストに表示されているそれぞれのノードのsda1を使用可能な状態にします。

全てのノードのsda1のチェックボックスをチェックし、ポップアップメニューで「Provision」を選択し、Runボタンを押します。

Image

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

Image

3-4. ストレージノードを有効化する

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

Image
図7 StorageNodeを有効化

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

Image

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

Image

4. 最後に

このように、他のオープンな実装では考えられないほどの簡単な手順でセットアップが完了しました。これも商用ソフトウェアの強みのひとつだと思いました。

次回は、実際に外部からアクセスしてみたり、ノードを追加したり削除したり、突然の障害を想定したテストを行っていきたいと思います。