今回行う事
①ではオンプレ同士でslurm federation機能を有効にしました。
②ではUIを使ってaws parallel clusterを構築しました。
今回の③ではawsとオンプレ環境をVPNで接続していきます。
ただし現状問題があります。
課題
本来はfortigateなどを使ってSite to SiteのVPNを作成する必要があります。
できればそこまで大かがりにするとめんどいので、client vpnをRockyLinux/CentOSにインストールして検証をしようと考えていましたが、vpn clientのアプリがlinux版だとubuntuしかなく、さらに20.04と古いバージョンにしか対応してなさそう。(インストール可能かもしれませんが試してません)
一応clientvpnで接続出来るかmacosで確かめたところあっさり1時間ほどで作成出来ました。
このワークショップサイトは非常にお勧めです
https://catalog.us-east-1.prod.workshops.aws/workshops/be2b90c2-06a1-4ae6-84b3-c705049d2b6f/ja-JP
ただし私の環境下では、slurmマスターはrhel8系のためawsのクライアントソフトは使えず、別に用意する必要があります。
awsのドキュメントでもOpenVPNについて記載されていたので、今回はこれを採用することにしました。
しかしawsドキュメントではOpenVPNもubuntuでのやり方しか記載されていなかった。
https://docs.aws.amazon.com/ja_jp/vpn/latest/clientvpn-user/linux.html
クライアントのインストール自体は大して難しくないので、他のサイトを見ながら設定することにします。
ワークショップを参考にカスタマイズ
- セグメント:subnet255(10.255.255.0)ひとつしか作成しなかった事
- ec2を作成するセグメントはsubnet255にしたこと
- クライアントツールをopenvpnにしたこと
openvpn
書くほどでもないですが一応
sudo dnf install epel-release -y
sudo dnf install openvpn -y
#/etc/openvpn/clientにawsからダウンロードしたdownloaded-client-config.ovpnを保存
#名前が分かり難いので、aws-slurmvpn.ovpnに変更
#コマンドラインから接続する場合
sudo openvpn --config /etc/openvpn/client/aws-slurmvpn.ovpn
#自動起動にする場合
sudo systemctl enable --now openvpn-client@aws-slurmvpn
これでrocky linux/centosからssh接続出来ました。
これでようやく準備が終わったので次回はオンプレ ー aws parallel cluster間で以下の検証を行う予定です。
検証項目
1)federationが正常に動作するか
2)オンプレからparallel clusterにジョブを投入出来るか?
3) オンプレからジョブをキャンセル出来るか?
4) 障害検証、VPNがダウンした場合
5)障害検証、EC2(parallel cluster headnode)がダウンした場合