こんにちは!大和総研の河野です!
本記事は、「2025 Japan AWS Jr. Champions夏のQiitaリレー」44日目の記事となります!
今までの投稿はこちらのリンクにまとまっているのでぜひ他の記事も読んでいただければと思います。
今回はStorageGatewayをいろんなシステムで共通で利用して、利用料を削減しよう!という記事を書いていこうと思います。
業務でStorageGateway(Amazon S3 File Gateway)の利用を検討した際に1つのStorageGatewayに対してファイル共有を1つしか作成せずStorageGatewayを乱立させるのは利用料がもったいないのでは…?セキュリティ面を考慮しながら1つのStorageGatewayに複数ファイル共有を作成できないの…?と考え、調査したことがあったのでせっかくならその内容を記事にしようと思い今回このテーマで執筆することにしました。
共通化のポイント
StorageGatewayを共通で使う上でのポイントは以下の通りです。
①1つのStorageGatewayに対して、作成できるファイル共有の数は最大10個
②1ファイル共有に対して1バケットの紐づけ
③メンテナンスウィンドウ等のStorageGateway単位での設定は全ファイル共有に適用される
④StorageGatewayはNFS共有とSMB共有が利用でき1つのStorageGateway内で共存可能
⑤接続元については、NFS共有の場合はIP制御、SMB共有の場合はADユーザで制御する
上記のポイントについて、①~④は記載の通りですが⑤については詳細に説明します。
NFS共有の場合はIP制御、SMB共有の場合はADユーザ制御
NFS共有の場合はファイル共有作成時の許可されたクライアントに接続元のサーバのIPを記載することで、接続元を制御することが可能です。
そして接続元から以下のコマンドを打鍵することでS3のマウントができます。
mount -t nfs -o nolock,hard [StorageGateway用EC2のIPアドレス]:/[ファイル共有名] [マウントポイント名]
次にSMB共有の場合は、ActiveDirectoryを利用した制御が必要となります。
AWS DirectoryServiceを利用しStorageGateway用EC2を作成したディレクトリにドメイン参加させます。(接続元のサーバはドメイン参加する必要はありません。)
そしてディレクトリにユーザを作成し、ファイル共有作成時のユーザアクセスにて[許可されたユーザ]または[許可されたグループ]に接続を許可したいユーザ名またはグループ名を記載します。そうすることで許可に記載されたユーザまたはグループのみがファイル共有可能となります。
逆に[拒否されたユーザ]または[拒否されたグループ]に記載した場合は、拒否に記載されたもの以外の全ADユーザがファイル共有可能となります。(許可も拒否も何も記載しなかった場合は全ADユーザがファイル共有可能となります。)
ユーザ認証については、Active Directory以外にもゲスト認証がありますがゲスト認証は全ファイル共有で1つのPWしか設定できないためセキュリティ面に問題があるため共通利用する際は利用しない方が良いと考えます。
そしてS3マウンド時は以下のコマンドを打鍵します。
net use [ドライブ名]: \\[StorageGateway用EC2のIPアドレス]\[ファイル共有]
この後ユーザ名とPWを求められるためADユーザとファイル共有作成時に設定したPWを入力
まとめ
StorageGatewayはクロスアカウントでのファイル共有も可能であったりと様々なシステムで共通で利用することが容易なサービスとなっています!
ぜひ利用料削減案の一つとしてStorageGatewayの共通化を検討してみてください!


