https://github.com/tomosatop/mpi-cluster-raspi
Ansible で lammps 用 ラズパイ mpi クラスタ環境を構築
https://github.com/tomosatop/mpi-cluster-raspi
ansible apptainer lammps openmpi raspberry-pi slurm
Last synced: about 1 month ago
JSON representation
Ansible で lammps 用 ラズパイ mpi クラスタ環境を構築
- Host: GitHub
- URL: https://github.com/tomosatop/mpi-cluster-raspi
- Owner: tomosatoP
- License: mit
- Created: 2023-08-12T07:47:32.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-01-10T08:09:14.000Z (over 1 year ago)
- Last Synced: 2025-03-28T23:16:54.539Z (6 months ago)
- Topics: ansible, apptainer, lammps, openmpi, raspberry-pi, slurm
- Language: HTML
- Homepage:
- Size: 249 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ラズパイクラスタで `LAMMPS` を稼働
ラズパイのマルチノード並列処理の環境構築と `LAMMPS` の導入
* Ansible: パッケージマネージャーを使った導入
* クラスタ構築
* OpenMPI(with PMIx): パッケージマネージャーを使った導入
* Slurm: パッケージマネージャーを使った導入
* Apptainer: インストーラーを使った導入
* LAMMPS: SIF (Apptainer コンテナ) で構築Apptainer の制限:コンテナ内外で、`OpenMPI` が同じであること
## 環境
### ハードウェア
- Raspberry Pi 4B 8GB x 3
- microSD Card 64GB x 3
- [PoE HAT](https://www.waveshare.com/poe-hat-e.htm) x 3
- [PoE HUB](https://www.iodata.jp/product/lan/hub/etg-poe04/index.htm)
- [イーサネットケーブル](https://www.edion.com/detail.html?p_cd=00043376414) x 3### ソフトウェア (OS)
- Raspberry Pi OS Lite (64-bit) [Debian Bookworm]
### 各ノードの役割
|項目|1台目|2台目|3台目|
|---|---|---|---|
|ネットワーク|DNS サーバー|-|-|
|Ansible|制御ノード
管理対象ノード|
管理対象ノード|
同左|
|Slurm workload manager|クライアントノード
制御ノード
計算ノード|
計算ノード|
同左|### 各ノードの OS インストールの設定値
|項目|適用|小項目|1台目|2台目|3台目|
|---|---|---|---|---|---|
|ホスト名|yes||mpi0|mpi1|mpi2|
|ユーザー名とパスワードを設定する|yes|username
password|mpi
****|同左|同左|
|WiFiを設定する|no|||||
|ローケール設定をする|yes|timezone
keyboard layout|Asia/Tokyo
JP|同左|同左|
|||||||
|SSHを有効化する|yes||パスワード認証を使う|同左|同左|### 各ノードの設定値
|項目||1台目|2台目|3台目|
|---|---|---|---|---|
|ユーザー名@ホスト名||mpi@mpi0|mpi@mpi1|mpi@mpi2|
|ip address|192.168.68.xxx/24|150|151|152|## マルチノード並列処理のクラスタ構築
[ansible を使う場合](ansible/README.md)
[ansible を使わない場合](without-ansible/README.md)## LAMMPS
`mpi0`
### SIF 作成
~~~sh
cp -r hpc/lammps /mpi/lammps
cd /mpi/lammpsapptainer build lammps.sif lammps.def
~~~確認
~~~sh
cd /mpi/lammpsapptainer run lammps.sif
~~~### 実行
~~~sh
cd /mpi/lammpssbatch lammps.sh
~~~
> 事前に、各計算ノードの状態が `idle` であることを確認
---