2    インストールの準備

この章では,クラスタ・ソフトウェアをインストールする前に必要な作業について説明します。表 2-1 に,準備作業のガイドライン,および,詳細な説明のある参照先を示します。

表 2-1:  準備作業

作業 参照先
情報チェックリストを作成する。 付録 A
Tru64 UNIX および TruCluster Server ソフトウェアのインストールに必要なマニュアル類と PAK (Product Authorization Key) がそろっていることを確認する。 2.1 節
TruCluster Server 『クラスタ・リリース・ノート』に目を通す。 クラスタ・リリース・ノート
クラスタに組み込む予定のすべてのシステムについて,ハードウェアとファームウェアが,インストレーションを開始できる状態かどうかを確認する。 (新バージョンの Tru64 UNIX および TruCluster Server では,通常,新しいバージョンの AlphaServer SRM ファームウェアを必要とする)。 TruCluster Server『QuickSpecs』,『クラスタ・ハードウェア構成ガイド
割り当てるメンバ ID を決める。 2.2 節
必要な IP 名と IP アドレスを取得する。 2.3 節
クラスタ用にハードウェアをインストールする。 2.4 節 および 『クラスタ・ハードウェア構成ガイド
Tru64 UNIX および TruCluster Server のインストールで使用するディスクとパーティションを決定する。将来のローリング・アップグレードに必要なスペースを確保する。 2.5 節
各クラスタ・メンバに割り当てるボートを決定し,クォーラム・ディスクを構成する場合は,そのディスクに割り当てるボートも決定する。 2.6 節および 『クラスタ管理ガイド
コンソール変数を設定する。 2.7 節

2.1    必要なマニュアルおよび PAK

インストレーションを開始する前に,次のマニュアルを用意してください。

2.2    メンバ ID

クラスタ・メンバは,それぞれ固有のメンバ ID を持ち,その値は 1 〜 63 の整数です。クラスタ・ソフトウェアはメンバ ID を使用して,クラスタの各メンバを識別します。クラスタにメンバを追加すると,省略時の値として,使用できる次のメンバ ID がインストール・プログラムにより提供されます。インストール時に,提供された省略時の設定を使用することも,任意の使用されていないメンバ ID を入力することもできます。

たとえば,メンバ pepicelli および polishham から構成される 2 ノード・クラスタがあるとします。クラスタ・ソフトウェアをインストールする際に,省略時のメンバ ID を使用すると,pepicelli にはメンバ ID として 1 が割り当てられ,polishham にはメンバ ID として 2 が割り当てられます。

pepicelli      member ID = 1
polishham      member ID = 2
 

メンバがクラスタに追加されるとき,そのメンバ ID が generic サブシステムの memberid 変数の値として,そのメンバの sysconfigtab ファイルに書き込まれます。

2.3    IP 名と IP アドレス

クラスタの作成およびメンバの追加を行う場合は,次の IP 名および IP アドレスの情報が必要です。

IP アドレスの割り当てについてのガイドラインは,Tru64 UNIX 『ネットワーク管理ガイド:接続編』 で説明しています。RFC 1918 では,IANA (Internet Assigned Numbers Authority) により,次の IP アドレス空間ブロックがプライベート・インターネット用として予約されています。

10.0.0.0      -   10.255.255.255 
172.16.0.0    -   172.31.255.255
192.168.0.0   -   192.168.255.255
 

インストール・ソフトウェアがクラスタ・インターコネクト・ネットワークに省略時のアドレスを設定する際は,クラス C ネットワークのアドレスを使用します (サブネット・マスク 255.255.255.0)。

メンバのホスト名,クラスタ名,各メンバのクラスタ・インターコネクトに対応する名前など,ホスト名形式の文字列を使用する属性については,RFC 952 で定義され RFC 1123 で修正されたホスト名の標準命名規則に従い,文字として,英字の A 〜 Z と a 〜 z,数字の 0 〜 9,'.' (ピリオド),および '-' (ハイフン) のみを使用しなければなりません。ホスト名の最初の文字は,英字または (RFC 1123 での修正に従い) 数字でなければなりません。

以降の各項では,deli というサンプル・クラスタの作成に使用する名前とアドレスを示します。このクラスタには,pepicellipolishham という 2 つのメンバがあり,クラスタ・インターコネクトに Memory Channel ハードウェアを使用しています。図 2-1 に,クラスタ deli のネットワーク・トポロジを示します。

図 2-1:  クラスタのネットワーク・インタフェース

2.3.1    クラスタ名と IP アドレス

各クラスタには,クラスタ名が付けられています。クラスタ名は,いずれかのクラスタ・メンバのホスト名ではなく,クラスタ全体に割り当てるホスト名です。この名前は,省略時のクラスタ別名に関連付けられたホスト名,つまりクラスタ全体に割り当てられた IP アドレスです。外部クライアントがこのクラスタ名を使用すれば,個々のクラスタ・メンバではなくクラスタにサービスを要求できます。

次に示す例は,クラスタ deli の完全修飾クラスタ名と省略時のクラスタ別名 IP アドレスです。

16.140.112.209   deli.zk3.dec.com   deli   # default cluster alias IP address
                                           # cluster host name
                                           # (default cluster alias name)
 

