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
第1回_AWSアーキテクチャに関する勉強会/aws_architecture_study_se...
Search
Renya K.
April 03, 2025
Science
0
17
第1回_AWSアーキテクチャに関する勉強会/aws_architecture_study_session_1
生成 AI 実用化推進プログラムに参画して得られたノウハウの共有です.
Renya K.
April 03, 2025
Tweet
Share
More Decks by Renya K.
See All by Renya K.
第3回_AWSアーキテクチャに関する勉強会/aws_architecture_study_session_3
ren8k
0
16
第2回_AWSアーキテクチャに関する勉強会/aws_architecture_study_session_2
ren8k
0
10
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
データベース03: 関係データモデル
trycycle
PRO
1
140
科学で迫る勝敗の法則(電気学会・SICE若手セミナー講演 2024年12月) / The principle of victory discovered by science (Lecture for young academists in IEEJ-SICE))
konakalab
0
110
Accelerated Computing for Climate forecast
inureyes
PRO
0
110
[第62回 CV勉強会@関東] Long-CLIP: Unlocking the Long-Text Capability of CLIP / kantoCV 62th ECCV 2024
lychee1223
1
960
[Paper Introduction] From Bytes to Ideas:Language Modeling with Autoregressive U-Nets
haruumiomoto
0
110
高校生就活へのDA導入の提案
shunyanoda
0
1.9k
実力評価性能を考慮した弓道高校生全国大会の大会制度設計の提案 / (konakalab presentation at MSS 2025.03)
konakalab
2
180
地表面抽出の方法であるSMRFについて紹介
kentaitakura
1
780
データマイニング - ウェブとグラフ
trycycle
PRO
0
130
02_西村訓弘_プログラムディレクター_人口減少を機にひらく未来社会.pdf
sip3ristex
0
530
統計的因果探索: 背景知識とデータにより因果仮説を探索する
sshimizu2006
4
950
地質研究者が苦労しながら運用する情報公開システムの実例
naito2000
0
230
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
Agile that works and the tools we love
rasmusluckow
329
21k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.5k
How to Ace a Technical Interview
jacobian
278
23k
A better future with KSS
kneath
238
17k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Typedesign – Prime Four
hannesfritz
42
2.7k
Transcript
© 2025 NTT DATA Japan Corporation 第1回 AWS アーキテクチャに関する勉強会 2025/04/03
株式会社NTTデータ 鯨田 連也
© 2025 NTT DATA Japan Corporation 2 目次 • はじめに
• 背景・目的・狙い • 開発した AI Agent ソリューション • 開発後の実運用時の課題 • 構築したアーキテクチャ • AWSリソース(ネットワーク周り) • VPC • Subnet • IGW • NAT Gateway • セキュリティグループ • ALB • Route 53 • ACM
© 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 開発した AI Agent
ソリューション(1/2) Web 検索,デザイン案生成,画像生成を行う複数の Agent と,それらを統括する Supervisor Agent を利用した Multi Agent ソリューションを開発した.ユーザーの要望に合わせて最適な Agent を選択・連携し,効率良く業務を支援可能.
© 2025 NTT DATA Japan Corporation 6 開発した AI Agent
ソリューション(2/2) ソリューションをアプリケーション化する際,Web UI フレームワークとして Streamlit を利用した.Streamlit を利用することで, Python で容易に Web アプリケーションを作成することが可能である.
© 2025 NTT DATA Japan Corporation 7 開発後の実運用時の課題(1/4) 開発した Streamlit
のアプリケーション(プロトタイプ)を顧客に利用してほしい場合,どのように利用してもらうのが良いか? 考慮すべき点が沢山ある. • 配信方法 • クラウド?オンプレ?(AWSなど or マシン購入) • 利用方法はインターネット経由?(ネットワークの知識) • アプリケーションはどこで実行する?(サーバーレス or コンテナ or EC2などの仮想サーバー) • HTTPS 経由でアプリケーションにアクセスするには?(ドメイン取得) • 利用者数が増えた場合,アクセス負荷に耐えられる?(可用性) • 実運用時,第三者でも運用・デプロイできる?(属人化) • アプリケーションのセキュリティ • 顧客の利用履歴はどう記録する?(データベース or CSV) • アプリケーションやネットワークセキュリティは?(ファイアウォール) • API キーなどの機密情報はどのように管理する?(シークレット管理) • 関係者以外アクセスできないようにするには?(指定のIPレンジに制限,ユーザー認証)
© 2025 NTT DATA Japan Corporation 8 開発後の実運用時の課題(2/4) 開発した Streamlit
のアプリケーション(プロトタイプ)を顧客に利用してほしい場合,どのように利用してもらうのが良いか? 考慮すべき点が沢山ある. • 配信方法 • クラウド?オンプレ?(AWSなど or マシン購入) • 利用方法はインターネット経由?(ネットワークの知識) • アプリケーションはどこで実行する?(サーバーレス or コンテナ or EC2などの仮想サーバー) • HTTPS 経由でアプリケーションにアクセスするには?(ドメイン取得) • 利用者数が増えた場合,アクセス負荷に耐えられる?(可用性) • 実運用時,第三者でも運用・デプロイできる?(属人化) • アプリケーションのセキュリティ • 顧客の利用履歴はどう記録する?(データベース or CSV) • アプリケーションやネットワークセキュリティは?(ファイアウォール) • API キーなどの機密情報はどのように管理する?(シークレット管理) • 関係者以外アクセスできないようにするには?(指定のIPレンジに制限,ユーザー認証) データサイエンティストは,これらの知見が多い訳では無い. (PoCが多く,実運用まで至るケースが多くない背景もある)
© 2025 NTT DATA Japan Corporation 9 開発後の実運用時の課題(3/4) 開発した Streamlit
のアプリケーション(プロトタイプ)を顧客に利用してほしい場合,どのように利用してもらうのが良いか? 考慮すべき点が沢山ある. • 配信方法 • クラウド?オンプレ?(AWSなど or マシン購入) • 利用方法はインターネット経由?(ネットワークの知識) • アプリケーションはどこで実行する?(サーバーレス or コンテナ or EC2などの仮想サーバー) • HTTPS 経由でアプリケーションにアクセスするには?(ドメイン取得) • 利用者数が増えた場合,アクセス負荷に耐えられる?(可用性) • 実運用時,第三者でも運用・デプロイできる?(属人化) • アプリケーションのセキュリティ • 顧客の利用履歴はどう記録する?(データベース or CSV) • アプリケーションやネットワークセキュリティは?(ファイアウォール) • API キーなどの機密情報はどのように管理する?(シークレット管理) • 関係者以外アクセスできないようにするには?(指定のIPレンジに制限,ユーザー認証) 生成 AI を API 経由で利用できるようになり, クイックにソリューションを開発できるようになってきた. ソリューションをクイックに運用し,多くの人に利用してもらい, 改善サイクルを回せるスキルが重要になってきそう.(私見)
© 2025 NTT DATA Japan Corporation 10 開発後の実運用時の課題(4/4) 開発した Streamlit
のアプリケーション(プロトタイプ)を顧客に利用してほしい場合,どのように利用してもらうのが良いか? 考慮すべき点が沢山ある. • 配信方法 • クラウド?オンプレ?(AWSなど or マシン購入) • 利用方法はインターネット経由?(ネットワークの知識) • アプリケーションはどこで実行する?(サーバーレス or コンテナ or EC2などの仮想サーバー) • HTTPS 経由でアプリケーションにアクセスするには?(ドメイン取得) • 利用者数が増えた場合,アクセス負荷に耐えられる?(可用性) • 実運用時,第三者でも運用・デプロイできる?(属人化) • アプリケーションのセキュリティ • 顧客の利用履歴はどう記録する?(データベース or CSV) • アプリケーションやネットワークセキュリティは?(ファイアウォール) • API キーなどの機密情報はどのように管理する?(シークレット管理) • 関係者以外アクセスできないようにするには?(指定のIPレンジに制限,ユーザー認証) AWS 生成AI 実用化推進プログラムでは,AWS の SA の方と議論し, これらの課題に対処した AWS アーキテクチャを検討した. 本勉強会では,その内容を共有する.
© 2025 NTT DATA Japan Corporation 11 構築した AWS アーキテクチャ
(1/2) Streamlit のアプリケーションを ECS でコンテナとして実行し,ネットワークの前段に ALB を配置して,AI Agent ソリューションを インターネット経由でWeb アプリケーションとして配信するためのアーキテクチャを実装した.これらを CDK で IaC 化している. AWS CDK
© 2025 NTT DATA Japan Corporation 12 構築した AWS アーキテクチャ
(2/2) (1)ネットワーク,(2) コンテナ運用・データベース,(3) 認証・セキュリティ・IaCに大別して,勉強会では解説する. 可能な限り,コンソール画面を共有しながらサービスについての理解を深めていく. (1) ネットワーク (2) コンテナ運用・データベース AWS CDK (3) 認証・セキュリティ・IaC
© 2025 NTT DATA Japan Corporation 13 02 AWSリソース(ネットワーク周り)
© 2025 NTT DATA Japan Corporation 14 VPC AWS 上に構築されたプライベートネットワーク空間.ほとんどの
AWS サービスは自身 or AWS が管理する VPC に属する. サブネットを定義してインターネットへの接続を設定したり,ルートテーブルでネットワークのフローを制御したりすることができる. ルートテーブルでパケットの 転送先を制御 EC2がパブリックサブネット内に デプロイされている インターネットゲートウェイ経由で, インターネット接続している https://d1.awsstatic.com/webinars/jp/pdf/services/20201021_AWS-BlackBelt-VPC.pdf
© 2025 NTT DATA Japan Corporation 15 Subnet VPC 内部の
IP アドレス範囲を分割したネットワークセグメント.インターネットに自由に接続できるパブリックサブネットと, インターネットに接続できないプライベートサブネットがある. パブリックサブネット内には, インターネットからアクセス可能 プライベートサブネット内には, インターネットから直接アクセス不可能 ↓ セキュア https://d1.awsstatic.com/webinars/jp/pdf/services/20201021_AWS-BlackBelt-VPC.pdf
© 2025 NTT DATA Japan Corporation 16 インターネットゲートウェイ (IGW) VPC
とインターネットを接続するための VPC コンポーネントであり,パブリックサブネット内のリソースが外部環境と通信できる. IGW経由で, パブリックサブネット内のリソースと インターネットの間で 双方向の通信が可能 https://d1.awsstatic.com/webinars/jp/pdf/services/20201021_AWS-BlackBelt-VPC.pdf IGW単体では, プライベートサブネット内のリソースは インターネットにアクセスできない ↓ NAT Gatewayが必要
© 2025 NTT DATA Japan Corporation 17 NAT Gateway VPC
内のプライベート IP アドレスと NAT Gateway 自身のプライベート IP アドレス間の変換を行うサービスであり, プライベートサブネット内のリソースが VPC 外のサービスや,インターネットに接続することができるようになる. デプロイするだけで6600円(/月) 程度コストが発生する. プライベートサブネット内から, NAT Gateway経由で インターネットにアクセス可能. https://d1.awsstatic.com/webinars/jp/pdf/services/20201021_AWS-BlackBelt-VPC.pdf https://dev.classmethod.jp/articles/vpc-nat-gateway-cloudwatch-dashbord/ IGWは,NAT GatewayのプライベートIPと NAT GatewayのグローバルIPアドレスを変換
© 2025 NTT DATA Japan Corporation 18 セキュリティグループ ステートフルな Firewall
であり,リソースと通信できる IP アドレスやポートを制御することができる. インバウンドルール(リソースに入っていく通信)とアウトバウンドルール(リソースから出ていく通信)を設定できる. 指定したIPアドレスレンジから, 80番ポートのアクセスを許可 http://~~~.com:80 でアクセス インバウンドトラフィック(行き)に対する応答の アウトバウンドトラフィックは,行きの通信が許可されて いる限り自動的に許可される. ↓ ステートフル https://d1.awsstatic.com/webinars/jp/pdf/services/20201021_AWS-BlackBelt-VPC.pdf https://dev.classmethod.jp/articles/vpc-nat-gateway-cloudwatch-dashbord/
© 2025 NTT DATA Japan Corporation 19 アプリケーションロードバランサー (ALB) サーバーへリクエストを分散することで,サーバーの可用性と拡張性を高めることができる負荷分散装置.
デプロイするだけで2500円(/月) 程度コストが発生する. https://d1.awsstatic.com/webinars/jp/pdf/services/20191029_AWS-Blackbelt_ELB.pdf
© 2025 NTT DATA Japan Corporation 20 アプリケーションロードバランサー (ALB) リバースプロキシとして,SSL/TLS終端処理(クライアントからHTTPSで接続)を行うことも可能.外部からアクセスする際の
プロトコルやポート(HTTPS or HTTP)を設定するリスナーと,ALB がフォワード先として指定するターゲットを設定する. https://d1.awsstatic.com/webinars/jp/pdf/services/20191029_AWS-Blackbelt_ELB.pdf
© 2025 NTT DATA Japan Corporation 21 Route 53 DNS(ドメインネームシステム)ウェブサービスで,独自のドメインの登録(購入)や
DNS ルーティングが可能. https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2023_Amazon-Route53-Intro_0530_v1.pdf
© 2025 NTT DATA Japan Corporation 22 Route 53 DNS(ドメインネームシステム)ウェブサービスで,独自のドメインの登録(購入)や
DNS ルーティングが可能. https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2023_Amazon-Route53-Intro_0530_v1.pdf
© 2025 NTT DATA Japan Corporation 23 AWS Certificate Manager
(ACM) SSL/TLS サーバー証明書のプロビジョニングや管理,自動更新を実現するサービス.ACM で発行した独自ドメインの証明書を ALB に関連付けることで,Webサービスなどを常時 SSL/TLS 化 (HTTPS 化) することができる. https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2023_AWS-Certificate-Manager_v1.pdf HTTPSで通信することで, 通信の暗号化とサイト事業者の 安全性を証明
None