140 likes | 342 Vues
PC クラスタの作り方. 杉山耕一朗(北大理) 2008/10/03 epnetfan. PC クラスタとは. 複数台の PC をネットワーク接続することによって構築されるメモリ分散型の並列計算機. 国立天文台 CfCA 汎用 PC システム. 中身: Intel Core2Duo Q6600. なぜ , PC クラスタ ? . スパコンは性能当たりの価格が高い 特注品よりも汎用品で. 「スーパーコンピューティングの将来」 (牧野淳一郎)より抜粋.
E N D
PC クラスタの作り方 杉山耕一朗(北大理) 2008/10/03 epnetfan
PCクラスタとは • 複数台の PC をネットワーク接続することによって構築されるメモリ分散型の並列計算機
なぜ, PCクラスタ? • スパコンは性能当たりの価格が高い • 特注品よりも汎用品で 「スーパーコンピューティングの将来」(牧野淳一郎)より抜粋 http://jun.artcompsci.org/articles/future_sc/note006.html#rdocsect5
構成 • ログインノード • ユーザがログインして,ジョブを投入 • 台数は, 1ないし少数 • 計算ノード • 投入されたジョブを実際に計算する • ディスクレス • 台数はお好きなだけ
動作の流れ • ブート • ネットワークブート (PXELinux) <= 今日の話題 • 汎用 PC システム • FD, CD, USB からブート (syslinux) • 次期 GRAPE (GRAPE-DR) • ルートファイルシステムを NFS して起動.
(1-1)ネットワークブート • ログインノード上のサーバ • DHCPD • pxelinux • TFTPD (簡易ファイル転送プロトコル) • 計算ノードの動作 • BIOS 設定で PXE boot • DHCP でアドレスをもらう • TFTP で pxelinux を転送,ブート.
DHCPD & TFTPD /etc/xinetd.d/tftp service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -v -s /tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 } /etc/dhcpd.conf subnet 192.168.5.0 netmask 255.255.255.0 { range 192.168.5.1 192.168.5.255; next-server 192.168.5.100; option routers 192.168.5.100; option subnet-mask 255.255.255.0; option broadcast-address 192.168.5.255; # option nis-domain "cfca-nis"; option domain-name "cfca.nao.ac.jp"; filename "pxeboot/pxelinux.0"; default-lease-time 21600; max-lease-time 43200; # we want the nameserver to appear at a fixed address host m001 { hardware ethernet 00:1C:C0:09:9A:42; fixed-address 192.168.5.1; option host-name "m001"; option root-path "/tftpboot/m001"; } }
PXELinux * pxelinux をコピー * DHCP で指定したディレクトリに置く # mkdir /tftpboot/pxeboot/ # cp /usr/lib/syslinux/pxelinux.0 /tftpboot/pxeboot/ * 設定ファイルの置き場を pxelinux.0 と同じディレクトリに作成 # mkdir /tftpboot/pxeboot/pxelinux.cfg * 設定ファイルを作る. "01-mac アドレス" というファイルにする. # vi /tftpboot/pxeboot/pxelinux.cfg/01-00-1c-c0-09-9a-42 default linux label linux kernel vmlinuz append root=/dev/nfs rw nfsroot=192.168.5.100:/tftpboot/m001,rw ip=dhcp mem=8704M pci=nommconf ipappend 0
(2)カーネル,ルートの NFS • 設定 • PXElinux で, 以下の設定を行うだけappend root=/dev/nfs rw nfsroot=192.168.5.100:/tftpboot/m001,rw • 準備 • カーネルの再構築(計算ノード用) • NFS root, NIC のサポート • 計算ノードのルートファイルシステムの作成 • NFS サーバの設定(ログインノード) • NFS クライアントの設定(計算ノード)
ルートファイルシステム • ログインノードのとあるディレクトリ以下に置く • Ex: /home/clients/01/, /home/clients/02/, … • ログインノードのファイルシステムをコピー tar xvf /home/clients/root.tar / mkdir /home/clients/01 cd /home/clients/01 tar xvf ../root.tar • 上記ファイルシステムを nfs で export する.
補足: ジョブ管理 • PBS (商用)が良く使われているらしい • OpenPBS は開発停止. 後継は Torque
運用にあたって • 消費電力 • 台数が増えれば消費電力が上がる • メモリ • 初期不良多し.最初にmemtest • BIOS • 初期ロットはバギー.アップデートすべし