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
マルチクラウドを使い倒すスタートアップの管理とサービス開発の裏側
Search
k.harada
February 25, 2021
Technology
0
810
マルチクラウドを使い倒すスタートアップの管理とサービス開発の裏側
AWS Startup Tech Meetup Online#2 LT資料
k.harada
February 25, 2021
Tweet
Share
Other Decks in Technology
See All in Technology
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
6
650
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
210
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
320
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
370
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
160
TypeScript、上達の瞬間
sadnessojisan
46
13k
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
3.9k
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
120
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
Featured
See All Featured
Docker and Python
trallard
40
3.1k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
Building Applications with DynamoDB
mza
90
6.1k
A designer walks into a library…
pauljervisheath
204
24k
How to Ace a Technical Interview
jacobian
276
23k
Thoughts on Productivity
jonyablonski
67
4.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
Gamification - CAS2011
davidbonilla
80
5k
Automating Front-end Workflow
addyosmani
1366
200k
Designing Experiences People Love
moore
138
23k
Git: the NoSQL Database
bkeepers
PRO
427
64k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Transcript
マルチクラウドを使い倒すスタートアップの AWS管理とサービス開発の裏側 株式会社DATAFLUCT 原⽥ ⼀樹
2 原⽥ ⼀樹 • (株)DATAFLUCT ‒ CTO 兼 PO/PdM ◦
インフラ・アプリ・データ分析をカバーする アーキテクト ◦ マルチクラウドAutoMLサービスのプロダク ト責任者とDX案件のテクニカルリードを兼任 • 経歴 ◦ AWS インテグレーター ◦ IBM Bluemix Community Leader ◦ Microsoft Apps Consultant ◦ Azure Technical Trainer
3 会社概要 沿⾰ ձ໊ࣾ גࣜձࣾ%"5"'-6$5 ʢσʔλϑϥΫτʣ ࢿຊۚ ສԁ ઃཱ
݄ ॅॴ ˟౦ژઍా۠߿ொ '-*'6--)6# ݄ %"5"'-6$5ϓϩδΣΫτ։࢝ ݄ %"5"'-6$5ۀ ݄ +"9" ϕϯνϟʔೝఆ ݄ ૿ࢿɺऔక$'0ʹࡉాࢯ͕ब ݄ ΤϯδΣϧϥϯυͰສԁௐୡ ݄ σοτͱΤΫΠςΟͰສԁͷՃௐୡ
DATAFLUCTとは 4 データサイエンス事業開発集団 Vertical SaaS SaaS開発 Platfrom Vertical Data Data
Platform
DATAFLUCTとは 5 創業2年で⾃社プロダクトを21本保有(未ローンチ分含む) 商圏分析 フードロス需 要予測 ⾃動発注 プライシング 顧客導線 解析
サイネージ 広告最適化 コンパクトシ ティ 収穫予測 衛星画像解析 ルート最適化 ダイナミック マップ CO2排出 不動産投資 ⾷品 MD⽀援 にぎわう 街づくり 移動販売 SNS広告 最適化 企業業績予測 再⽣ エネルギー ハザード AutoML PaaS 脳波と⽣産性 new new new new new 開発中 開発中 開発中 開発中 開発中 開発中 開発中
マルチクラウドAutoML 6 マルチクラウドAutoMLで⾼精度なモデル構築を 低コスト・迅速に実現する機械学習プラットフォーム
マルチクラウドを使い倒すスタートアップの AWS管理とサービス開発の裏側 − 統合認証環境とセキュリティ −
プロダクト共通のデータ基盤 8 【脅威 1】なりすまし SIEM * による リスクイベント分析 【脅威 2】改ざん
【脅威 3】否認 【脅威 4】情報漏洩 【脅威 6】特権の昇格 【脅威 5】サービス拒否 通信・蓄積データ暗号化 厳密なアクセス制御 ログの改ざんの防⽌ 厳密なアクセスログ管理 多層防御による不正防⽌ 運営メンバーの権限制御 DDoS 攻撃への対策 APIの流量制限 * Security Information and Event Management 特権ID管理 最⼩権限の徹底による 被害の局地化 外部からの攻撃防⽌だけでなく、内部の不正利⽤を仕組みで制御する ゼロ・トラストセキュリティ設計を推奨
ゼロ・トラストの実現に必要な要素 9 ID管理・権限制御 ・認証・認可により、権限を与えた「個⼈」を特定した上で許可を与える ・1 User・1 ID になるように運⽤することで「誰が・何を・いつ⾏ったのか」を特定 ・許可を与えていない悪意のある社員・外部からの不正アクセス者の操作を制限する デバイス・サーバー管理
・マルウェア対策による既知の攻撃対策 ・未知の攻撃に対しては SIEM (Security Information and Event Management) を利⽤し た収集したログからのふるまい検知で対策 ログ収集・監査 ・すべての通信ログを収集し、不正の発⽣を検知して即座に対策(SIEM) ・監査ログとして⻑期保存しておくことで、不正アクセス者の「否認」を防⽌
IDのベースをどこにするか? 10 Azure Active Directory Google Cloud Identity メインで利⽤するコミュニケーションツール⽤のIDをベースに 統合ID認証環境を⽤意することで複数のID管理から解放される
≒ 誰がどこにアクセスしているのかを識別しやすくなる
IDのベースをどこにするか? - DATAFLUCTの例 11 Azure Active Directory Google Cloud Identity
DATAFLUCT メンバー ID同期 Platform ⽤ アカウント Organizations Microsoft Azure Platform ⽤ サブスクリプション Product xx ⽤ サブスクリプション Google Cloud Platform Platform ⽤ プロジェクト Product xx ⽤ プロジェクト Product xx ⽤ アカウント AWS SSO Azure Portal にアクセスする際は、Google Cloud Identity のユーザー ID / PW でサインイン Google Cloud Console にアクセスする際は、Google Cloud Identity のユーザー ID / PW でサインイン AWS SSO ポータルに Google Cloud Identity のユーザー ID と 独⾃管理PW でサインイン ※ Azure AD から AWS SSO への ID 同期は可能だが、AWS SSO → Azure AD → Google Cloud Identity という⼆重 フェデレーション構成となりエラーとなるため、ID 同期の構成は実施しない サインイン サインイン サインイン Amazon Web Services Google Cloud Identityからの ID同期機能は未 サポート (サポート後に 実装検討) Federation
IDのベースをどこにするか? - 参考リソース 12 ・AWS 公式:G Suite アカウントを用いた AWS へのシングルサインオン
・AWS 公式:AWS Single Sign-On の ID ソースとしての Azure AD の接続 ・GCP 公式:GCP と Azure Active Directory の連携 ・Azure 公式:Azure Active Directory と Google Cloud Connector の統合
AWS環境での脅威検知 13 GuardDuty Amazon Macie CloudWatch Logs Amazon S3 (DataLake)
CloudTrail VPC Flow logs CloudWatch Insights / Alarm オブジェクトレベルの アクセスログの記録 機密情報の 検出・分類・保護 AWSアカウント内 の脅威検知 GuardDuty データソース CloudTrailのログを モニタリング アクセスログの 分析・可視化・アラート AWS Config CloudWatch Events AWS Security Hub 構成情報の 変更を監視 AWS環境のセキュリティと コンプライアンス状態を⼀元表⽰ 脅威イベント・ 変更イベント通知 • GuardDuty : 複数のAWS アカウント内の脅 威を検知・対応 • AWS Config: プラットフォームの設定変更 を検知 • Amazon Macie:データレイクに蓄積して いる機密情報の検出・保護
マルチクラウドを使い倒すスタートアップの AWS管理とサービス開発の裏側 − クロスアカウントアクセス −
複数のAWSアカウントから利⽤するデータ基盤 15 Datalake Platformアカウント プロダクトアカウント データ 投入 社内共通 Rawデータバケット 社内共通
構造化データバケット Crawling ETL Data Catalog登録 データ 投入 プロダクト Rawデータバケット プロダクト 構造化データバケット Crawling ETL Data Catalog登録 クロスアカウント SQL実行 SQL実行結果 保持バケット • AWSアカウントは予算管理単位やプロジェクト単位で分割する • データレイクなど複数のAWSアカウントから利⽤できるように共通化 • クロスアカウントアクセス⽤にGlue Data Catalogを⾃動⽣成する [クロスアカウント⽤変換処理例] ① S3にデータを投⼊ ② S3PUTをトリガーにLambda実⾏ ③ LambdaがETL Jobを実⾏ ④ ETL JobがS3のデータをベースに ⑤ データを変換して別のS3に保存し ⑥ Glue DataCatalogに登録 / 更新 ① ① ② ③ ⑤ ④ ⑥
まとめ • マルチクラウドはいきなり⼿を出すと⼤変 • 世の中にはたくさんのSaaSがあるため、ID統合認証環境 を⽤意すると管理者もユーザーも幸せに • エンジニアには技術選択の⾃由と説明責任を。 ただし ⾃由すぎるとAWSアカウント乱⽴するため、最低限のポ
リシーと共通ルールを設けて楽しいAWSライフを!
⼈材募集中! https://www.wantedly.com/companies/datafluct DATAFLUCT Wantedly