著者:飯坂剛一(いいさかごういち)

Revision 1.51: 2008/01/18

はじめに

この資料はNPACI Rocks 4.3 をインストールするときの 手順についてまとめるものです。 インストールについてと、その後の運用手順での標準化を 目的に作成しています。

必要なロール

標準化をするためにも次のロールのインストールを推奨します。

推奨ロール

os ロールは必要に応じてRedHat Enterprise Linux 4 や CentOS4を使っても構いません。 また、os, RedHat Enterprise Linux 4, CentOS4いずれも すべてのCDをセットしてください。

ホスト情報

インストール時に入力が求められるホスト情報については、 後から変更できますので任意のもので構いません。

clsuter information

ここでは、 ホスト名のFQDNは cluster.hpc.org とします。

もちろん、あらかじめ決まっているのであれば それを入力する方が単純です。

Network情報

NPACI Rocks では eth0 がプライベートネットワーク、 eth1 がパブリックネットワークになります。

クラスタ情報と同様に、あらかじめ決まっているのであれば それを入力する方が単純ですが、 これも後から変更するので次の情報で設定します。

eth0
  • IPAddress 192.168.10.1

  • Netmask 255.255.255.0

eth1
  • IPAddress 172.16.10.1

  • Netmask 255.255.255.0

  • Gateway 172.16.10.1

  • DNS 172.16.10.1

  • NTP 172.16.10.1

パーティション

パーティション設定はマニュアルで行ないます。

外付けのRAIDディスクがある構成でしたら、 インストール時には外付けディスクの パーティションを設定しない方が時間が短くてすみます。

マウントポイント 最小サイズ 備考
/ 16GB ルートファイルシステム
/var 4GB ログ、スプール領域
swap 2GB スワップ領域
/export 12GB Rocksで利用する領域。boot後に/rocksにラベル名を変更
/rocks 残り全て デフォルトのhome領域。boot後に/exportにラベル名を変更

/export 領域(ブート後に/rocksなる)の最小サイズは次の指針で決定します。

6GB × 保持するディストリビューションの数 + SDK用 6GB

フロントエンドノードにRHEL, 計算ノードにCentOSなどという場合では、 6GB × 2 + 6GB = 18GB が必要ということになります。

フロントエンドノードのディスクサイズが36GBである場合では、 Rocksで使用するレポジトリ用の/exportを割り当てると、 ほとんど残りがなくってしまいます。

この場合は、 /export,/rocksと分割する方法を取らずに /exportを残り全部を割り当ててください。

ただし、実際のユーザホーム領域はほとんどないことに留意のこと。

/rocks と /export のラベル名の変更する理由

インストール時には/export が必要なので、 一旦/exportとして領域を確保しますが、 実際は/rocksとして運用されます。

つまりディスクのラベル名が変更して、 マウントポイントが入れ替えます。

これにより、 システム領域を確保できることになり、 ユーザホーム領域の増加に影響されません。

また、システムとしてバックアップを取得する領域についても ルートファイルシステム(/)、/var、/rocks の約40GBで済み ユーザ領域と区別できるためシステムのバックアップが単純になります。

インストール後に/rocksを設定する場合

外付けのRAIDディスク(デバイス/dev/cciss/c1d0)がある構成で、 インストール後に /rocks パーティション(/dev/cciss/c1d0p1) を設定する場合は次のような手順になります。

# fdisk /dev/cciss/c1d0
# mkfs.ext3 /dev/cciss/c1d0p1
# e2label /dev/cciss/c1d0p1 /rocks
# /etc/init.d/rocks-firstboot stop
# /etc/init.d/rocks-firstboot reconfig

/etc/init.d/rocks-firstboot の処理内容

ラベル変更に加えて、次のファイルを修正する必要があります。

ブート後に初回だけ呼び出される /etc/init.d/rocks-firstboot では次のような処理を行なっています。

rootユーザのディスクトップを修正

rootユーザのディスクトップの背景色を「赤く」変更します。

ディストリビューションに応じたyumの設定

rocks-fistboot ではyumの設定のほとんどを自動的に行なっています。

ミラーホストの設定

NPACI ROcksは登録しているミラーホストからUpdate/Errataパッケージを ダウンロードするようになっています。