省略時のクラスタ別名 IP アドレスは,クライアントがルーティングできる有効なアドレスでなければなりません。クラスタのインターネット・サービスの中には,クラスタから発信して接続する場合に,このアドレスをソース・アドレスとして使用するものがあります。このアドレスが,クライアントが応答できるものでない場合,サービスは動作しません。

クラスタ別名アドレスは,ブロードキャスト・アドレスまたはマルチキャスト・アドレスとして使用してはなりません。クラスタ・インターコネクトが使用するサブネット内に存在してはなりません。また,クラスタ・メンバは IPv6 アドレスを使用したり公開したりできますが,クラスタ別名サブシステムは IPv6 アドレスをサポートしていません。したがって,IPv6 アドレスをクラスタ別名に割り当てることはできません。

RFC 1918 で定義されている次のいずれかのプライベート・アドレス空間のアドレスは,クラスタ別名 IP アドレスとして割り当てることができます。

10.0.0.0      -   10.255.255.255   (10/8 prefix)
172.16.0.0    -   172.31.255.255   (172.16/12 prefix)
192.168.0.0   -   192.168.255.255  (192.168/16 prefix)
 

ただし,省略時の設定では,クラスタ別名デーモン aliasd はこれらのプライベート・アドレス空間にある別名アドレスを通知しません。これらのアドレスを省略時のクラスタ別名に割り当てる場合は,シングル・メンバ・クラスタを作成した後に次の作業を行います。

  1. /etc/rc.config.common ファイルの CLUAMGR_ROUTE_ARGS 変数の値を resvok に設定します。

    rcmgr -c set CLUAMGR_ROUTE_ARGS resvok
     
    

  2. cluamgr コマンドを使用して,予約済みのアドレスを通知できることをクラスタ別名デーモン aliasd に知らせます。

    cluamgr -r resvok,start
     
    

/etc/rc.config.common ファイルで CLUAMGR_ROUTE_ARGSresvok に設定されると,各クラスタ・メンバはブート時に cluamgr -r resvok コマンドを自動的に実行します。

2.3.2    メンバのホスト名と IP アドレス

各クラスタ・メンバには,ホスト名が付けられています。 ホスト名は通常,システムのネットワーク・インタフェースに割り当てられた IP アドレスに関連付けられています。 2.3.3 項で説明するクラスタ・インターコネクト・インタフェースの場合を除き,次に示す,クラスタ・メンバで使用するための名前および IP アドレスが必要です。

たとえば,deli クラスタの各メンバ・システムには,外部ネットワーク・インタフェースが 1 つあります。この場合,各メンバのホスト名を,そのメンバの外部インタフェースの IP アドレスに関連づけられた IP 名として使用します。

16.140.112.238  pepicelli  # First  member's tu0 IP name and address.
                           # This is the Tru64 UNIX system.
                           # The host name is pepicelli.
16.140.112.237  polishham  # Second member's tu0 IP name and address.
                           # The host name is polishham.
 

2.3.3    各メンバのクラスタ・インターコネクト用 IP 名と IP アドレス

クラスタには専用のクラスタ・インターコネクトが必要です。これは,クラスタ・メンバだけが使用する独立した別個の通信チャネルです。クラスタ・インターコネクトが LAN の場合,すべてのメンバは 1 つのプライベート・サブネットに存在する必要があります。クラスタ・メンバはすべてクラスタ・インターコネクトに接続されていなければなりません。

次の例は,Memory Channel クラスタ・インターコネクトを使用して動作している deli クラスタの 2 つのメンバ,つまりpepicellipolishham のクラスタ・インターコネクト用 IP 名と IP アドレスを示します。

10.0.0.1 pepicelli-ics0  # first member's  virtual interconnect IP name and address
10.0.0.2 polishham-ics0  # second member's virtual interconnect IP name and address
 

また,次の例は,同じクラスタの 2 つのメンバが LAN インターコネクトを使って動作している場合の,メンバのクラスタ・インターコネクト用 IP 名および IP アドレスを示します。

# first member's cluster interconnect virtual interface IP name and address
10.0.0.1 pepicelli-ics0 
# first member's cluster interconnect physical interface IP name and address
10.1.0.1 member1-icstcp0
# second member's cluster interconnect virtual interface IP name and address
10.0.0.2 polishham-ics0
# second member's cluster interconnect physical interface IP name and address
10.1.0.2 member2-icstcp0
 

クラスタ・インストレーション・スクリプトは,クラスタ・インターコネクトの仮想インタフェースと物理インタフェースの両方を,クラスタ・インタフェース (CLUIF) フラグでマークします。たとえば,次に示す ifconfig -a コマンドの出力では,クラスタ・インターコネクト仮想インタフェース (ics0) とクラスタ・インターコネクト物理インタフェース (ee0)がマークされています。

# ifconfig -a | grep -p CLUIF
ee0: flags=1000c63<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST,SIMPLEX,CLUIF>
     inet 10.1.0.2 netmask ffffff00 broadcast 10.1.0.255 ipmtu 1500
ics0: flags=1100063<UP,BROADCAST,NOTRAILERS,RUNNING,NOCHECKSUM,CLUIF>
     inet 10.0.0.2 netmask ffffff00 broadcast 10.0.0.255 ipmtu 1500
 

次の例では,NetRAIN 仮想インタフェースであるクラスタ・インターコネクト物理インタフェース (nr0) が示されています。

