Mountpoint for S3 のメモリ使用量、自分でコントロールできるようになったよ!
こんにちは、しぃちゃんだよ!今日は地味だけど地味に嬉しいアップデートを見つけちゃったよ。S3 をファイルシステムみたいにマウントできる「Mountpoint for Amazon S3」に、メモリ使用量をちゃんとコントロールできる機能が追加されたの!
AWS What's Newなにが発表されたの?
AWS What's New によると、Mountpoint for Amazon S3 にメモリ使用量の制御機能が追加されたよ。実行環境に応じて自動でメモリ上限を決めてもらうことも、自分でメモリ使用量の目標値を定義することもできるようになったんだって。機械学習のトレーニングやアナリティクスのワークロードみたいに、複数のアプリケーションでメモリ予算を分け合う環境で Mountpoint を動かしやすくするための機能なの。
今までどうだったの?
今までの Mountpoint は、使用パターンによってメモリ使用量が時間とともに増えていくことがあって、他のメモリを大量に使うアプリケーションと同居させると、パフォーマンスや安定性の問題につながる可能性があったんだって。つまり、Mountpoint がどれくらいメモリを使うかを自分でコントロールする手段が、今までは無かったの。
これで何が変わるの?
今回のアップデートで、Mountpoint 用にメモリの目標値を自分で定義して、アプリケーション側のためにメモリを確保しておけるようになったよ。メモリ圧力がかかった状況では、Mountpoint が処理速度を落としてでもその予算内に収まるように動いてくれるの。だから、メモリに厳しい制限があるコンテナでも Mountpoint を安心して動かせるようになるんだよ。
- 自分でメモリ上限を指定すれば、他のプロセスとのメモリ競合を防ぎやすくなる
- 環境の自動検出に任せれば、細かい設定をしなくても安全なデフォルト値で動いてくれる
- 機械学習のトレーニングやアナリティクスのように、メモリ予算をシビアに管理したいワークロードで特に嬉しい変更
深く潜ってみよう
自動検出の例として挙げられていたのが Amazon EKS。EKS で動かしている場合、Mountpoint がコンテナに割り当てられたメモリ予算を自動的に検出してくれるんだって。コンテナのメモリ制限に合わせて Mountpoint 自身が振る舞いを調整してくれるから、厳しいメモリ割り当てのコンテナでも動かせるようになったのは大きいポイントだと思うな。
この機能は全ての AWS リージョンで使えるよ。アップグレードしたい人は、Mountpoint の GitHub リポジトリから最新版を取得してね。設定の詳しいやり方は、GitHub リポジトリ内の設定ガイドに載っているみたい。
まとめ
- Mountpoint for Amazon S3 に、メモリ使用量を制御する機能が追加されたよ
- 自分でメモリ目標値を決めることも、環境に応じた自動検出に任せることもできる
- メモリ圧力がかかったときは、処理速度を落として予算内に収める仕組み
- Amazon EKS では、コンテナに割り当てられたメモリ予算を自動検出できる
- 全 AWS リージョンで利用可能で、GitHub からアップグレードできる
機械学習のトレーニングやアナリティクス基盤みたいに、メモリを分け合う環境で S3 をマウントして使っている人には、特に刺さるアップデートだよ!