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
第2回_AWSアーキテクチャに関する勉強会/aws_architecture_study_se...
Search
Renya K.
April 10, 2025
Science
0
10
第2回_AWSアーキテクチャに関する勉強会/aws_architecture_study_session_2
生成 AI 実用化推進プログラムに参画して得られたノウハウの共有です.
Renya K.
April 10, 2025
Tweet
Share
More Decks by Renya K.
See All by Renya K.
第3回_AWSアーキテクチャに関する勉強会/aws_architecture_study_session_3
ren8k
0
16
第1回_AWSアーキテクチャに関する勉強会/aws_architecture_study_session_1
ren8k
0
17
LangGraph × Bedrock による複数の Agentic Workflow を利用した Supervisor 型のマルチエージェントの実現/langgraph-bedrock-supervisor-agent
ren8k
5
910
Claude3 on Bedrock with Converse API + Tool use でチャットアプリを作成してみた
ren8k
1
2.5k
Other Decks in Science
See All in Science
CV_5_3dVision
hachama
0
140
3次元点群を利用した植物の葉の自動セグメンテーションについて
kentaitakura
2
1.3k
データベース12: 正規化(2/2) - データ従属性に基づく正規化
trycycle
PRO
0
840
論文紹介 音源分離:SCNET SPARSE COMPRESSION NETWORK FOR MUSIC SOURCE SEPARATION
kenmatsu4
0
270
マウス肝炎ウイルス感染の遺伝子発現へのテンソル分解の適用によるSARS-CoV-2感染関連重要ヒト遺伝子と有効な薬剤の同定
tagtag
0
130
データベース14: B+木 & ハッシュ索引
trycycle
PRO
0
360
データマイニング - グラフデータと経路
trycycle
PRO
1
190
地表面抽出の方法であるSMRFについて紹介
kentaitakura
1
780
baseballrによるMLBデータの抽出と階層ベイズモデルによる打率の推定 / TokyoR118
dropout009
1
520
2025-06-11-ai_belgium
sofievl
1
140
眼科AIコンテスト2024_特別賞_6位Solution
pon0matsu
0
430
テンソル分解による糖尿病の組織特異的遺伝子発現の統合解析を用いた関連疾患の予測
tagtag
2
200
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Producing Creativity
orderedlist
PRO
346
40k
Optimizing for Happiness
mojombo
379
70k
Code Reviewing Like a Champion
maltzj
524
40k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
Automating Front-end Workflow
addyosmani
1370
200k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Transcript
© 2025 NTT DATA Japan Corporation 第2回 AWS アーキテクチャに関する勉強会 2025/04/10
株式会社NTTデータ 鯨田 連也
© 2025 NTT DATA Japan Corporation 2 目次 • はじめに
• 背景・目的・狙い • 構築した AWS アーキテクチャ • 前回の復習 • AWSリソース(コンテナ運用・データベース) • ECS • ECR • DynamoDB • Amazon RDS • S3
© 2025 NTT DATA Japan Corporation 3 01 はじめに
© 2025 NTT DATA Japan Corporation 4 背景・目的・狙い 背景 2024
年度の AWS 生成 AI 実用化推進プログラムに参画した.本プログラムでは,AI Agent によるソリューションを AWS 上で開発し,実際に顧客に Web アプリケーションとして無料トライアル提供した. 目的 本勉強会では,本取り組みを通して得られたAWSに関するナレッジについて共有する. 狙い 各サービスの基本知識と AWS コンソール上でのサービスの確認方法をセットで理解すること.
© 2025 NTT DATA Japan Corporation 5 構築した AWS アーキテクチャ
(1/2) Streamlit のアプリケーションを ECS でコンテナとして実行し,ネットワークの前段に ALB を配置して,AI Agent ソリューションを インターネット経由でWeb アプリケーションとして配信するためのアーキテクチャを実装した.これらを CDK で IaC 化している. AWS CDK
© 2025 NTT DATA Japan Corporation 6 構築した AWS アーキテクチャ
(2/2) (1)ネットワーク,(2) コンテナ運用・データベース,(3) 認証・セキュリティ・IaCに大別して,勉強会では解説する. 可能な限り,コンソール画面を共有しながらサービスについての理解を深めていく. (1) ネットワーク (2) コンテナ運用・データベース AWS CDK (3) 認証・セキュリティ・IaC
© 2025 NTT DATA Japan Corporation 7 前回の復習 (ネットワーク) ECS
へのインバウンドトラフィック経路は,IGW -> ALB (SG で許可されている場合) -> ECS となる. アウトバウンドトラフィック経路は,ECS -> NAT -> IGW (プライベート IP とグローバル IP が変換) となる. ALB に ACM 証明書をアタッチすることで,Web アプリケーションを SSL/TLS 化 (HTTPS 化) できる. Amazon RDS ACM NAT gateway https://aws.amazon.com/jp/builders-flash/202409/web-app-architecture-design-pattern/ 同一 VPC におけるサブネット間は (SG の設定次第で) 自由に通信可能. プライベートサブネット内から, NAT Gateway 経由で インターネットにアクセス可能. ECS の SG の Inbound rule では, ALB からの通信のみ許可. ALB の SG の Inbound rule では, 社内からのアクセスのみ許可.
© 2025 NTT DATA Japan Corporation 8 02 AWSリソース(コンテナ運用・ データベース)
© 2025 NTT DATA Japan Corporation 9 ECS コンテナのオーケストレーションサービスで,コンテナのデプロイやスケジューリング,スケーリングが可能. コンテナの実行環境として,EC2
や Fargate を選択可能. https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2024_Amazon_ECS_Introduction_0831_v1.pdf
© 2025 NTT DATA Japan Corporation 10 ECS Fargate ではコンテナをサーバーレスで実行し,EC2
ではコンテナを仮想サーバー上で実行する. Fargate はユーザーが管理するレイヤーが少なく,オートスケーリングなども便利だが,その分料金は高い. https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2024_Amazon_ECS_Introduction_0831_v1.pdf OSアップデート,セキュリティパッチ適用 などのインフラ管理から解放される.
© 2025 NTT DATA Japan Corporation 11 ECS クラスターの中で Fargate
が実行される.Fargate ではタスク(1つ以上のコンテナ)が実行されている. タスク(コンテナ)の実行要件はユーザーが指定する必要がある.(タスク定義) https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2024_Amazon_ECS_Introduction_0831_v1.pdf
© 2025 NTT DATA Japan Corporation 12 ECS ECS には,タスク定義,タスク,サービス,クラスターという概念がある.タスク定義に基づき,タスク(コンテナ)は実行される.
サービスは,1つ以上のタスクを管理する単位.クラスターでは,1つ以上のサービスが実行される. https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2024_Amazon_ECS_Introduction_0831_v1.pdf docker run 実行時の 引数をここで設定する イメージ
© 2025 NTT DATA Japan Corporation 13 ECS Fargate のネットワークは
awsvpc モードである.本モードでは,ポートフォワーディング(ポートマッピング)で利用する host と container のポート番号は同一である必要がある. https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2024_Amazon_ECS_Introduction_0831_v1.pdf Streamlit の場合, 8501で外部からアクセス する必要あり
© 2025 NTT DATA Japan Corporation 14 ECR コンテナイメージレジストリのマネージドサービスで,Docker CLI
などで Docker イメージを保存することができる. プライベートレジストリ (pull・push に IAM ベースの認証が必須) とパブリックレジストリ (認証無しでも pull が可能) がある. https://pages.awscloud.com/rs/112-TZM-766/images/202112_AWS_BlackBelt_CON241_ECR.pdf AWS CLI で認証が必須
© 2025 NTT DATA Japan Corporation 15 DynamoDB 完全マネージド型の NoSQL
データベースサービス (Key-Value-Store) .PostgreSQL のような厳密なスキーマ定義は不要. ハイスケーラブルで低レイテンシー,可用性が高い.ストレージの容量制限が無く,運用管理も必要ない(従量課金). https://www.youtube.com/watch?v=Rr_sykz8k9c
© 2025 NTT DATA Japan Corporation 16 DynamoDB DynamoDB は
Primary Key (Partition Key,または Sort Key との組合せ) でデータを識別し,アクセスする. Item は Attributes によって構成され,型(String型,Json型等) はアイテム間で不揃いで問題ない. https://www.youtube.com/watch?v=Rr_sykz8k9c RDSでいう列
© 2025 NTT DATA Japan Corporation 17 DynamoDB DynamoDB では,2種類の
Primary Key をサポートする(各レコードで一意である必要がある). 以下のキーで,データの取得やソート,絞り込みが可能. • Partition Key • Partition Key & Sort Key https://www.youtube.com/watch?v=Rr_sykz8k9c Key-Value-Storeなので, データを「キー」と「値」のペアで 保存する
© 2025 NTT DATA Japan Corporation 18 DynamoDB (発展) Primary
Key 以外の Attributes で検索する方法として,2種類の Secondary Index を利用することができる. https://www.youtube.com/watch?v=Rr_sykz8k9c
© 2025 NTT DATA Japan Corporation 19 Amazon RDS 構築・運用・拡張が容易な,フルマネージドなリレーショナルデータベース.⼈気のある6つのデータベースエンジンを選択可能.
PostgreSQL を利用する場合,Aurora (with PostgreSQL) か RDS for PostgreSQL のどちらかを利用する. https://pages.awscloud.com/rs/112-TZM-766/images/03_MySQL_PostgreSQL%20%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%20RDS_Aurora%20%E3%81%AE%E9%81%B8%E6%8A%9E%E3%83%9B%E3%82%9A%E3%82%A4%E3%83%B3%E3%83%88.pdf
© 2025 NTT DATA Japan Corporation 20 Amazon RDS フルマネージドなので運用負荷は低い.ただし,常時インスタンスを稼働するので,それなりにコストは発生する.
https://pages.awscloud.com/rs/112-TZM-766/images/03_MySQL_PostgreSQL%20%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%20RDS_Aurora%20%E3%81%AE%E9%81%B8%E6%8A%9E%E3%83%9B%E3%82%9A%E3%82%A4%E3%83%B3%E3%83%88.pdf
© 2025 NTT DATA Japan Corporation 21 Amazon RDS コスト効率は
RDS for PostgreSQL が良い.Multi-AZなどの冗長構成の場合,レイテンシーは Aurora の方が低い. 使い勝手はどちらもほぼ変わらないので,迷ったらまずは RDS で問題ない(私見). Aurora PostgreSQL を選ぶ理由 • 可用性・パフォーマンス・運用性を重視したい • クローンなど Aurora 独自の機能を利用し、快適に運用・開発をしたい • ストレージをオートスケーリングしたい • 1日のピーク時間が短ければ(1~2hのみなど) Aurora Serverless v2 の方がコストが安い場合がある • Aurora Serverless v2 はオートスケーリング可能. RDS for PostgreSQL を選ぶ理由 • インスタンスタイプ・サイズの選択肢が多い • Aurora で使えない機能を使いたい • 最新のバージョンおよびそれに付随する機能を使いたい https://pages.awscloud.com/rs/112-TZM-766/images/03_MySQL_PostgreSQL%20%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%20RDS_Aurora%20%E3%81%AE%E9%81%B8%E6%8A%9E%E3%83%9B%E3%82%9A%E3%82%A4%E3%83%B3%E3%83%88.pdf
© 2025 NTT DATA Japan Corporation 22 S3 高いパフォーマンスと可用性、そして低コストが特徴なオブジェクトストレージ.データ分析基盤のデータレイクとして最適. •
耐久性 • 99.999999999%(イレブンナイン) • 最低 3 つのアベイラビリティゾーン(AZ)で冗長化 • スケーラビリティ • 無制限のデータ保存 • ただし、1 オブジェクトは最大 5 TB • 低コスト • セキュリティ • アクセス制御とログ監査 • データの保護 • 誤削除から守る機能 • アクセシビリティ • HTTP/HTTPS でアップロード/ダウンロード/変更/削除といった操作が可能 • 様々な AWS サービスとの連携 https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2023_Amazon-S3-Usecases_0131_v1.pdf
None