# ifconfig -a | grep -p CLUIF
ee0: flags=1000c63<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST,SIMPLEX,CLUIF>
     NetRAIN Virtual Interface: nr0 
     NetRAIN Attached Interfaces: ( ee1 ee0 ) Active Interface: ( ee1 )
ee1: flags=1000c63<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST,SIMPLEX,CLUIF>
     NetRAIN Virtual Interface: nr0 
     NetRAIN Attached Interfaces: ( ee1 ee0 ) Active Interface: ( ee1 )
ics0: flags=11000c63<BROADCAST,NOTRAILERS,NOCHECKSUM,CLUIF>
     inet 10.0.0.2 netmask ffffff00 broadcast 10.0.0.255 ipmtu 1500
nr0: flags=1000c63<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST,SIMPLEX,CLUIF>
     NetRAIN Attached Interfaces: ( ee1 ee0 ) Active Interface: ( ee1 )
     inet 10.1.0.2 netmask ffffff00 broadcast 10.1.0.255 ipmtu 1500 

2.4    ハードウェア

Tru64 UNIX オペレーティング・システムのインストールの前に,ストレージ・ハードウェアおよびクラスタ・インターコネクト用 (Memory Channel または LAN) ハードウェアなど,クラスタ用のハードウェアをインストールします。

オペレーティング・システムをインストールまたはアップデートした後に,新しいハードウェア,たとえば,ネットワーク・アダプタなどを追加する場合は,必ず /genvmunix をブートして,カスタマイズしたカーネルを構築してください。そうしない場合,システムのカーネル構成ファイルにそれらのハードウェア・オプションが組み込まれないため,TruCluster Server のインストール時に構築したカーネルで新しいハードウェアが認識されません。カーネルの構築については,Tru64 UNIX 『システム管理ガイド』で説明しています。

2.5    ディスク

この節では,次の事項について説明します。

注意

クラスタのルート (/),/usr,および /var の各ファイル・システムは,高可用性である必要があるため,これらのファイル・システムはミラー化するようにしてください。RAID (Redundant Array of Independent Disk) コントローラまたは LSM (ソフトウェア RAID) を使用して,これらのファイル・システムをミラー化することができます。メンバのブート・パーティションやクォーラム・ディスクでは LSM (Logical Storage Manager) がサポートされていないので,この場合は RAID コントローラ (HSG80 など) を使用してミラー化してください。

ベース・オペレーティング・システムまたはクラスタに必要な いずれかのディスクに対して,Fibre Channel ストレージセットを使用する予定がある場合には,『クラスタ・ハードウェア構成ガイド』の Fibre Channel に関する章をお読みください。

Tru64 UNIX オペレーティング・システムをインストールする前に,ストレージ・ハードウェアをすべて構成してください。

2.5.1    インストレーションに必要なディスク

次の用途に割り当てるためのディスク (物理ディスクまたは論理ディスク) が必要です。

この項で示す例では,システム・コンソール・デバイス (DK) の観点と,オペレーティング・システムのデバイス・スペシャル・ファイル (dsk) の観点から各ブート可能ディスクを説明します。ブート可能なディスクのコンソール・デバイス名がわかっている場合は,この項を読み進みながら付録 A のチェックリストに記入してください。ただし,どのスペシャル・ファイルが各物理デバイスに関連付けられるかは,ベース・オペレーティング・システムをインストールするまでわかりません。ベース・オペレーティング・システムをインストールした後に,3.7 節の情報を参照してコンソール・デバイス名をデバイス・スペシャル・ファイル名にマップしてください。

以降の各項では,クラスタのインストールに必要なディスクについて詳しく説明します。

2.5.1.1    Tru64 UNIX ディスク (プライベートまたは共用)

ベース・オペレーティング・システムは,1 つ以上の物理ディスクまたは論理ディスクに,AdvFS ファイル・システムを使用してインストールします。ディスクは,最初のクラスタ・メンバとなるシステムの 1 つ以上のプライベート・ディスク,またはシステムがアクセスできる共用バス上の 1 つ以上のディスクのいずれかです。たとえば,次のように,DKA0 にベース・オペレーティング・システムをインストールし,オペレーティング・システムにより DKA0dsk0 にマップされるとします。

DKA0       dsk0a       root_domain#root
           dsk0g       usr_domain#usr
           dsk0h       var_domain#var
 

ベース・オペレーティング・システムは,クラスタの作成後も使用できるため,緊急時には,このベース・オペレーティング・システムをブートして,問題を診断し,解決することができます。

警告

ベース・オペレーティング・システムはすべての共用バス上のデータにアクセスできるため,クラスタの実行中には,ベース・オペレーティング・システムをブートしないでください。ベース・オペレーティング・システムは,クラスタが共用データへの複数システムのアクセスを制御するときに使用するバリアやロックを把握していません。クラスタが使用するディスクに Tru64 UNIX システムがアクセスすると,データが破損する恐れがあります。このため,ベース・オペレーティング・システムのブートは,クラスタ全体をシャットダウンした後にのみ行ってください。

制約事項: Tru64 UNIX オペレーティング・システム用に使用するディスクは,クラスタ単位のディスク,メンバ・ブート・ディスク,またはクォーラム・ディスクのいずれとしても使用できません。

