またまたありがたいことに新しいAWSサービスを仕事で触らせてもらえる機会があった。
その名も「Transfer Family」
何ができるサービスなのか一言で言うと「SFTPサーバーを構築できる」だ。
企業が既存のファイル転送ワークフローをそのままに、Amazon S3 など をストレージとして使えるようにできる。
今回自分が構築する環境としては以下の★の部分である。
・お客さんからファイル連携
↓
・Transfer FamilyにSFTPでファイル受信(★)
↓
・お客さんごとのS3バケットにファイル配置(Transfer Familyに設定するIAM毎に設定可能)
↓
・S3->EventBridgeで検知し、Lambdaを起動。ファイルを加工。
↓
・既存のファイル取り込みシステムに流す
このとき、
Transfer Familyにお客さん毎にユーザー(アカウント)を追加できるのだが、
アカウント毎にどのS3バケット(もしくはバケット配下の任意ディレクトリ)にファイルを配置先とするかが設定できる。
つまり、こちらでLambdaなどでファイルを配置先に振り分けるという機関を構築しなくても勝手に置いてくれるのだ。
めちゃくちゃ便利だ。。
ただ注意しないといけない点もある。
それは、意外とランニングコストがかかること。
なぜならTransfer Familyのインスタンスは、存在し続ける限り課金の対象となる。
=EC2などと違い、インスタンスを停止しててもかかる。
プロトコルを 1 つ(例えば SFTP)有効にしたエンドポイント:0.30 USD/時間
データ転送(アップロード・ダウンロード共):0.04 USD/GB
※為替レートを仮に 1USD = 約 150 円 とすると、
0.30 USD ≒ 45 円/時間、0.04 USD ≒ 6 円/GB(+AWS の請求時の為替手数料や丸めなどで多少前後あり)という目安になりそう。
チリツモではあるが、
不要な場合は削除しないとコストがかさむことに注意しないといけない。