OCFS2ボリュームの作成

ここでは、OCFS2ボリュームの作成方法、およびOCFS2を使用するためのシステムの設定方法について説明していきます。

前提条件

まず、次の作業を行ってください。

  • 必要に応じてSANディスク上のRAID(Redundant Array of Independent Disks)を初期化、設定し、OCFS2ボリュームで使用するデバイスを準備します。デバイスには、空き領域を残してください。

    アプリケーションファイルとデータファイルは、異なるOCFS2ボリュームに保管することをお勧めします。アプリケーション用ボリュームとデータ用ボリュームでマウントの要件が異なる場合は、必ずそうしてください。たとえば、Oracle RACデータベースボリュームには、マウントオプションdatavolumenointrが必要になりますが、Oracle Homeボリュームではこれらのオプションは使われません。

  • ocfs2consoleおよびocfs2-toolsパッケージがインストールされていることを確認してください。これらのパッケージがインストールされていない場合は、YaSTまたはコマンドラインを使ってインストールします。YaSTを使ったインストール方法については、14.5項 「OCFS2のパッケージ」を参照してください。

OCFS2サービスの設定

OCFS2ボリュームを作成する前に、OCFS2サービスを設定する必要があります。ここでは、/etc/ocfs2/cluster.confファイルを生成し、すべてのノード上にcluster.confファイルを保存し、O2CBクラスタサービス(o2cb)を作成、開始する手順を説明していきます。

クラスタ中の1台のノードに対して、以下の作業を行います。

  1. ターミナルウィンドウを開いて、rootユーザとしてログインします。

  2. o2cbクラスタサービスがまだ有効になっていない場合は、chkconfig -- add o2cbを入力します。

    新しくサービスを追加する場合、chkconfigでランレベルを表示、設定、変更することができます。

  3. ocfs2サービスがまだ有効になっていない場合は、chkconfig --add o2cfs2を入力します。

  4. o2cbクラスタサービスドライバを、ブート時にロードするように設定します。

    1. /etc/init.d/o2cb configureと入力します。

    2. [Load O2CB driver on boot (y/n) [n] ]プロンプトで、「y (はい)」と入力してブート時のロードを有効にします。

    3. [Cluster to start on boot (Enter “none” to clear) [ocfs2]]というメッセージが表示されたら、「none」と入力します。この場合、OCFS2を初めて設定しているか、サービスをリセットしていると仮定されます。次のステップで/etc/ocfs2/cluster.confファイルを設定する際に、クラスタ名を指定します。

  5. ocfs2consoleユーティリティを使用して、/etc/ocfs2/cluster.confファイルをクラスタ内の各メンバノードに設定して保存します。

    クラスタ中のすべてのノードで、このファイルの内容は同じでなければなりません。最初のノードにファイルを設定するには、以下の手順に従ってください。後で、ocfs2consoleを使って新しいノードをクラスタに動的に追加して、変更したcluster.confファイルをすべてのノードに反映することができます。

    ただし、クラスタ名やIPアドレスなどの他の設定を変更した場合は、変更内容を有効にするために、ステップ 6の説明に従ってクラスタを再起動する必要があります。

    1. ocfs2console GUIをocfs2consoleと入力して起動します。

    2. ocfs2consoleで、[Cluster]+[Cluster Nodes]の順に選択します。

      cluster.confが存在していない場合は、デフォルトのクラスタ名ocfs2を使ってファイルが作成されます。必要に応じてクラスタ名を変更してください。

    3. [Node Configuration]ダイアログボックスで、[Add]をクリックして、[Add Node]ダイアログボックスを表示します。

    4. [Add Node]ダイアログボックスで、プライマリノード用の一意の名前、一意のIPアドレス(例:192.168.1.1)、およびポート番号(オプション、デフォルトは7777)を入力し、[OK]をクリックします。

      ocfs2consoleコンソールは、0~254の順番にノードスロット番号を割り当てます。

    5. [Node Configuration]ダイアログボックスで、[Apply]をクリックした後、[Close]をクリックして、[Add Node]ダイアログボックスを閉じます。

    6. [Cluster]+[Propagate Configuration]の順にクリックして、cluster.confファイルをすべてのノードに保存します。

  6. 変更内容を有効にするために、OCFS2クラスタを再起動する場合、以下の行を入力して、プロセスのステータスが[OK]に戻るまで待ってください。

    /etc/init.d/o2cb stop
    /etc/init.d/o2cb start
    