2.5.1.2    クラスタ単位のルート (/),/usr,/var ディスク (共用)

クラスタの作成時には,インストレーション・スクリプトにより,Tru64 UNIX ディスクからクラスタ単位のファイル・システム用として指定したディスクに,Tru64 UNIX のルート (/),/usr,および /var の各ファイル・システムがコピーされます。

個々のメンバが立ち上がっているかダウンしているかに関係なく,クラスタ・メンバがディスクにアクセスできるようにするため,クラスタ単位のファイル・システムに使用する物理ディスクまたは論理ディスクを共用バス上で特定します。すべてのクラスタ・メンバからアクセスできなければならないファイル・システムがメンバのプライベート・バス上にある場合,そのメンバがクラッシュすると,残りのクラスタ・メンバはそのファイル・システムにアクセスできなくなります。

インストール時に,クラスタ単位のルート (/),/usr,および /var の各ファイル・システムを格納するディスク・パーティション名を指定します。各 AdvFS ファイル・システムは,別個のパーティションに格納しなければなりません。ただし,パーティションが同一のディスク上にある必要はありません。表 2-2 に,すべてのクラスタ・ファイル・システムに対して推奨する最小サイズを示します。

たとえば,次の例を参照してください。

dsk1b       cluster_root#root
dsk2c       cluster_usr#usr
dsk3c       cluster_var#var
 

注意

クラスタでは,/var/usr の下に置くことはできません。/var/usr の下に置いて Tru64 UNIX をインストールすると,clu_create はそれらに対して別々にパーティションを作成します。

cluster_root#rootファイル・システムは,次の理由から b パーティションに配置することがよくあります。

クラスタを作成して使用を開始した後に,さらにスペースが必要となった場合は,cluster_root#rootcluster_usr#usrcluster_var#var のいずれかにボリュームを追加することができます。

注意

AdvFS ドメインのボリューム,および,すべてのクラスタ・メンバがアクセスしなければならないファイル・システムの LSM ボリュームにあるストレージ用に,すべてのメンバで共用しているバス上に物理デバイスを配置することを推奨します。

制約事項: クラスタ単位のルート (/),/usr/var のいずれかのファイル・システムでディスクのパーティションが使用される場合,そのディスクは,メンバ・ブート・ディスクまたはクォーラム・ディスクとして使用できません。

2.5.1.3    メンバ・ブート・ディスク (共用)

それぞれのメンバには,ブート・ディスクとして,物理ディスクまたは論理ディスクがあります。ディスクは,メンバをクラスタに追加しているシステムにアクセス可能なバス上にある必要があります。このディスクは,共用バスに置いて,他のクラスタ・メンバからアクセスできるようにすることを推奨します。

例:

DKC400     dsk10        first  member's boot disk  [pepicelli]
DKC600     dsk12        second member's boot disk  [polishham]
 

省略時の設定では,インストレーション・スクリプトにより,各メンバのブート・ディスクが次の 3 つのパーティションを格納するように再フォーマットされます。

メンバのブート・ディスクには,ファイル・システム /usr または /var はありません。

注意

新規メンバで不適切なディスクがブートされるのを避けるため,新規メンバのコンソールで,メンバのブート・ディスク用の /dev/disk/dsk スペシャル・ファイル名と,そのディスク用の DK デバイス名を取得する必要があります。

clu_add_member コマンドを使ってメンバを追加するとき,そのメンバのブート・ディスクに関する情報が表示されます。そこには,ディスクのシリアル番号 (ワールドワイド ID),製造元,モデル番号,および物理的な位置 (バス/ターゲット/論理ユニット番号 (LUN)) が分かっている範囲で表示されます。物理的な位置情報 (バス/ターゲット/LUN) は,clu_add_member を実行したシステムから見える情報なので注意してください。システムとストレージの構成によっては,追加するメンバのコンソールで表示されるストレージ情報と違う場合があります。

clu_add_member によって得られる情報と 3.7 節に記載されている情報を使って,メンバ・ブート・ディスク用のスペシャル・ファイル名を物理デバイスにマップしてください。この情報は,付録 A の「メンバ属性」の表 (表 A-3) に記入してください。

メンバのディスクには 3 つ以上の必須パーティションを置くことができます。ただし,データ用にディスクを使用することはできません。

ディスクが次の必要条件を満たす場合,インストレーション・スクリプトはディスク・ラベルを変更しません。

制約事項: メンバ・ブート・ディスクには,クラスタ単位のルート (/),/usr,または /var ファイル・システムを置けません。メンバ・ブート・ディスクをクォーラム・ディスクとして使用することはできません。

推奨されてはいませんが,メンバのブート・パーティションにファイルセットを追加することは可能です (a パーティション)。ただし,メンバがクラスタから離れた場合,メンバのブート・パーティション・ドメインからマウントされたファイルセットはすべて強制的にアンマウントされます。それらのファイルセットは再配置することはできません。

2.5.1.4    クォーラム・ディスク (共用)

クォーラム・ディスクは,h パーティションにクラスタの状態とクォーラム情報を格納する物理ディスクまたは論理ディスクです。次に例を示します。

dsk7        quorum disk

