計算機クラスターとは,コンピュータをたくさん接続し,たくさんのデータ処理を行うものです.大型計算機(スパコン)とか, AmazonWebService(AWS)とかMicroSoft Azureクラウドとかいうのも,機器構成は似たようなものです.
使い方も,まあどれも似たり寄ったりです.ここでは,当研究室所有の計算機クラスターを説明します.
- 計算機クラスターは,多くの場合,LinuxというOSで稼働しています.
- AWS, Azureでは,多数のパソコン(の真似をするソフト)が用意されています.
- 流体力学分野では, CentOS-Streamを使っています.
Linuxにもいろいろあって,RedHat社という大会社があるのだが
- 索敵班 FedoraLinux: 動くかどうかさえ怪しい,最新機能のテストOS
- 親RedHat勢力 CentOS-Stream: 本体RedHatが進んで安全なのか確かめる,人柱
- 有料 RedHat Linux: 世間の商用OS
- RedHat互換 CentOS Linux: RedHatのカスを使い「バグまで正確に再現する」無料OS. RedHatがシェアを確保するためのエサ
という感じに分かれている.我々が使っているのは, 2番ね. CentOSは2022年に廃止になった.
- 計算機クラスターを構成する多数のPCには,特別な役割を持つものがあります.
- ユーザーのデータを保存する「ファイルサーバー」
- 商品を販売したり動画を放映したりする「Webサーバー」
- ユーザーのコメントや投稿を保存する「SQLサーバー」
- 並列計算スレッドが結果を交換したりユーザーと対話することも可能
- ユーザーのパスワードを保存する「ドメイン管理システム」
- 解析を(並列に)実施する「計算ノード」
- 計算機資源に割り振る「リソースマネージャ(ジョブ管理システム)」
- ソフトのライセンスを管理する「ライセンスサーバー」
- ユーザーが自分の解析作業を行う「アプリケーションサーバー」
- などなど
流体力学分野のクラスターは100台程度の極めて小さいものですので,ぜーんぶまとめて
- 計算ノード
- それ以外ー sun0, sun1 とかいう名称の「サーバー」
- 細かく言えば
sun0 ファイルサーバー・リソースマネージャ・ドメインコントローラー・アプリケーッション
sun1 ファイルサーバー・アプリケーッション
- 細かく言えば
の2つになっています.サーバーは全てファイルサーバー兼用ですので,そこで作業を行うことになります.
あなたのパソコン1台の場合,あなたの目の前のノートPCの,あるフォルダーに,あなたの文書や写真が保存されているはずです.これは,クラスターでは全く異なります.
あなたのファイルは,いずれかの「ファイルサーバー」に保存され,アプリケーションを使おうと思って,たくさんあるサーバーの何れかに「ログイン」すると,どのサーバーであっても,あなたのファイルが同じように利用できます.(あなたのフォルダーは,基本的には,どこか1箇所にまとめられている,ということです)
どのサーバーでも同じように作業できる・・・とはいえ,自分のファイルが置いてあるファイルサーバーにログインして利用した方が,反応が早いので,仕事が楽にできます.
というわけで,まずは「ログイン」の方法を学び,次に,プログラムの作成方法,最後に,ジョブ管理システムを用いて計算機を利用する,ことを学びましょう.