シンボリックリンクの設定

# mkdir /export/home
# cd /export/home
# ln -s /rocks/home/install .

/etc/exports を修正

# cat /etc/exports
/export 192.168.10.0/255.0.0.0(rw,async)
/rocks  182.168.10.0/255.0.0.0(rw,no_root_squash,async)

# exportfs -r
# /etc/init.d/nfs restart

/etc/auto.home と /etc/auto.share を修正

# cat /etc/auto.home
install         cluster.local:/rocks/home/&
scs             cluster.local:/rocks/home/&

# cat /etc/auto.share
apps cluster.local:/rocks/&
install cluster.local:/rocks/home/&

ホスト名の変更

FQDNで設定されているパブリック側のホスト名を変更します。

[root@cluster ~]# rocks-hostname
Current Hostname: cluster.hpc.org
New Hostname: 新しいホスト名を与えます
MySQL root passwd: インストール時に設定したrootのパスワードを入力
working...
       :
       :
Warning

/home/install がカレントディレクトリであるときに実行すると autofs の停止に失敗します。

LSF,PBSPro,TORQUEの設定については現時点では個別に修正する必要があります。

rocks-hostname を実行すると /etc/auto.home と /etc/auto.share の内容が変更されます。

[root@cluster ~]# cat /etc/auto.home
install baystars.local:/export/home/&

[root@cluster ~]# cat /etc/auto.share
apps    baystars.local:/export/&
install baystars.local:/export/home/&

クラスタ情報の変更 (SCSBASE)

scsbaseロールがインストールされていれば、 クラスタ情報はrocks-config-certコマンドで変更できます。

rocks-config-cert実行画面

クラスタ情報の変更 (Rocks)

NPAIC Rockの本来の方法では rocksコマンドで変更します。

現在の内容を参照する:

# rocks list var service=info
SERVICE COMPONENT               VALUE
Info    Born                    2007-10-18 04:57:41
Info    CertificateCountry      US
Info    CertificateLocality     San Diego
Info    CertificateOrganization SDSC
Info    CertificateState        California
Info    ClusterContact          admin@place.org
Info    ClusterLatlong          N32.87 W117.22
Info    ClusterName             Our Cluster
Info    ClusterURL              http://www.place.org/
Info    RocksRelease            Mars Hill
Info    RocksVersion            4.3

現在のクラスタ情報の内容を修正する:

# rocks set var Info ClusterName "新しいクラスタ名"
# rocks set var Info CertificateOrganization "新しい組織名"
# rocks set var Info CertificateLocality "新しい市町村"
# rocks set var Info CertificateState "新しい都道府県"
# rocks set var Info CertificateCountry JP
# rocks set var Info ClusterContact "新しいメールアドレス"
# rocks set var Info ClusterURL "新しいURL"
# rocks set var Info ClusterLatlong "新しい緯度経度"
Note ClusterName とFQDN Hostnameの他は unspecified などしても構いません。

ganglia の修正

ClusterNameとOrganization, URL, Lcatitude/Longituideを変更した場合は /etc/gmond.conf を修正します。

(実のところ変更しなくても構いません)

# /etc/gmond.conf の /* Cluster Specific attributes */ の部分

cluster {
  name = "Our Cluster"
  owner = "SDSC"
  latlong = "N32.87 W117.22"
  url = "http://www.place.org/"
}

最後に rebuild-caコマンドを実行して終了です。

# rebuild-ca

rocks-config-cert コマンドを使った場合は、 内部で呼び出していますので 個別に実行する必要はありません。

パブリックネットワークの変更 (scsbase)

フロントエンドノードインストール後に、 パブリックネットワークの情報を修正する場合は、 scsbaseロールがインストールされていれば、 rocks-config-networks を実行するだけで変更できます。

インタフェース情報設定画面

rocks-config-network実行画面

サーバ情報設定画面

rocks-config-network実行画面

ネットワーク再起動の確認

rocks-config-network実行画面

パブリックネットワークの変更 (Rocks)

NPAIC Rockの本来の方法では rocksコマンドで変更します。

パブリック側のインタフェースのネットワーク情報を 次のように変更する例について説明してゆきます。

