Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS Lambda with AWS DataSync で実現する サーバレスファイル転送システム

4hei4hei
February 09, 2024
130

AWS Lambda with AWS DataSync で実現する サーバレスファイル転送システム

NRI Netcom tech and design study #7

https://www.youtube.com/watch?v=RRQlSrG-GPc

4hei4hei

February 09, 2024
Tweet

Transcript

  1. はじめに u 自己紹介 u 西 洋平 (にし ようへい) u 2020

    年新卒入社 (4 年目) u AWS 上に構築された Web システムの運用/改善や PoC に従事 u Award u Japan AWS Jr. Champions (2023) u APN ALL AWS Certifications Engineers (2023) #nncstudy 1
  2. #nncstudy 3 今日のお話 オンプレミスのファイル転送システムを AWS DataSync ベースに改修 & AWS 上へ移行した話

    (入社 1~2 年目の新人の頃にやってた話) 元々どういう構成だったの? 改修してどうなったの? AWS DataSync って? よかった / 注意するポイントは?
  3. #nncstudy 6 AWS DataSync 導入前の構成 Application 定期的に Amazon SQS をポーリング

    対象ファイルを Amazon S3 から DL して転送 対象のファイル ID を通知 ファイルは AmazonS3 に配置
  4. #nncstudy 7 AWS DataSync 導入前の構成 Application サーバに入らないと何もわからない e.g. • 今どの

    ID を転送してる? 進捗は? • エラーになったけどどうなってる? エラー時の対象 ID 検索が難しい…… そもそも管理が……
  5. #nncstudy 8 AWS DataSync 導入前の構成 Application サーバに入らないと何もわからない e.g. • 今どの

    ID を転送してる? 進捗は? • エラーになったけどどうなってる? エラー時の対象 ID 検索が難しい…… そもそも管理が…… AWS 上へサーバレス化してリプレイスしよう!!!
  6. #nncstudy 9 AWS DataSync 導入前の構成 Application サーバに入らないと何もわからない e.g. • 今どの

    ID を転送してる? 進捗は? • エラーになったけどどうなってる? エラー時の対象 ID 検索が難しい…… そもそも管理が…… AWS 上へサーバレス化してリプレイスしよう!!! → AWS DataSync の出番
  7. #nncstudy 12 AWS DataSync 転送処理を担う実体 (Amazon EC2 やオンプレミスの VM にインストール)

    Task には Task Execution の結果が 履歴として残っていく 転送元 / 先の情報
  8. #nncstudy 13 AWS DataSync 転送処理を担う実体 (Amazon EC2 やオンプレミスの VM にインストール)

    Task には Task Execution の結果が 履歴として残っていく 転送元 / 先の情報 AWS DataSync を使ってサーバレス化すると……
  9. #nncstudy 16 サーバレス化後の構成 Amazon DynamoDB で Task の情報を管理 (転送用 Task

    の割り当てに活用) 予め AWS DataSync タスクを複数作成してプール化 Amazon DynamoDB の情報を定期更新 Amazon SQS 駆動で Task Execution を起動
  10. ポイント 開発関連 n AWS SAM を使って開発 n AWS Lambda 作成/開発の手軽さ

    n デプロイも設定ファイルでシンプルに 移行関連 n AWS DataSync 転送先の書き込み権限 n .aws-datasync/ の write 権限を要許可 運用関連 n AWS DataSync による恩恵 n Agent / Location 情報を流用しやすい n フォルダ単位で対象の限定も可能 n ファイルサイズや転送時間も表示 n 完全性の検証まで担ってくれる n 注意点 n Agent 単位の状態はウォッチしづらい #nncstudy 20
  11. #nncstudy 24 ふりかえり サーバレス化してよかったこと ほぼ AWS DataSync 任せに!!! 反省点 Agent

    の可視性も考えたかった 次やるなら……? AWS StepFunctions で開発!!!
  12. u AWS DataSync で転送処理をもっと便利に u 進捗や転送情報を可視化 / 転送後の検証まで u AWS

    SAM を利用 u AWS Lambda の開発からデプロイまでをとても手軽に #nncstudy 25 おわりに