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
7
第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
9
第1回_AWSアーキテクチャに関する勉強会/aws_architecture_study_session_1
ren8k
0
13
LangGraph × Bedrock による複数の Agentic Workflow を利用した Supervisor 型のマルチエージェントの実現/langgraph-bedrock-supervisor-agent
ren8k
4
850
Claude3 on Bedrock with Converse API + Tool use でチャットアプリを作成してみた
ren8k
1
2.4k
Other Decks in Science
See All in Science
ACL読み会2024@名大 REANO: Optimising Retrieval-Augmented Reader Models through Knowledge Graph Generation
takuma_matsubara
0
200
テンソル分解による糖尿病の組織特異的遺伝子発現の統合解析を用いた関連疾患の予測
tagtag
2
180
Trend Classification of InSAR Displacement Time Series Using SAE–CNN
satai
3
380
白金鉱業Meetup Vol.16_【初学者向け発表】 数理最適化のはじめの一歩 〜身近な問題で学ぶ最適化の面白さ〜
brainpadpr
11
2.2k
Machine Learning for Materials (Challenge)
aronwalsh
0
280
LayerXにおける業務の完全自動運転化に向けたAI技術活用事例 / layerx-ai-jsai2025
shimacos
1
910
SciPyDataJapan 2025
schwalbe10
0
230
IWASAKI Hideo
genomethica
0
100
Transport information Geometry: Current and Future II
lwc2017
0
150
butterfly_effect/butterfly_effect_in-house
florets1
1
170
証明支援系LEANに入門しよう
unaoya
0
1k
02_西村訓弘_プログラムディレクター_人口減少を機にひらく未来社会.pdf
sip3ristex
0
450
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1031
460k
Faster Mobile Websites
deanohume
307
31k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
7
640
Scaling GitHub
holman
459
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Balancing Empowerment & Direction
lara
1
110
Practical Orchestrator
shlominoach
188
11k
Code Review Best Practice
trishagee
68
18k
How GitHub (no longer) Works
holman
314
140k
Designing for Performance
lara
609
69k
How STYLIGHT went responsive
nonsquared
100
5.6k
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