パブリック側ネットワーク情報
  • IPAddress 10.30.24.254

  • Netmask 255.255.248.0

  • NetmaskCIDR 21

  • Subnet 10.30.24.0

  • Gateway 10.30.24.254

  • Barodcast 10.30.31.255

  • DNS Server 10.101.108.9

  • NTP Server 10.101.26.18

パブリック側のサブネットを修正

現在のサブネットの内容を確認には、 rocks list network とコマンド実行します。

[root@cluster ~]# rocks list network
NETWORK     SUBNET       NETMASK
private:    192.168.10.0 255.255.255.0
public:     172.16.10.0  255.255.255.0
gigaeth:    192.168.11.0 255.255.255.0
infiniband: 192.168.12.0 255.255.255.0

次のようにコマンドを実行します。

[root@cluster ~]# rocks set network subnet public 10.30.24.0
[root@cluster ~]# rocks set network netmask public 255.255.248.0

フロントエンドノードのパブリック側のインタフェースを修正

指定したノードのインタフェースの情報を確認するには、 次のようにコマンドを実行します。

# rocks list host interface ホスト名のリスト

フロントエンドノード cluster での実行例:

[root@cluster ~]# rocks list host interface cluster
SUBNET  IFACE MAC               IP           NETMASK       GATEWAY      MODULE NAME
private eth0  00:1b:78:9d:ef:b6 192.168.10.1 255.255.255.0 ------------ bnx2   cluster
public  eth1  00:1b:78:9d:ef:b4 17.16.10.1  255.255.255.0 172.16.10.1 bnx2   cluster.hpc.org

フロントエンドノード cluster の パブリック側(eth1) インタフェース情報を修正する例:

[root@cluster ~]# rocks set host interface iface cluster 00:1b:78:9d:ef:b4 10.30.26.19
[root@cluster ~]# rocks set host interface gateway cluster eht1 10.30.24.254

フロントエンドノードのパブリック側のネットワーク情報を修正

現在のパブリック側のネットワーク情報を修正

[root@cluster ~]# rocks list var | grep Public
Kickstart PublicAddress           172.16.10.1
Kickstart PublicBroadcast         172.16,10.255
Kickstart PublicDNSDomain         hpc.org
Kickstart PublicDNSServers        172.16.10.1
Kickstart PublicGateway           172.16.10.1
Kickstart PublicHostname          cluster.hpc.org
Kickstart PublicKickstartBasedir  install
Kickstart PublicKickstartHost     central.rocksclusters.org
Kickstart PublicNetmask           255.255.255.0
Kickstart PublicNetmaskCIDR       24
Kickstart PublicNetwork           172.16.10.0
Kickstart PublicNTPHost           172.16.10.1
Kickstart PublicRootPassword      acgClbQjEKfV6

パブリック側のネットワーク情報を修正

[root@cluster ~]# rocks set var kickstart PublicGateway 10.30.24.254
[root@cluster ~]# rocks set var kickstart PublicAddress 10.30.26.19
[root@cluster ~]# rocks set var kickstart PublicBroadcast 10.30.31.255
[root@cluster ~]# rocks set var kickstart PublicDNSServers 10.101.108.9
[root@cluster ~]# rocks set var kickstart PublicGateway 10.30.24.254
[root@cluster ~]# rocks set var kickstart PublicNetmask 255.255.248.0
[root@cluster ~]# rocks set var kickstart PublicNetmaskCIDR 21
[root@cluster ~]# rocks set var kickstart PublicNetwork 10.30.24.0
[root@cluster ~]# rocks set var kickstart PublicNTPHost 10.30.26.18

データベース修正内容をシステムに反映させる

[root@cluster ~]# dbreport ifcfg eth1 `hostname -s ` > /etc/sysconfig/network-scripts/ifcfg-eth1
[root@cluster ~]# dbreport resolv > /etc/resolv.conf
[root@cluster ~]# insert-ether --update
[root@cluster ~]# /etc/init.d/network restart

まとめ

この手順に従うことで、NPACI Rocks クラスタシステムの構築後に、 ホスト名やクラスタ情報を変更することが簡単にできることになります。

このため、デフォルト設定を用意したインストールの標準化が可能になります。