Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
FOLIOにおけるAWS活用事例 - SBI Tech Day 2025
Search
krrrr38
March 07, 2025
Technology
47
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
FOLIOにおけるAWS活用事例 - SBI Tech Day 2025
krrrr38
March 07, 2025
More Decks by krrrr38
See All by krrrr38
証券システムを10年Scalaで作り続けるということ - 関数型まつり2026
krrrr38
3
1.2k
クラウド時代における一時権限取得
krrrr38
1
450
Scramble4 FOLIO栄枯盛衰今昔物語
krrrr38
0
690
Other Decks in Technology
See All in Technology
生成AIエージェントを用いた、 手動テスト手順書から自動テストへの 変換手法の検討
magicpod
0
160
目の前の楽しいが人生を変える - コミュニティの螺旋の歩き方と楽しむコツ / change your life
soudai
PRO
5
630
あるけみー式LTスライド作成術
alchemy1115
2
220
HHKBエバンジェリストになる方法
941
0
110
積み重なった技術負債への挑戦 〜初手としての全社ゴト化〜
techtekt
PRO
0
1.3k
Deployment の 先にある AI Agent 基盤 - kagent vNext、Agent Substrate、Hermes から読み解く Agent Runtime の現在地 / k8s-matsuri-2-ai-agent-platform-amsy810
masayaaoyama
4
630
アプリログインとWeb認証基盤をつなぐ ASWebAuthenticationSession 作法
shimastripe
1
330
GoのInterface内部構造から学ぶ!最高パフォーマンスを出すコード設計
yappli_developers
0
110
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
500
空間オーディオで過去の 自分(ゴースト)と競うランニング 〜HealthKitのルートを足音に変える実装〜
nao_randd
0
220
データ_AIの事業の勝敗をわけるもの
nek0128
1
400
銀行勘定系システムにおける開発プロセス刷新×AIによる環境モダナイゼーション / Development Process Transformation and AI-Driven Environment Modernization
muit
1
2.3k
Featured
See All Featured
Navigating Team Friction
lara
192
16k
Navigating Weather and Climate Data
rabernat
0
520
Side Projects
sachag
456
43k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
300
It's Worth the Effort
3n
188
29k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
WENDY [Excerpt]
tessaabrams
14
39k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
520
Discover your Explorer Soul
emna__ayadi
2
1.3k
Crafting Experiences
bethany
1
340
Transcript
Copyright © 2019 FOLIO Co., Ltd. All Rights Reserved. 株式会社FOLIOにおけるAWS活用事例
2025/03/07 SBI Tech Day 2025
2 本日の流れについて • 自己紹介 • 株式会社FOLIOについて • SBIグループの一員としてのFOLIO • 証券会社としてのFOLIO
• 証券システム提供会社としてのFOLIO • FOLIOにおけるAWSの活用事例 • 全体構成について • 2C領域・2B領域におけるクラウドインフラ利活用について • 主として2B領域における内容を中心に • プラットフォームが提供する価値提供
3 自己紹介 • 海津 研 / Ken Kaizu • 株式会社FOLIO
• 執行役員CTO • フィナンシャルテクノロジー本部 • 共通基盤部(SREユニット含) • 株式会社FOLIO ホールディングス • 情報戦略部 部長 • 2018年1月より株式会社FOLIO • バックエンド・インフラがメイン
4 証券サービス・証券システムについて 投資一任運用を支えるシステム 1日の中でライフサイクルが存在している • 顧客注文受注 • お客様からの注文をQueueing • 注文締め
• 当日注文の確定処理 • 約定処理 • 市場に向けた発注及び約定 • 評価額算出 • 証券残高・現金残高計算 重厚長大なバッチシステム 責務毎に分離されたサービス間連携
5 開発・運用体制について AWSを中心とした基盤の提供 サービスを支える開発・運用 プラットフォーム アプリケーションチーム毎の開発 契約管理システム 口座管理システム … 契約管理システムの
アプリケーションに関するもの • サーバー、デーモン、バッチ • Docker Image • サービス上のデータ管理 • 論理DB・DBユーザー • 監視設定 • CI・CD設定 • 運用上のロール 口座管理システムの アプリケーションに関するもの • サーバー、デーモン、バッチ • Docker Image • サービス上のデータ管理 • 論理DB・DBユーザー • 監視設定 • CI・CD設定 • 運用上のロール ※ 本日のメインの話
6 ケース)AWSアクセス管理システムの構築と運用 要件 • AWSのアクセス権限を一時的に払い出す • 最小権限に近づけたアクセス権限付与 • 必要期間に限りアクセス権限を付与 •
適切な業務遂行者にのみ権限を付与 • 承認フローによる権限取得 提供されている機能の利用としては、以下の通り 1. 事前に権限を分離したIAM Role / Entra Groupの作成 2. Slack Workflowを用いた運用担当者による申請 3. Entra Id PIMによるEntra Groupアクセス申請 4. 承認者による内容確認及び承認 5. 一時的な権限の取得 6. 各種リソースへのアクセス SaaSの組み合わせによる利便性向上 IdPを中心とした権限制御
7 AWS 全体構成について AWS Account について • AWS Control Tower相当の構成
• 検証環境・本番環境等において、 AWS Accountが分離 • 4RAPはSaaSとして提供する中で、 共用テナント・専用テナント等、 AWS Accountをさらに分離 ※ 全体像を表すものであり、こちらに記載されていないOU・Accountも存在しています
8 4RAPにおけるAWS Accountの利用 SaaSによる共通基盤のため、 クライアントが増えると機能も拡張される
9 4RAPにおけるAWS Accountの利用 SaaSによる共通基盤のため、 クライアントが増えると機能も拡張される 環境は分離されており、AWS Accountを多用 コア機能はバージョニングされてアップグレード
10 4RAPの個社向けインターフェース 以下のインタフェースを提供 • Amazon API Gateway • HTTPを利用したリアルタイムAPIの提供 •
OAuthによる認可(Custom Authorizer) • OpenAPI Specificationによる仕様提供 • Transfer Family • SFTPを利用したファイル連携 • OpenAPI Specificationによる仕様提供 • jsonl によるストリーム処理可能なファイル形式 SaaSである4RAP側からの仕様提供 ファイル連携についてもpathでversioning
11 個社希望に応じたいくつかの接続要件にも対応 • IP制限 • API GatewayにIP制限 • VPN接続 •
Site to Site VPN • API Gateway x VPC Endpoint x NLB • Transfer Family x VPC Endpoint • AWS間接続 • PrivateLink 4RAPにおける接続要件 AWSの技術により、ネットワーク要件をアプリケーションまで持ち込まない
12 Feature Flagによる環境差異管理 個社環境毎の環境差異管理 • AWS Resourceは全てTerraformにてIaC • 環境毎にterraform workspaceを設定
• 環境が増えた場合にも並列で適用 • 環境差異はFeature Flagによる管理 • use_vpn • use_ec2_ondemand_instances • … • 設定方法 • 環境毎のworkspaces.tfvarsで設定 • 推奨する本番環境は何も設定をしなく て良い状態としている 全ての環境の構成は一元管理 環境差異は環境毎に用意された設定ファイルでフラグ管理
13 EKS構成・リソース管理について 基盤の提供 サービスを支える開発・運用 プラットフォーム アプリケーションチーム毎の開発 契約管理システム 口座管理システム … 契約管理システムの
アプリケーションに関するものを helm chartでリソース管理 • Service • ConfigMap • Deployment • Job • HorizontalPotAutoscaler • PodDistritruptionBudget • WorkflowTemplate • CronWorkflow 口座管理システムの アプリケーションに関するものを helm chartでリソース管理 • Service • ConfigMap • Deployment • Job • HorizontalPotAutoscaler • PodDistritruptionBudget • WorkflowTemplate • CronWorkflow TerraformによるEKS管理 • EKS • Plugin / IRSA等 helm chartによるリソース管理 • Argo CD • Argo Workflows • HashiCorp Vault • Cluster Autoscaler プラットフォーム側では 任意のリソースを作成可能
14 ケース)Argo CDで実現するリソース権限分離 要件 • 開発チームで作成可能なリソースを制限 • 利用可能なnamespaceも制限したい Argo CD
で GitOps による CD を提供する中で、 プラットフォームが提供する制限下において 許可された namespace / kind しか作成できない • 事前にプラットフォーム側でAppProjectを作成 • 開発側では提供されたAppProjectを用いてk8s resourceを作成可能 • AppProjectでは namespace / kind の制限を付与 • 結果として開発チームではSecretを作れないなど ClusterRole のような k8s クラスタ全体に 影響を及ぼせる仕組みはプラットフォームのみで管理
15 ケース)プラットフォームとしてのk8sリソース制約 要件 • k8sリソースに対する細かな制約 • docker hubを参照させたくない • node-typeを制限したい
• 監視のためにlabelを強制 • … Polaris を利用した、静的検査と動的検査の双方を提供 • 独自ルールをJSON Schemaにて定義 • 静的検査 • CIにおいてPolarisのルール用いてチェック • デプロイ前の開発時において気がつける仕組み • 動的検査 • Polarisをk8sで動かすことで、Admission ControllerのValidating Webhookからチェック • クラスタ上でルールに合致しないプロセスを立ち 上げさせない 静的・動的双方のチェックによる制約 ※ open-policy-gent/gatekeeper, conftest のようなツールも存在しています
16 EKS on EC2 を利用する際の費用効率化 • Cluster Autoscalerで必要なインスタンスのみを利用 • SPOTインスタンスの活用により費用削減
• priority-expanderによるfallback • SPOTインスタンスは枯渇しうる • 立ち上がらなければOnDemandを利用 • Cluster Autoscalerの注意点 • 類似InstanceTypeを利用する必要がある • AZに対してそれぞれNodeGroupを作成 • InstanceTypeの変更はNodeGroup再作成 • ※ Karpenter 検討中 Spotインスタンスを利用した費用削減
17 EKSでサーバを安定稼働させる際に、 いくつかの仕組みを事前に導入する必要がある • Readiness gate / preStop sleep •
LBからのリクエスト制御 • 常時2台以上稼働させるためのpdb • AZ分散のためのTopologySpreadConstraints • リソース不足回避のためのClusterAutoscaler • Podの偏りを解消させるためのDescheduler • NLBリクエスト接続安定化のためのALB GracefulなAPI運用に向けて プラットフォームとして必要な機能を 技術で解決する
18 ©FOLIO Co., Ltd. Mission Keep Innovating The Financial Industry
Vision 技術と創造で“未来の金融”の礎となる
THANK YOU