クォーラム・ディスクを使用すると,クラスタ分断を防ぐとともに,クラスタの可用性が高められます。2 ノード・クラスタの場合は,クォーラム・ディスクを構成して,クォーラム・ディスクに 1 ボート与えてください。各メンバとクォーラム・ディスクがそれぞれ 1 ボートを持つ場合,ボートが 2 であるかぎり,クラスタはクォーラムを保持して,稼働することができます。このため,両方のメンバが稼働しているか,または一方のメンバが稼働していてクォーラム・ディスクが使用可能であれば,クラスタはクライアントの要求に応答できます。ただし,クォーラム・ディスクがない場合は,一方のメンバで障害が起きると,クラスタのクォーラムが失われて,クライアントの要求に応答できなくなります。

クォーラム・ディスクを構成するかどうかを決定する前に,本書の2.6 節と,『クラスタ管理ガイド』のクォーラム・ディスクについての説明を参照してください。クォーラム・ディスクは,クラスタを作成した後でも構成できます。

注意

クラスタの移行中でも,クォーラム・ディスクにはクラスタ・メンバからアクセスがあるので,クォーラム・ディスクには入出力バリアは設けられません。こうした事情があるので,このディスクの残りのパーティションは,データ用に使用しないでください。インストール時またはその後に clu_quorum コマンドを使用してクォーラム・ディスクを指定する場合,保存しておきたいデータを格納したディスクは指定しないでください。クォーラム・ディスクになったディスクはラベルが変更されるため,既存の生データまたはファイル・システムにはアクセスできなくなります。

制約事項: 1 つのクラスタに構成できるクォーラム・ディスクは 1 つだけです。クォーラム・ディスクを,すべてのクラスタ・メンバが直接接続されている共用バス上に配置します。そうでない場合,クォーラム・ディスクに直接接続されていないメンバは,直接接続されているメンバより前にクォーラム・ディスクを失うおそれがあります。メンバ・ブート・ディスクはクォーラム・ディスクとして使用できません。クラスタ単位のルート (/),/usr/var のいずれかのファイル・システムを格納したディスクもクォーラム・ディスクとしては使用できません。

2.5.2    LSM の考慮事項

LSM を使用してクラスタ・ファイル・システムをミラー化する場合,Tru64 UNIX システムにあるルート (/) (root_domain),/usr (usr_domain),/var (var_domain) などのファイル・システムをミラー化しても,クラスタの cluster_rootcluster_usrcluster_var ドメインに影響を与えません。たとえば,Tru64 UNIX システムの root_domain をミラー化した後,clu_create を実行してクラスタを作成しても,cluster_root は自動的にはミラー化されません。したがって,LSM を使用して Tru64 UNIX システム上のファイル・システムではなく,TruCluster Server クラスタのファイル・システムをミラー化する場合は,Tru64 UNIX システムに LSM をセットアップした後,クラスタの最初のメンバをブートするまで,ファイル・システムのミラー化を行わないでください。

clu_create で単一メンバのクラスタを作成すれば,volmigrate コマンドを使用して cluster_root, cluster_usr, および cluster_var ドメインを LSM ボリュームに移動することができます。その際,オプションでそのボリュームをミラー化することもできます。これらのドメインを LSM ボリュームに移動する場合,volmigrate は,volmigrate 実行時に指定した新しいターゲット・ストレージに,clu_create で指定したディスク・パーティションのデータを移動するので注意してください (clu_create で指定したディスク・パーティションは ボリュームでは使用されなくなり,他の用途に使用できるようになります)。このため,cluster_root, cluster_usr, および cluster_var ドメインを LSM ボリュームに移動するには,clu_create で指定するディスク・パーティションは一時的なストレージと考え,volmigrate に必要なストレージを別途準備する必要があります。

注意

cluster_root, cluster_usr, または cluster_var ドメインを LSM ボリュームに移動するには volmigrate コマンドを使用しなければなりません。volencap コマンドは使用できません。

クラスタ内で LSM を使用する方法についての詳細は,『クラスタ管理ガイド』を参照してください。また,クラスタ内で使用する volmigrate コマンドについては, volmigrate(8) を参照してください。

2.5.3    2 ノード・クラスタの最小ディスク・レイアウト

2 ノード・クラスタの場合,最小ディスク・レイアウトでは少なくとも 4 つのディスクを使用します (ただし,5 つ使用することをお勧めします)。

この最小ディスク・レイアウトでは,NSPOF (no-single-point-of-failure) 構成になっていません。すべてのメンバ・ブート・ディスクが共用バス上にありますが,クラスタ単位のルート (/),/usr,および /var の各ファイル・システムがミラー化されていません。これらの重要なファイル・システムのミラー化を推奨します。

NSPOF ハードウェア構成については 『クラスタ・ハードウェア構成ガイド』で説明しています。

図 2-2 に,これらのディスクに格納されるファイル・システム間の関係と,これらのファイル・システムによって構成されるクラスタのディレクトリ構造を示します。クォーラム・ディスクにはファイル・システムが格納されないため,この図には示していません。

図 2-2:  クラスタ単位のファイルとメンバ・ブート・パーティション

2.5.4    推奨するディスクの空き容量

表 2-2 に,ディスク・パーティションで必要とする推奨最小サイズを示します。メンバが 4 つ以下のクラスタでは,このサイズが妥当です。2.5.5 項には,ローリング・アップグレードを実行する際に必要なディスク容量についての情報が記載されています。ディスク容量について計画する場合には,この項も参照してください。

