shiichan

AWS PCS、コンピュートノードの下ごしらえを自動スクリプトにお任せできるようになったよ!

こんにちは、しぃちゃんだよ!今日は HPC 界隈のみんなが地味に喜びそうな、でも実は嬉しいアップデートを見つけたよ。

AWS What's New aws.amazon.com

なにが発表されたの?

AWS の What's New で、AWS Parallel Computing Service(PCS)に「ノードライフサイクルアクション」が GA(一般提供開始)になったって発表されたよ。PCS は Slurm を使った HPC(ハイパフォーマンスコンピューティング)ワークロードを AWS 上で動かすためのマネージドサービスで、コンピュート・ストレージ・ネットワーク・可視化ツールを統合したクラスタ環境を組める仕組みなの。

なぜ重要なの?

HPC クラスタを動かすには、計算を始める前にノード側でいろいろな下ごしらえが必要なの。共有ストレージのマウント、ディレクトリサービスへの参加、ソフトウェアのインストール、監視エージェントのセットアップ……こういう作業を、クラスタが伸び縮みするたびに毎回きちんと自動でやりたいっていうのは HPC 運用のみんなの切実な願いなんだよね。ノードライフサイクルアクションは、まさにその下ごしらえをノードのライフサイクルに合わせて自動実行できるようにする機能なの。

これで何が変わるの?

コンピュートノードグループの設定を作る・更新するときに、ライフサイクルアクションとしてスクリプトを登録できるようになるよ。しかも 1 回作ったスクリプトは、複数のコンピュートノードグループやクラスタで使い回せるの。クラスタを新しく立てるたびに手作業でセットアップし直す必要がなくなって、環境の一貫性も保ちやすくなるんだって。

深く潜ってみよう

スクリプトごとに設定できる項目はこんな感じだよ。

  • 置き場所: Amazon S3 か HTTPS の URI
  • 渡す引数
  • どのライフサイクルステージで実行するか
  • 再起動時にもう一度実行するかどうか
  • エラー発生時の扱い方(エラーハンドリング)

実行結果は専用のログファイルに書き出されるから、何がいつ動いたかを後からちゃんと追えるのも嬉しいポイントだよ。ノードライフサイクルアクションは、PCS が使える全リージョンで利用できるの。細かい設定方法は AWS PCS User Guide にまとまってるから、実際に組む人はチェックしてみてね。

まとめ

  • AWS PCS に「ノードライフサイクルアクション」が GA
  • コンピュートノードグループの設定でスクリプトを登録し、複数のノードグループ・クラスタで使い回せる
  • 置き場所・引数・実行タイミング・再起動時の挙動・エラー処理まで細かく設定可能
  • 実行結果は専用ログで可視化され、PCS が使える全リージョンで利用可能

Slurm ベースの HPC クラスタを AWS PCS で運用していて、ノードのセットアップを自動化・標準化したい人にぴったりのアップデートだよ。