OCFS2ボリュームの作成

OCFS2ファイルシステムを作成してクラスタに新しいノードを追加する作業は、クラスタ中の1台のノードに対してのみ行います。

  1. ターミナルウィンドウを開いて、rootユーザとしてログインします。

  2. O2CBクラスタサービスがオフラインの場合、以下のコマンドを入力し、プロセスのステータスが[OK]に戻るまで待ちます。

    /etc/init.d/o2cb online ocfs2
    

    ここで、ocfs2には、実際のOCFS2クラスタ名を入力してください。

    フォーマット操作を行う場合、まずクラスタ中のいずれのノードにもボリュームがマウントされていないことを確認する必要があるため、OCFS2クラスタはオンラインになっていなければなりません。

  3. 次のいずれかの方法を使って、ボリュームを作成、フォーマットします。

    • EVMSGUIで[Volumes]ページに移動して、[Make a file system]+[OCFS2]の順に選択し、適切な情報を設定します。

    • mkfs.ocfs2ユーティリティを使用します。このコマンドの指定形式については、mkfs.ocfs2マニュアルページを参照してください。

    • ocfs2consoleコンソールで[Tasks]+[Format]の順にクリックして、[Available Devices]リストからOCFS2ボリュームで使用するデバイスを選択します。次に、ボリュームに関する情報を設定して、[OK]をクリックすると、ボリュームがフォーマットされます。

    推奨する設定については、次の表を参照してください。

    OCFS2パラメータ

    説明と推奨設定

    Volume label

    異なるノードへのマウント時に、正しく識別できるように、一意のわかりやすいボリューム名を指定します。

    ラベルを変更するには、tunefs.ocfs2ユーティリティを使用します。

    Cluster size

    クラスタサイズは、ファイルに割り当てられる、データ保管領域の最小単位です。

    4、8、16、32、64、128、256、512、および1024KBを指定することができます。ボリュームのフォーマット後にクラスタサイズを変更することはできません。

    Oracleでは、データベースボリュームのクラスタサイズに128KB以上を指定することを推奨しています。また、Oracle Homeの場合は32KBまたは64KBを指定することも推奨しています。

    Number of node slots

    同時にボリュームをマウントできる最大ノード数を指定します。マウント時に、OCFS2は各ノードに対して、個別のシステムファイル(ジャーナルなど)を作成します。ボリュームにアクセスするノードに、リトルエンディアン形式のノード(x86、x86-64、およびia64など)とビッグエンディアン形式のノード(ppc64やs390xなど)が混在しても構いません。

    ノード固有のファイルは、ローカルファイルとして参照されます。ローカルファイルには、ノードスロット番号が付加されます。たとえば、「journal:0000」は、スロット番号0がが割り当てられているノードに所属します。

    各ボリュームの作成時に、ボリュームに同時にマウントする予定のノード数に応じて、そのボリュームの最大ノードスロット数を指定します。必要に応じて、tunefs.ocfs2ユーティリティを使って、ノードスロット数を増やすことができます。ただし、ノードスロット数を減らすことはできません。

    Block size

    ファイルシステムがアドレス可能な領域の最小単位を指定します。ブロックサイズは、ボリュームの作成時に指定します。

    512Byte (推奨されません)、1KB、2KB、または4KB (ほぼすべてのボリュームに最適)を選択することができます。ブロックサイズは、ボリュームのフォーマット後に変更することはできません。