表 2-2:  推奨するディスクの空き容量

ファイル・システム (種類) パーティション 推奨最小サイズ コメント
クラスタ・ルート (/) (AdvFS) b 200 MB

最小パーティション・サイズは 125 MB または (1.125 x currently_used_root_size) より大きくなければならない。たとえば,Tru64 UNIX ルート (/) ファイル・システムが現在,そのパーティションの 158 MB を使用している場合,クラスタ単位のルートのパーティション・サイズは 177.75 MB になる (1.125 x 158 = 177.75)。必ず必要なパーティション・サイズは 125 MB。

容量に余裕がある場合,クラスタのルート・パーティションのサイズは Tru64 UNIX ルート・パーティションの 3 倍にする。

TruCluster Server では,ルート・ファイル・システムへのボリュームの追加をサポートしている。クラスタ内では,AdvFS addvol コマンドを使用して cluster_root#root にボリュームを追加できる (AdvFS Utilities は別ライセンスである)。これにより,クラスタの規模の拡大に応じて,ルート・ファイル・システムを拡張できる。AdvFS ファイル・ドメインへのボリュームの追加についての詳細は,『クラスタ管理ガイド』を参照。

クラスタ /usr (AdvFS) g 1000 MB 最小パーティション・サイズは 675 MB または (1.125 x currently_used_/usr_size) より大きくなければならない。絶対的な最小パーティション・サイズは 675 MB。
クラスタ /var (AdvFS) h 1000 MB 最小パーティション・サイズは,360 MB または (1.125 x currently_used_/var_size) より大きくなければならない。絶対的な最小パーティション・サイズは 360 MB。
メンバ・ブート・ディスク: ルート (AdvFS) a 256 MB メンバ・ブート・ディスクで必要なファイル・システムは,ルート,swap,およびクラスタ状態情報用の 1 MB のパーティション。ファイル・システムを格納していないディスクの場合,インストレーション・プロシージャにより,省略時の a パーティション・サイズが使用される。ファイル・システムを格納しているディスクの場合は,そのサイズで十分かどうかが計算される。必要なパーティションが使用可能な場合,既存のパーティション・サイズを使用するかどうかを確認するプロンプトが表示される。
メンバ・ブート・ディスク: swap (スワップ) b システムによる

メンバ・ブート・ディスクで a パーティションと h パーティションを割り当てた後の残り部分。最小サイズは 256 MB。

共用ストレージ・バスのトラフィックを軽減するため,クラスタを作成した後にスワップを再構成して,各メンバの一次スワップ・パーティションをプライベート・ディスク上に配置することができる。クラスタ・メンバのスワップ領域再構成についての詳細は,『クラスタ管理ガイド』を参照。大量のメモリを装備したシステムのスワップ領域を構成する場合は,スワップ領域が十分であることを確認する。スワップ領域の計画についての詳細は,Tru64 UNIX 『インストレーション・ガイド -- 上級ユーザ編』を参照。

メンバ・ブート・ディスク: CNX クラスタ状態用 h 1 MB ちょうど h パーティション (fstype cnx) には,クラスタ状態情報が格納される。このパーティションは,インストレーション・プロシージャにより,各メンバのブート・ディスクに作成される。
クォーラム・ディスク h 1 MB ちょうど クォーラム・ディスクには,小容量のディスクを使用できる。すべてのクラスタ・メンバがクォーラム・ディスクから情報を検索できなければならないため,このディスクには入出力バリアがない。このため,このディスクにはファイル・システムを格納しない。

2.5.5    ローリング・アップグレードの準備のための追加のディスク容量の割り当て

ローリング・アップグレードでは,第 7 章で説明するように,次のようなディスク容量の要件があります。

次の 2 つのオプションがあります。

2.6    クォーラム : メンバ・ボートと期待ボート

クラスタに参加する可能性のあるシステムのボート数は,0 または 1 です。システムに割り当てられたボート数は,メンバ固有の /etc/sysconfigtab ファイルに cluster_node_votes の値として格納されています。各システムには,期待ボートと呼ばれる値もあり,/etc/sysconfigtab ファイルに cluster_expected_votes の値として格納されています一般に,cluster_expected_votes の値は,潜在的なすべてのメンバの cluster_node_votes 値を合計したものです。クォーラム・ディスクを構成する場合は,クォーラム・ディスクに割り当てられるボートもこれに加えられます。

メンバ・ボート,クォーラム,および実行可能なクラスタの形成と保守は,簡単には説明できない複雑な問題です。クォーラムを計算する方法およびクラスタのメンバシップを保守する方法については,『クラスタ管理ガイド』で説明しています。インストール時に潜在的なクラスタ・メンバに割り当てるボートの数を決める前に,このクォーラムに関する説明をお読みください。

次のリストでは,インストール時に clu_createclu_add_member によって提供される省略時のノード・ボート設定について説明します。

注意

インストール時にノード・ボートの扱いがよくわからない場合は,間違ってクラスタが形成できなくなるという事態を避けるために,省略時の設定に手を加えないでください。ボートは,後ほどいつでも変更できます。

