都合で作成した CentOS8マシンを利用して, SLURM のインストールを学ぶ.
- IPADDR 10.249.229.208 ib2013c
- いやもとい 10.249.229.225 ib2007b
現状, GCCで色々なものが用意してある. まずは, その続きでジョブ管理システムを試す.
- Intel Compiler がなくても死なない世界を作る
Adaptive ComputingがTorque+Mauiを突然有償化してしまったので,ライセンス違反・ソフトウェアの違法使用に問われることを回避するためである.ライセンス違反は雰囲気やばいので,早急に対処する.そもそもTorque+MAUIはすでに時代遅れで動作不良を起こしているからな.
あとで見つけたこの文書が一番良い気がする.いやもしかして実際こっちか?
AWSで,ジョブをサブミットすると,コンプータをその場でレンタルしてSLURMでクラスタを構成して解析を行い(AWSだからノード数は天文学的だ),ジョブの終了とともにクラウドを解散してしまう.結局安上がりのスーパー能力の私専用スパコンを作ろうとしている奴がいる.スパコン建造は国家ではなく自分のノートPCで行うってわけだ.発想がおもしろすぎる.動くかどうかはともかく
AWSで1TFLOPS,1時間で1ドルくらいらしいな.計算センターにSQLサーバーあるのか聞いたら剣もほろろだったしな.AWSなら大丈夫だ・・・魅力的かもしれない
インストール
SLARMをインストールするには, MUNGEが必要である.はい?なにこれ. 認証系を肩代わりするみたいなやつだな.
- NISとDLAPで全然違うとかじゃないといいんだけど
先にLDAPをテストしてから,戻ってくる.どっちにせよ,NISが動作停止して大変困るのは解決が必要だし
戻ってきた.LDAPではなく, FreeIPAになっちまったが,まあ,こまけえことはどうでも良いだろう.というわけで,SLARUMのインストールを継続する.
スーパークイックガイドに従う.
- UIDとGIDついでに時計合わせ済んだか?
- FreeIPAで完璧ですわ
- MUNGEいれろよボケ
- はいわかりました・・・こりゃ一体なんの役に立ちますのんや?
- SLURMビルドしなはれ
びるどー云われたらビルドですがな,当たり前ですやろ?
git clone https://sugimoto605@bitbucket.org/rgdkyotou/thirdparty.git
make slurm-server
make slurm-client
にゃお,rpmbuildは依存関係が解けなくてできない.
で,ビルドして何ができた?
# ls -l /usr/local/lib/
-rw-r--r-- 1 root root 59974944 12月 9 16:57 libslurm.a
-rwxr-xr-x 1 root root 967 12月 9 16:57 libslurm.la
lrwxrwxrwx 1 root root 18 12月 9 16:57 libslurm.so -> libslurm.so.34.0.0
lrwxrwxrwx 1 root root 18 12月 9 16:57 libslurm.so.34 -> libslurm.so.34.0.0
-rwxr-xr-x 1 root root 9771592 12月 9 16:57 libslurm.so.34.0.0
drwxr-xr-x 3 root root 12288 12月 9 16:57 slurm
# ls -l /usr/local/bin/
-rwxr-xr-x 1 root root 439408 12月 9 16:57 sacct
-rwxr-xr-x 1 root root 1455720 12月 9 16:57 sacctmgr
-rwxr-xr-x 1 root root 370720 12月 9 16:57 salloc
-rwxr-xr-x 1 root root 161952 12月 9 16:57 sattach
-rwxr-xr-x 1 root root 404456 12月 9 16:57 sbatch
-rwxr-xr-x 1 root root 280232 12月 9 16:57 sbcast
-rwxr-xr-x 1 root root 307536 12月 9 16:57 scancel
-rwxr-xr-x 1 root root 990368 12月 9 16:57 scontrol
-rwxr-xr-x 1 root root 219616 12月 9 16:57 sdiag
-rwxr-xr-x 1 root root 520616 12月 9 16:57 sinfo
-rwxr-xr-x 1 root root 353112 12月 9 16:57 sprio
-rwxr-xr-x 1 root root 666000 12月 9 16:57 squeue
-rwxr-xr-x 1 root root 542488 12月 9 16:57 sreport
-rwxr-xr-x 1 root root 701816 12月 9 16:57 srun
-rwxr-xr-x 1 root root 279688 12月 9 16:57 sshare
-rwxr-xr-x 1 root root 333824 12月 9 16:57 sstat
-rwxr-xr-x 1 root root 245232 12月 9 16:57 strigger
ふうん?
マニュアルが見たい
最初の設定ファイルを作成するため, /etc/httpd/conf/httpd.conf を編集:
.... 122 DocumentRoot "/var/www/html" 123 <Directory "/usr/local/share/doc/"> 124 AllowOverride None 125 Require all granted 126 </Directory> .... 227 <IfModule alias_module> 228 Alias /slurm /usr/local/share/doc/slurm-19.05.4/html ....
ほんで,
systemctl restart httpd
これで,http://おまいのサーバー/slurm/overview.html にマニュアルが出現する.
設定ファイル
最初の設定ファイルは, ここで作成できる.
よくわかんねえから,この絵見ながらテキトーに作ってみるよし.
- とりまユーザー作れよ
- はいわかりまいた.slurmグループのslurmさんを作成
- slurmctld 親分
- slurmd 子分 各ノードで起動するのね.
- slurmdbd DataBaseくっついているから課金袋だろうなこれ.いらねえっす.
といったところか.公開鍵認証PKI使うと仮定すると,管理者権限はいらねえ,となるはずだ.
- お前は寝てろ,俺が先だ機能(checkpoint)は何かのプラグインがいるみたいだけど
- これ絶対いるやつ
- MPI/OMPの面倒見てくれるのもプラグインみたいだが.
- GPUの面倒も見てくれると,まあええのか・・・な?いらねえかな
- 巨大読み書きをNFS通過でやるボケが後をたたないので,そもそも不可能ということにしてしまいたいな.
- 腕がある奴は使える,ということにしておけば良い.
- デフォルトでNFSが稼働していると,自分の低能を理由に他人の邪魔をする奴が湧くからな