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
とっ散らかったログバケットを S3バッチオペレーションで整理整頓! / Organizing ...
Search
コドモン開発チーム
October 24, 2024
0
220
とっ散らかったログバケットを S3バッチオペレーションで整理整頓! / Organizing Chaotic Log Buckets with S3 Batch Operations
コドモン開発チーム
October 24, 2024
Tweet
Share
More Decks by コドモン開発チーム
See All by コドモン開発チーム
フルリモートのその先へ〜パパね、いつも家にいるけどちゃんとこうして働いてるよ〜 / Beyond Full Remote
codmoninc
0
150
多様な働き方を支えるチーム開発カルチャーと 今後の展望 / Team Development Culture Supporting Diverse Workstyles and Future Outlook
codmoninc
0
130
ペアプロ未経験・未知のスキル領域・フルリモートからでも挑戦できる? 40代転職者の実態 / pair-programming-remote-career-change
codmoninc
0
140
EMが「推し本」を語る会〜アジャイルレトロスペクティブズ第2版〜 / recommended-book_agile-retrospectives
codmoninc
0
51
段階的なリプレイスを2年続けていたら、 ユーザーのことで悩めるようになっていた話 / Two Years of Incremental Replacement: How We Finally Started Thinking About Our Users
codmoninc
1
160
自動テストが巻き起こした開発プロセス・チームの変化 / Impact of Automated Testing on Development Cycles and Team Dynamics
codmoninc
3
1.5k
データエンジニアの副業メンバーを受け入れてよかったこと / good points of hiring side job data engineers
codmoninc
0
43
なぜ秘密の比較に hash_equals を使うのか ー内部実装と実践ガイド / why use hash equals for secret comparison internals and practical guide
codmoninc
1
620
「全部書き直す」をしない選択 ー 巨大SPAと同居しながら小さく始めるフレームワーク移行 ー / We Chose Incremental Refactoring Over a Complete Rewrite
codmoninc
0
91
Featured
See All Featured
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
410
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
110
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Designing for humans not robots
tammielis
254
26k
First, design no harm
axbom
PRO
2
1.1k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
160
HDC tutorial
michielstock
1
560
AI: The stuff that nobody shows you
jnunemaker
PRO
3
460
GraphQLとの向き合い方2022年版
quramy
50
14k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
450
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
84
Transcript
とっ散らかったログバケットを S3バッチオペレーションで整理整頓! 2024年10月23日 株式会社コドモン 田中知英 OpsJAWS Meetup31 泥臭いOPSのLT
2 経歴 音響エンジニア(PA)からITエンジニアに転職。SIerや派遣でのインフ ラ業務を数社経験後、2020年10月にコドモンにSREとして入社。 趣味は週末ランニングで、社内にランニングクラブを立ち上げたの で、リレーマラソンに会社で出るのが直近の目標🏃 自己紹介 田中 知英 たなか
ともひで dehio3
3 Mission
4 すべての先生に 子どもと向き合う 時間と心のゆとりを こんなプロダクトを開発しています メインプロダクトは、保育・教育施設向けWebアプリケーション。 保護者と施設のやり取りを支えるモバイルアプリケーションや、施設職員向けモバイル版 アプリケーション、外部サービスと連携するAPIなども開発しています。
5 導入施設数推移(ICT) 2021年4月 8,000 2020年4月 5,200 2019年4月 3,000 2018年4月 1,500
2017年4月 500 2016年4月 120 全国導入数 19,000 施設 2022年2月 11,000 17,000 2024年1月 (2024年7月時点) 14,000 2023年4月
6 突然ですが、こんなこと起きてませんか?
7 「AWSアカウントの増加に伴い、AWS Control Towerによるログ の統制を図ったものの、導入以前のログが各アカウントに散在して いる。」 「ログの管理方針を明文化したものの、明文化前のログは命名規則 がないまま整理されず、バラバラな状態が残っている。」
8 そんな状況を放置していませんか?
9 放置せずに泥臭く整理しているお話です🧹
10 今日話すこと AWSでS3オブジェクトを移動する方法 S3バッチオペレーションの利用方法 S3バッチオペレーションの活用とTIPS まとめ 1 2 3 4
11 AWSでS3オブジェクトを移動する方法
12 CONFIDENTIAL - © 2022 CoDMON Inc. 12 1. AWSでS3オブジェクトを移動する方法
AWSでS3オブジェクトを移動するにはいくつかの方法がある
13 CONFIDENTIAL - © 2022 CoDMON Inc. 13 1. AWSでS3オブジェクトを移動する方法
AWSでS3オブジェクトを移動するにはいくつかの方法がある 1. AWSコンソールからの「移動」アクション
14 CONFIDENTIAL - © 2022 CoDMON Inc. 14 1. AWSでS3オブジェクトを移動する方法
AWSでS3オブジェクトを移動するにはいくつかの方法がある 1. AWSコンソールからの「移動」アクション ☔1回5GBの制限あり。コンソール閉じれない。
15 CONFIDENTIAL - © 2022 CoDMON Inc. 15 1. AWSでS3オブジェクトを移動する方法
AWSでS3オブジェクトを移動するにはいくつかの方法がある 1. AWSコンソールからの「移動」アクション ☔1回5GBの制限あり。コンソール閉じれない。 2. S3 CLIを使用したオブジェクトのコピーまたは移動
16 CONFIDENTIAL - © 2022 CoDMON Inc. 16 1. AWSでS3オブジェクトを移動する方法
AWSでS3オブジェクトを移動するにはいくつかの方法がある 1. AWSコンソールからの「移動」アクション ☔1回5GBの制限あり。コンソール閉じれない。 2. S3 CLIを使用したオブジェクトのコピーまたは移動 ☔スクリプトの作成や、動作基盤の準備が必要。
17 CONFIDENTIAL - © 2022 CoDMON Inc. 17 1. AWSでS3オブジェクトを移動する方法
AWSでS3オブジェクトを移動するにはいくつかの方法がある 1. AWSコンソールからの「移動」アクション ☔1回5GBの制限あり。コンソール閉じれない。 2. S3 CLIを使用したオブジェクトのコピーまたは移動 ☔スクリプトの作成や、動作基盤の準備が必要。 3. S3バッチオペレーションによるオブジェクトの操作
18 CONFIDENTIAL - © 2022 CoDMON Inc. 18 1. AWSでS3オブジェクトを移動する方法
AWSでS3オブジェクトを移動するにはいくつかの方法がある 1. AWSコンソールからの「移動」アクション ☔1回5GBの制限あり。コンソール閉じれない。 2. S3 CLIを使用したオブジェクトのコピーまたは移動 ☔スクリプトの作成や、動作基盤の準備が必要。 3. S3バッチオペレーションによるオブジェクトの操作 🌞動作基盤不要で、マネージドで大量処理可能。
19 CONFIDENTIAL - © 2022 CoDMON Inc. 19 1. AWSでS3オブジェクトを移動する方法
AWSでS3オブジェクトを移動するにはいくつかの方法がある 1. AWSコンソールからの「移動」アクション ☔1回5GBの制限あり。コンソール閉じれない。 2. S3 CLIを使用したオブジェクトのコピーまたは移動 ☔スクリプトの作成や、動作基盤の準備が必要。 3. S3バッチオペレーションによるオブジェクトの操作 🌞動作基盤不要で、マネージドで大量処理可能。
20 S3バッチオペレーションの利用方法
21 CONFIDENTIAL - © 2022 CoDMON Inc. 21 1. S3バッチオペレーションとは?
S3 Batch Operations Job Manifest (Object List) Operation Completion report 利用方法
22 CONFIDENTIAL - © 2022 CoDMON Inc. 22 1. S3バッチオペレーションとは?
↓成功率とオブジェクト数 ↓失敗率とオブジェクト数 ↓処理時間 利用方法
23 S3バッチオペレーションの活用とTIPS
24 CONFIDENTIAL - © 2022 CoDMON Inc. 24 3. S3バッチオペレーションの活用とTIPS
コピーオペレーション • オブジェクトの移動前後でパスの変更が不要な場合 amzn-s3-source-bucket /prefix_name/YYYY/MM/DD/ file_name.json.gz amzn-s3-dest-bucket /prefix_name/YYYY/MM/DD/ file_name.json.gz operation Copy
25 CONFIDENTIAL - © 2022 CoDMON Inc. 25 3. S3バッチオペレーションの活用とTIPS
Lambda呼び出しオペレーション • オブジェクトの移動前後でパスの変更が必要な場合 amzn-s3-source-bucket /prefix_A/YYYY/MM/DD/ file_name.json.gz amzn-s3-dest-bucket /prefix_B/YYYY/MM/DD/ file_name.json.gz operation Invoke AWS Lambda function
26 CONFIDENTIAL - © 2022 CoDMON Inc. 26 3. S3バッチオペレーションの活用とTIPS
Lambda呼び出しオペレーション • オブジェクト単位でLambdaが 呼びされて処理される • コピー用途だけでなく、既存の オブジェクトに対する様々な処 理を実現できる
27 CONFIDENTIAL - © 2022 CoDMON Inc. 27 3. S3バッチオペレーションの活用とTIPS
Lambda呼び出しオペレーション ⚠注意⚠ • Lambdaのレスポンスについ ては、S3バッチオペレーショ ンが解釈できる形にする必要 がある マニュアル:Amazon S3 バッチイベントで Lambda 関数を呼び出す
28 CONFIDENTIAL - © 2022 CoDMON Inc. 28 3. S3バッチオペレーションの活用とTIPS
TIPS:CLIでジョブを作成しマニフェストファイルも自動生成 • AWSコンソールではマニフェストファイルの作成が必要 • マニフェストファイルは移行対象のオブジェクトのリスト
29 CONFIDENTIAL - © 2022 CoDMON Inc. 29 3. S3バッチオペレーションの活用とTIPS
TIPS:CLIでジョブを作成しマニフェストファイルも自動生成 • 「s3api list-objects-v2」などでリスト作るのは手間 • 一応公式のツールがあるっぽい ◦ aws-samples/amazon-s3-manifest-generator-for-batch-operations
30 CONFIDENTIAL - © 2022 CoDMON Inc. 30 3. S3バッチオペレーションの活用とTIPS
TIPS:CLIでジョブを作成しマニフェストファイルも自動生成 • 「s3control create-job」の「--manifest-generator」に てオブジェクトのリストを自動生成してくれる • フィルタ条件を指定することで、特定のオブジェクトをリス トとして自動生成も可能(作成時間、サイズ、キー名など) マニュアル:S3 バッチオペレーションジョブの作成/マニフェストの自動 的生成
31 まとめ
32 CONFIDENTIAL - © 2022 CoDMON Inc. 32 4.まとめ •
大量のオブジェクト操作にはS3バッチオペレーションが有効 • Lambdaを活用すると、多様な要件にも柔軟に対応 • ジョブを作成する際はCLIを使うことマニフェスト作成も自 動化でき、より簡単に使える
33 コドモン採用ページ 開発ブログ コドモンでは一緒に働きたい仲間を募集しています!
34 ご清聴ありがとうございました!
None