2.3 節に示した deli クラスタの例では,インストール中に,第 1 メンバ (pepicelli) に 1 ボートが自動的に割り当てられ,1 ボートのクォーラム・ディスクが構成され,2 番目のメンバ (polishham) にも 1 ボートが割り当てられました。このため,cluster_expected_votes の値は 3 であり,クォーラムには 2 ボート必要になります。

clu_create および clu_add_member で提供される省略時のボート値は,2 メンバ・クラスタ (2 つのボートを持つメンバとクォーラム・ディスク) の最大の可用性が得られるようにバイアスがかけられます。他のクラスタ構成の可用性を高めるには,表 2-3 および表 2-4 の提案を考慮に入れます。メンバ数が偶数 (2,4,6,8) のクラスタでは,可用性を高めるためにクォーラム・ディスクの使用を強く推奨します。これは,特に,小規模なクラスタに当てはまります。しかしながら,クォーラム・ディスクを選択できない状況でも役立つように,表 2-4 に,クォーラム・ディスクを構成しないクラスタ用に最適なボートの割り当てを示します。

表 2-3:  クォーラム・ディスクを持つクラスタのための推奨ボート割り当て

メンバ数 クォーラム・ディスクのボート ノード・ボート割り当て (メンバ ID の昇順にコンマで区切ったノード)
1 0 1
2 1 1,1
3 0 1,1,1
4 1 1,1,1,1
5 0 1,1,1,1,1
6 1 [脚注 3] 1,1,1,1,1,1

表 2-4:  クォーラム・ディスクを持たないクラスタのための推奨ボート割り当て

メンバ数 ノード・ボート割り当て (メンバ ID の昇順にコンマで区切ったノード)
1 1
2 1,0
3 〜 8 1, ..., 1

2.7    コンソール変数

次に示すのは,コンソール変数のリストです。これらの設定はクラスタ内のシステムにとって重要です。リストでは,clu_create または clu_add_member が変数を設定するのか,あるいはユーザが手動で変数を設定しなければならないのかを示しています。

clu_create または clu_add_member によってコンソール変数を設定できない場合は,ユーザが手動で設定する必要があります。

すべてのコンソール変数がすべてのシステムに適用されるわけではありません。

boot_osflags

set boot_osflags A
 

boot_osflagsA に設定されていると,システムは自動的にマルチユーザ・モードでブートします。クラスタの最初のメンバになるシステムをインストールする際,ベース・オペレーティング・システムが自動的にこの変数を設定します。メンバを追加する場合は,そのメンバを初めてブートする前に,この変数を設定してください。

boot_reset

set boot_reset on
 

boot_reset の値が off である場合,システム停止コマンドまたはブート・コマンドを実行すると,ウォーム・ブートだけが実行されます。値が on の場合には,フル・リセット (コールド・ブート) が実行されます。値を on に設定すると,システムはブートのたびに初期化された状態になります。

clu_create コマンドでは,クラスタの作成時に第 1 メンバの boot_reseton に設定されます。clu_add_member コマンドでは一回限りのスクリプトが作成され,新しいメンバを初めてブートするときには,このスクリプトにより boot_reseton に設定されます。

AlphaServer 8200 システムと 8400 システムの場合,この変数は手動で設定する必要があります。

boot_reset コンソール変数をサポートしないシステムでは,シャットダウン時に必要な初期化を行います。これらのシステムでは,ユーザによる操作の必要はありません。

bootdef_dev

set bootdef_dev boot_disk
 

bootdef_dev 変数には,ブート・コマンドをパラメータなしで入力した場合または AUTO_ACTION ブートが進行中の場合に,システムをブートするデバイスを順番に指定したリストを,コンマで区切り,スペースをいれないで指定します。

clu_createコマンドでは,クラスタの作成時に,第 1 メンバのブート・デバイスに設定されます。clu_add_member コマンドでは,一回限りのスクリプトが作成され,それにより新しいメンバの最初のブート時にブート・デバイスが設定されます。

AlphaServer 8200 システムおよび 8400 システムの場合,この変数は手動で設定する必要があります。

SCSI または Fibre Channel バスに接続され,複数バス・フェイルオーバ用に構成されている HS コントローラがハードウェア構成に含まれている場合,clu_createclu_add_member で設定できるバスのパスは 1 つだけです。ブートする前にシステムを停止し,コンソールから手動で両方の値を設定しなければなりません。次に例を示します。

>>> set bootdef_dev device1,device2
 

各デバイスは,スペースではなくコンマで区切ります。コンソールから最初のデバイスをブートできなかった場合,リストの順序に従って,次のデバイスからブートが試行されます。デバイスのパスをすべて指定しなかった場合,メンバをブートしようとすると「not connected」というコンソール・エラー・メッセージが表示されることがあります。

注意

システムでクラスタ・メンバのブート・ディスクとして Fibre Channel ディスクを使用している場合は,wwidmgr set または wwidmgr quickset コマンドのいずれかを使用してデバイスおよびポート・パス情報を構成していないかぎり,clu_create および clu_add_member のいずれでも bootdef_dev 変数を設定できません。また,それらの情報を構成している場合でも,clu_create および clu_add_member コマンドで設定できるのは 1 つのパスだけです。Fibre Channel を介してメンバのブート・ディスクにアクセスする場合に bootdef_dev 変数に複数のパスを設定する手順については,『クラスタ・ハードウェア構成ガイド』の Fibre Channel に関する章を参照してください。

