Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS Lambda with AWS DataSync で実現する サーバレスファイル転送システム
Search
4hei4hei
February 09, 2024
1
110
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
Share
More Decks by 4hei4hei
See All by 4hei4hei
コスト観点で見る CloudFront
4hei4hei
7
1.6k
HTTP ヘッダ観点で見る CloudFront
4hei4hei
0
110
AWS DataSync クロスリージョン S3 to S3 転送をざっくり絵で紹介
4hei4hei
1
160
Amazon CloudFront Continuous Deployment 基本から自動化まで
4hei4hei
0
120
Origin 負荷軽減の観点で見る CloudFront - オプション機能から Originless 設計まで -
4hei4hei
1
67
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Writing Fast Ruby
sferik
626
61k
Facilitating Awesome Meetings
lara
49
6k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Optimizing for Happiness
mojombo
376
69k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.8k
YesSQL, Process and Tooling at Scale
rocio
167
14k
Building Your Own Lightsaber
phodgson
102
6.1k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
92
16k
Become a Pro
speakerdeck
PRO
24
5k
How STYLIGHT went responsive
nonsquared
95
5.2k
Transcript
AWS Lambda with AWS DataSync で実現する サーバレスファイル転送システム NRI ネットコム株式会社 西
洋平 NRI Netcom tech and design study #7 2023 年 05 月 31 日 #nncstudy
はじめに 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
#nncstudy 2 今日のお話 オンプレミスのファイル転送システムを AWS DataSync ベースに改修 & AWS 上へ移行した話
(入社 1~2 年目の新人の頃にやってた話)
#nncstudy 3 今日のお話 オンプレミスのファイル転送システムを AWS DataSync ベースに改修 & AWS 上へ移行した話
(入社 1~2 年目の新人の頃にやってた話) 元々どういう構成だったの? 改修してどうなったの? AWS DataSync って? よかった / 注意するポイントは?
以降のスライドでは以下の語句について省略した形で表記します #nncstudy 4 用語について
#nncstudy 5 AWS DataSync 導入前の構成 Application
#nncstudy 6 AWS DataSync 導入前の構成 Application 定期的に Amazon SQS をポーリング
対象ファイルを Amazon S3 から DL して転送 対象のファイル ID を通知 ファイルは AmazonS3 に配置
#nncstudy 7 AWS DataSync 導入前の構成 Application サーバに入らないと何もわからない e.g. • 今どの
ID を転送してる? 進捗は? • エラーになったけどどうなってる? エラー時の対象 ID 検索が難しい…… そもそも管理が……
#nncstudy 8 AWS DataSync 導入前の構成 Application サーバに入らないと何もわからない e.g. • 今どの
ID を転送してる? 進捗は? • エラーになったけどどうなってる? エラー時の対象 ID 検索が難しい…… そもそも管理が…… AWS 上へサーバレス化してリプレイスしよう!!!
#nncstudy 9 AWS DataSync 導入前の構成 Application サーバに入らないと何もわからない e.g. • 今どの
ID を転送してる? 進捗は? • エラーになったけどどうなってる? エラー時の対象 ID 検索が難しい…… そもそも管理が…… AWS 上へサーバレス化してリプレイスしよう!!! → AWS DataSync の出番
u AWS マネージドなデータ / ファイル転送サービス u 帯域幅の調整や転送後のファイル検証が可能 u 様々なユースケースに対応可能 #nncstudy
10 AWS DataSync AWS to AWS AWS to On-premise AWS to Other cloud
#nncstudy 11 AWS DataSync
#nncstudy 12 AWS DataSync 転送処理を担う実体 (Amazon EC2 やオンプレミスの VM にインストール)
Task には Task Execution の結果が 履歴として残っていく 転送元 / 先の情報
#nncstudy 13 AWS DataSync 転送処理を担う実体 (Amazon EC2 やオンプレミスの VM にインストール)
Task には Task Execution の結果が 履歴として残っていく 転送元 / 先の情報 AWS DataSync を使ってサーバレス化すると……
#nncstudy 14 サーバレス化後の構成
#nncstudy 15 サーバレス化後の構成 AWS SAM で開発 / 管理 AWS DataSync
での転送
#nncstudy 16 サーバレス化後の構成 Amazon DynamoDB で Task の情報を管理 (転送用 Task
の割り当てに活用) 予め AWS DataSync タスクを複数作成してプール化 Amazon DynamoDB の情報を定期更新 Amazon SQS 駆動で Task Execution を起動
#nncstudy 17 サーバレス化後の構成 AWS DataSync から転送進捗や情報を確認可能 Amazon CloudWatch Logs でログも確認可能
DLQ 新設で re-run 性 / 追跡性を向上
u デプロイ体制についても整備 #nncstudy 18 サーバレス化後の構成
u デプロイ体制についても整備 #nncstudy 19 サーバレス化後の構成 詳細はネットコムブログで https://tech.nri-net.com/entry/teaching_uncle_jenkins_about_aws_sam
ポイント 開発関連 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
#nncstudy 21 ふりかえり サーバレス化してよかったこと 反省点 次やるなら……?
#nncstudy 22 ふりかえり サーバレス化してよかったこと ほぼ AWS DataSync 任せに!!! 反省点 次やるなら……?
#nncstudy 23 ふりかえり サーバレス化してよかったこと ほぼ AWS DataSync 任せに!!! 反省点 Agent
の可視性も考えたかった 次やるなら……?
#nncstudy 24 ふりかえり サーバレス化してよかったこと ほぼ AWS DataSync 任せに!!! 反省点 Agent
の可視性も考えたかった 次やるなら……? AWS StepFunctions で開発!!!
u AWS DataSync で転送処理をもっと便利に u 進捗や転送情報を可視化 / 転送後の検証まで u AWS
SAM を利用 u AWS Lambda の開発からデプロイまでをとても手軽に #nncstudy 25 おわりに