boot_dev

set boot_dev boot_disk
 

boot_dev 変数は,リブートに使用するディスクを指定します。

clu_createコマンドでは,クラスタの作成時に,第 1 メンバに対してこの変数が自動的に作成および設定されます。clu_add_member コマンドでは,一回限りのスクリプトが作成され,新しいメンバを初めてブートするときにこの変数が作成および設定されます。

AlphaServer 8200 システムと 8400 システムでは,この編集は手動で設定する必要があります。

bus_probe_algorithm

set bus_probe_algorithm new
 

コンソール変数 bus_probe_algorithm をサポートするシステムの場合,最初のシステムでこの変数に new を設定してから Tru64 UNIX をインストールしなければなりません。また,メンバを追加するときは,初めてブートする前にそのメンバでこの設定を行う必要があります。bus_probe_algorithm の値を new に設定すると,すべてのメンバ・システムで PCI (peripheral component interconnect) デバイスが必ず探索されます。

AlphaServer システム 800,1000,1000A,2000,2100,および 2100A では,コンソール変数 bus_probe_algorithm をサポートしています。これより新しいシステムでは,この変数を使用しません。

コンソール変数 bus_probe_algorithm を確認して,設定を行うには,次の手順に従ってください。

  1. システムをシャットダウンしてコンソール・モードにし,システムの電源を一度オフにしてからオンにします。これにより,一時的なコンソール変数がすべてクリアされます。

  2. show コマンドを入力します。

    >>> show bus_probe_algorithm
    

    この変数がサポートされる場合,コンソールにより変数名と現在の値 (old または new) が表示されます。

  3. ファームウェアがコンソール変数 bus_probe_algorithm をサポートしており,現在の値が old である場合は,値を new に設定します。

    >>> set bus_probe_algorithm new
     
    

2.8    サンプルのクラスタ構成チェックリスト

表 2-5表 2-6,および表 2-7では,付録 A のチェックリストを使用して,サンプルの deli クラスタ構成に使用される情報の概要を示します。

表 2-5:  サンプルの Tru64 UNIX システム属性

属性
 ホスト名 pepicelli.zk3.dec.com
 ホスト名の IP アドレス 16.140.112.238
 Tru64 UNIX のルート・パーティション (たとえば,dsk0a) dsk0a
 Tru64 UNIX のコンソールからのルート・デバイス (たとえば,DKA0) DKA0
 Tru64 UNIX の /usr パーティション (たとえば,dsk0g) dsk0g
 Tru64 UNIX の /var パーティション (たとえば,dsk0h) dsk0h

表 2-6:  サンプルのクラスタ属性

属性
クラスタの完全修飾名 deli.zk3.dec.com
省略時のクラスタ別名 IP アドレス 16.140.112.209
クラスタ単位のルート・パーティション (たとえば,dsk1b) dsk1b
クラスタ単位のルート (/) ディスク・デバイスのシリアル番号 (たとえば,WWID) DEC RZ1CF-CF (C) DEC 50022303
クラスタ単位の /usr パーティション (たとえば,dsk2c) dsk2c
クラスタ単位の /usr ディスク・デバイスのシリアル番号 (たとえば,WWID) DEC RZ1CB-CS (C) DECQD2202330Y3WJL
クラスタ単位の /var パーティション (たとえば,dsk3c) dsk3c
クラスタ単位の /var ディスク・デバイスのシリアル番号 (たとえば,WWID) DEC RZ1CF-CF (C) DEC 50021480
クォーラム・ディスクを使用している場合のディスク・デバイス (たとえば, dsk7) dsk7
クォーラム・ディスクを使用している場合のクォーラム・ディスクのシリアル番号 (たとえば,WWID) DEC RZ28L-AS (C) DECJED716250N6TF6
クォーラム・ディスクを使用している場合にクォーラム・ディスクに割り当てられるボート数 1

表 2-7:  サンプルのメンバ属性

属性 第 1 メンバ 第 2 メンバ 第 3 メンバ
メンバ・ホストの完全修飾名 pepicelli.zk3.dec.com polishham.zk3.dec.com  
ホスト名の IP アドレス 16.140.112.238 16.140.112.237  
メンバ ID (memberid: 1 〜 63) 1 2  
このメンバに割り当てられるボート数 1 1  
ブート・ディスク (たとえば,dsk10) dsk10 dsk12  
コンソールからのブート・デバイス (たとえば,DKC400) DKC400 DKC600  
ブート・デバイスのシリアル番号 (たとえば,WWID) DEC RZ1CF-CF (C) DEC 50066053 DEC RZ1CF-CF (C) DEC 50066104  
ブート・デバイスの物理的位置 (bus/target/LUN) bus-2-targ-11-lun-0 bus-2-targ-13-lun-0  
仮想クラスタ・インターコネクトの IP 名 pepicelli-ics0 polishham-ics0  
仮想クラスタ・インターコネクトの IP アドレス 10.0.0.1 10.0.0.2  
物理クラスタ・インターコネクトのデバイス名 Memory Channel  
物理クラスタ・インターコネクトの IP アドレス (LAN のみ) n/a n/a  
追加のネットワーク・インタフェースの IP 名 n/a n/a  
追加のネットワーク・インタフェースの IP アドレス n/a n/a