Slide 1

Slide 1 text

© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. クラウドを積極活⽤した サービスの開発のために 2022/11/15 アマゾン ウェブ サービス ジャパン 合同会社

Slide 2

Slide 2 text

アジェンダ AWS とは フェーズごとの技術課題と技術選定の際に考えるべきこと クラウドに最適化された設計とは︖ プロダクト開発に専念できる AWS の使い⽅

Slide 3

Slide 3 text

スタートアップにとって最も⼤事なことは︖ 答︓ビジネスにフォーカスすること(≒ スピード)

Slide 4

Slide 4 text

• 分かっているつもりで出来ていないスタートアップは多い • 本質的なところ以外 or その周辺でやるべきことが増える • セキュリティ / コンプライアンス対応 • ログの収集、集約、⻑期保存 • バックオフィスの改善、効率化、インテグレーション • 組織の拡⼤によりオーバーヘッドも増える ビジネスにフォーカスする

Slide 5

Slide 5 text

AWS(Amazon Web Services) とは

Slide 6

Slide 6 text

クラウドとは新しい IT リソース利⽤のカタチ 必要な時に、必要なだけ、低価格で IT リソース を提供

Slide 7

Slide 7 text

AWS の提供するサービスは仮想サーバーだけではありません︕ AWS はサーバーを貸してくれる会社︖︖ Amazon S3 (ストレージ) Amazon EC2 (仮想マシン) Amazon RDS (データベース)

Slide 8

Slide 8 text

幅広い機能︓200 以上のサービスを提供 ネットワーク アナリティクス コンピュート ストレージ & 配信 開発ツール 管理ツール セキュリティ アプリケーションインテグレーション モバイルサービス データベース IoT 機械学習 ゲーム Amazon EMR Amazon Kinesis Amazon Athena AWS Glue Amazon Elasticsearch Amazon Redshift Amazon QuickSight AWS Data Pipeline Amazon SNS Amazon SQS Amazon MQ AWS AppSync AWS Step Functions ELB AWS Elastic Beanstalk AWS Lambda Amazon EC2 Amazon ECS Amazon Aurora Amazon DynamoDB Amazon ElastiCache Amazon Redshift AWS DMS Amazon Neptune Amazon RDS AWS CodeBuild AWS CodeCommit AWS CodeDeploy AWS CodePipeline Amazon GameLift Amazon FreeRTOS AWS IoT Analytics AWS IoT Core AWS IoT Device Defender AWS IoT Greengrass Amazon Forecast Amazon Polly Amazon Rekognition Amazon SageMaker Amazon Translate Amazon CloudWatch AWS Auto Scaling AWS CloudFormation AWS CloudTrail AWS Config AWS Managed Services Amazon API Gateway AWS Amplify AWS AppSync AWS Device Farm Amazon Route 53 Amazon VPC AWS Direct Connect Amazon GuardDuty Amazon Inspector Amazon Cognito AWS Organizations AWS KMS AWS IAM Amazon EFS Amazon S3 AWS Snowball AWS Storage Gateway Amazon FSx Amazon EBS

Slide 9

Slide 9 text

多種多様なサービスを利⽤できるということは 多種多様なビジネスの 要件 を満たせるということ

Slide 10

Slide 10 text

• 全⽂検索エンジン • リアルタイムコミュニケーション(WebRTC) • ライブ動画配信 • レコメンデーション • モバイル / Web アプリ ビジネス要件に対して、最適なサービスを選ぶことが出来る Amazon OpenSearch Service Amazon Chime SDK Amazon Interactive Video Service Amazon Personalize AWS Amplify 今必要な機能だけでなく、ピボットや将来の機能拡張にも対応することが出来る

Slide 11

Slide 11 text

フェーズごとに異なる技術課題

Slide 12

Slide 12 text

S-Curve で⾒るフェーズごとの技術課題、特性の⼀例 Stage Growth Seed Eealy Mid Later

Slide 13

Slide 13 text

S-Curve で⾒るフェーズごとの技術課題、特性の⼀例 Stage Growth Seed Eealy Mid Later スピード コスト効率 AI/ML (API) カスタマーサポート バックオフィス スケーラビリティ、安定性、可⽤性 ログ分析 AI/ML (Custom) セキュリティ コンプライアンス カスタマーエンゲージメント ※ 詳細な要素、タイミングは ケースバイケースで異なります

Slide 14

Slide 14 text

S-Curve で⾒るフェーズごとの技術課題、特性の⼀例 Stage Growth Seed Eealy Mid Later スピード コスト効率 AI/ML (API) カスタマーサポート バックオフィス スケーラビリティ、安定性、可⽤性 ログ分析 AI/ML (Custom) セキュリティ コンプライアンス カスタマーエンゲージメント ※ 詳細な要素、タイミングは ケースバイケースで異なります AWS Amplify, Amazon Lightsail, Serverless Services, AWS Fargate etc AWS Amplify, AWS Activate, AWS Savings Plan, Spot Instances etc Amazon Forecast etc Amazon SageMaker Amazon Pinpoint, Amazon Personalize etc Amazon Connect, Amazon Lex etc AWS Amplify, Serverless Services, Auto Scaling etc Amazon S3, AWS Glue, Amazon Athena etc Amazon WorkSpaces, AWS SSO etc AWS IAM, Amazon GuardDuty etc AWS CloudTrail etc

Slide 15

Slide 15 text

成⻑に応じて起こること – Seed(創業期) - • 「とにかく早く作りたい、お⾦もまだない」 • いかに早く MVP を作るか • いかに早くフィードバックループを回すか • 余計な⼯数はかけていられない • 余計なコストもかけていられない あくまでスピードとコスト効率を意識しつつ ⼿軽に対応できるならやらない⼿はない

Slide 16

Slide 16 text

スタートアップが 技術選定の際に考えるべきこと

Slide 17

Slide 17 text

スタートアップがビジネスにフォーカスし、成功確率を⾼めるための考え⽅ •Undifferentiated Heavy Lifting の排除 •⽬の前の判断が Two-way Door なものでは ないか⾒極める

Slide 18

Slide 18 text

スタートアップがビジネスにフォーカスし、成功確率を⾼めるための考え⽅ •Undifferentiated Heavy Lifting の排除 •⽬の前の判断が Two-way Door なものでは ないか⾒極める

Slide 19

Slide 19 text

アイデアの実現の過程には 「差別化に繋がらない重労働」 が多く存在し、それらを減らすことができれ ば成功確率を上げることが出来る(意訳) • Web 2.0 Summit での Tim O’Reilly と Jeff Bezos との対談 https://www.flickr.com/photos/farber/292880154 Amazon CTO の Werner Vogels も メディア取材の際に 「Stop spending money on “undifferentiated heavy lifting”」 とコメント Undifferentiated heavy lifting

Slide 20

Slide 20 text

システム運⽤における Undifferentiated Heavy Lifting の例 • データベースの運⽤、バックアップ、レプリケーション設定 • 認証基盤の保守、管理、運⽤ • リアルタイム通信を⾏うサーバーの保守、管理、運⽤ • セキュリティパッチの管理、適⽤ • etc...

Slide 21

Slide 21 text

Undifferentiated heavy lifting Main 例︓データベース M S Replica レプリケーション Application Backup 定期取得 フェイルオーバー 上記以外 • ストレージ容量の確保 • パフォーマンスモニタリング • パッチ適⽤、監視設定 例︓ビデオ通話機能 配信サーバー 配信サーバー 接続先管理⽤ データベース • 配信サーバーのチューニング • 配信サーバーのスケーリング • 配信サーバーのパッチ適⽤ • 接続先の管理、ハンドリング 本当にやりたいのは、これらを⽤いた プロダクト開発 や 機能追加、あるいは それらを通した プロダクトの価値向上 のはず

Slide 22

Slide 22 text

Undifferentiated heavy lifting Master 例︓データベース M S Slave レプリケーション Application Backup 定期取 得 フェイルオーバー 上記以外 • ストレージ容量の確保 • パフォーマンスモニタリング • パッチ適⽤、監視設定 例︓ビデオ通話機能 配信サーバー 配信サーバー 接続先管理⽤ データベース • 配信サーバーのチューニング • 配信サーバーのスケーリング • 配信サーバーのパッチ適⽤ • 接続先の管理、ハンドリング 本当にやりたいのは、これらを⽤いた プロダクト開発 や 機能追加、あるいは それらを通した プロダクトの価値向上 のはず Amazon Aurora Amazon Chime SDK

Slide 23

Slide 23 text

スタートアップがビジネスにフォーカスし、成功確率を⾼めるための考え⽅ •Undifferentiated Heavy Lifting の排除 •⽬の前の判断が Two-way Door なものでは ないか⾒極める

Slide 24

Slide 24 text

Is it a one-way or a two-way door?

Slide 25

Slide 25 text

技術選定や設計における One-way Door Decisions • もちろんスピードは重要だが、その中でも全体に⼤きな影響を与えるもの、 後から変更することが難しいものはちゃんと考えて決めるべし。 「本当にそれで⼤丈夫か︖」 • データの置き場、将来的な活⽤⽅法 • データベース設計 • クラウドプラットフォーム • etc...

Slide 26

Slide 26 text

⽬の前の判断が Two-way Door なものではないか考える • 逆に、「それ試しにやってから後で変えることもできるよね」という 要素(=Two-way Door)では時間を使いすぎずに意思決定する − 「試しにやる」ハードルを下げる • ⽬の前の決断が One-way door なのか Two-way door なのか⾒極める − Two-way door なのに無駄に時間をかけていないか︖ • 少しの⼯夫で Two-way door な状況に出来ないか︖ • 実は⾃分が知らないだけではないのか︖

Slide 27

Slide 27 text

スタートアップがビジネスにフォーカスし、成功確率を⾼めるための考え⽅(再) •Undifferentiated Heavy Lifting の排除 •⽬の前の判断が Two-way Door なものでは ないか⾒極める

Slide 28

Slide 28 text

クラウドに最適化された (クラウドネイティブな)設計とは

Slide 29

Slide 29 text

クラウドネイティブな設計とは何か︖︖ Design for Failure な設計にすること

Slide 30

Slide 30 text

connect DevAx © 2021, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Everything fails all the time Dr. Werner Vogels Chief Technology Officer of Amazon.com

Slide 31

Slide 31 text

connect DevAx © 2021, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Design for Failure To Your Application

Slide 32

Slide 32 text

創業期スタートアップ向け「まずここから」Design for Failure • 想定上のアクセスが来てもダウンしない 冗⻑構成 (マルチAZ)/オートスケーリング • 問題のあるインフラがあっても置き換えてくれる オートヒーリング • データを誤って消しちゃった時にでも復旧できる バックアップ・リストア • (+α) アプリケーションがエラーになった際の リトライ処理やキューイング

Slide 33

Slide 33 text

Design for Failure な設計になっていないとどうなるか︖ • 例1: ⼤事な時(e.g. VC へデモを⾒せる時等) にダウンし ていることによる機会損失 • 例2: メンバーも少ないため、その都度発⽣する障害対応 だけで1⽇が過ぎてしまう

Slide 34

Slide 34 text

シード期において、Design for Failure を実現するために Q. 時間のないシード期のスタートアップにとって、Design for Failure を真⾯⽬に全て向き合うのは難しいのでは︖ • まずは、Design for Failure な設計が組み込まれたサービスを最初か ら選定できないか考える • スピードとコストとのトレードオフではない • むしろ対応に追われる⼯数がなくなりスピードアップ • 実装やアーキテクチャに依存するところはその先で考える • AWS の SA に相談も︕

Slide 35

Slide 35 text

プロダクト開発に専念できる AWS の使い⽅

Slide 36

Slide 36 text

オーソドックスな技術スタック

Slide 37

Slide 37 text

オーソドックスな技術スタック フロントエンド、 モバイルアプリ バックエンド Webサーバー バックエンド DBサーバー ⾔語・フレームワーク React, Vue, Swift, Kotlin, Java etc インフラ Web Hosting サービス、 BaaS etc ⾔語・フレームワーク Ruby on Rails, Laravel, Django, Express, Spring etc インフラ 仮想サーバー、コンテナ、 サーバーレス etc DB 種類 RDBMS, NoSQL, Fulltext Search, etc インフラ マネージドDBサービス, 仮想サーバー etc

Slide 38

Slide 38 text

負担をオフロードできる AWS のサービス フロントエンド、 モバイルアプリ バックエンド Webサーバー バックエンド DBサーバー Amplify Hosting AWS App Runner Amazon Aurora Serverless v2

Slide 39

Slide 39 text

Amplify Hosting

Slide 40

Slide 40 text

AWS Amplify は、 ⼩さくはじめて⼤きく育てる スタートアップに最適 爆速 でアプリを開発 簡単 にアプリを開発 スケール するフロント/モバイル アプリを開発

Slide 41

Slide 41 text

AWS Amplify の 4 つのコンポーネント Web やモバイルアプリ ケーションを⼀般的な ユースケースベースのガ イド付きワークフローで バックエンドを簡単に作 成、管理するツール Amplify CLI Web やモバイルアプリ ケーションと AWS を統 合するためのユースケー ス中⼼のライブラリ Amplify Libraries 継続的デプロイメントを 管理し、モダンな Web アプリケーションをビル ド、テスト、デプロイ、 そしてホスティングする ための AWS サービス Amplify Hosting AWS 上に最⼩限のコー ディングでフロントから バックまでのアプリケー ションを作成できるビ ジュアルな開発環境 Amplify Studio

Slide 42

Slide 42 text

4 つのコンポーネントの役割 .js .html .css クライアント

Slide 43

Slide 43 text

4 つのコンポーネントの役割 .js .html .css クライアント Amplify CLI Amplify Libraries Amplify Hosting Amplify Studio

Slide 44

Slide 44 text

AWS Amplify の 4 つのコンポーネント Web やモバイルアプリ ケーションを⼀般的な ユースケースベースのガ イド付きワークフローで バックエンドを簡単に作 成、管理するツール Amplify CLI Web やモバイルアプリ ケーションと AWS を統 合するためのユースケー ス中⼼のライブラリ Amplify Libraries 継続的デプロイメントを 管理し、モダンな Web アプリケーションをビル ド、テスト、デプロイ、 そしてホスティングする ための AWS サービス Amplify Hosting AWS 上に最⼩限のコー ディングでフロントから バックまでのアプリケー ションを作成できるビ ジュアルな開発環境 Amplify Studio

Slide 45

Slide 45 text

4 つのコンポーネントの役割 .js .html .css クライアント Amplify Hosting

Slide 46

Slide 46 text

AWS Amplify Hosting ウェブアプリや静的ウェブサイトのため のフルマネージドなホスティングサービ ス 簡単なカスタムドメイン設定も可能 継続的デプロイメント Amplify CLI で Infrastructure as Code( IaC)を⽣成 Amplify CLI やコンソールからのデプロ イ AWS Amplify CLI AWS Amplify Console

Slide 47

Slide 47 text

Amplify Hosting の利⽤フロー

Slide 48

Slide 48 text

Amplify Hosting の主な機能 グローバルで利⽤可能 プルリクエストプレビュー カスタムドメインの簡単設定 シンプルな 継続的ワークフロー パスワード保護

Slide 49

Slide 49 text

Amplify Hosting - 環境の分割 接続したブランチ毎に ホスティングされ、URL が払い出される

Slide 50

Slide 50 text

Amplify Hosting - Pull Request Previews https://docs.aws.amazon.com/amplify/latest/userguide/pr-previews.html Pull Request が作成されるたびに⼀時的 なウェブサイトをホスト ホストした URL を Git Hub の Pull Request ページに載せる ⾮エンジニア職でも気軽に Pull Request レビューに参加することが可能に Pull Request が閉じたら⼀時的なウェブ サイトもクローズ

Slide 51

Slide 51 text

Amplify Hosting - ベーシック認証 https://docs.aws.amazon.com/amplify/latest/userguide/access-control.html 接続したブランチ毎に Username/Password を設定して ベーシック認証をかけることが可能

Slide 52

Slide 52 text

もっと AWS Amplify を知りたい⽅へ 公式ドキュメント https://docs.amplify.aws AWS Summit 2021 「Web・モバイルアプリ開発を加速させる AWS Amplify」 https://d1.awsstatic.com/events/jp/2021/summit-online/AWS- 47_AWS_Summit_Online_2021_FWM01.pdf ワークショップ https://amplify-sns.workshop.aws/ja/ Amplify 学習リソース集 https://aws-amplify-jp.github.io/resources Amplify Japan User Group Slack https://github.com/aws-amplify-jp/awesome-aws-amplify-ja#slack

Slide 53

Slide 53 text

AWS App Runner

Slide 54

Slide 54 text

AWS は幅広い選択肢を提供

Slide 55

Slide 55 text

AWS は幅広い選択肢を提供 200 以上のサービス

Slide 56

Slide 56 text

ウェブアプリケーションを AWS 上で動かしたい場合

Slide 57

Slide 57 text

AWS サービスを組み合わせてインフラを構築 柔軟性が⾼い VPC (ネットワーク) Fargate (コンピュート) ECS (オーケストレーション) ALB (ロードバランサ) AWS Auto Scaling (オートスケール) CodeBuild (CI/CD) ⼿間がかかる

Slide 58

Slide 58 text

構築済みのインフラにすぐにデプロイ AWS App Runner

Slide 59

Slide 59 text

App Runner とは インフラや AWS についての経験がなくても、 コンテナ化されたウェブアプリケーションや API を 簡単かつ迅速に AWS 上で動かせるサービス

Slide 60

Slide 60 text

AWS App Runner の主な特徴 シンプルな オートスケーリング 統合された メトリクス・ロギング機能 シンプルな セットアップ

Slide 61

Slide 61 text

AWS App Runner の主な特徴 シンプルな オートスケーリング 統合された メトリクス・ロギング機能 シンプルな セットアップ

Slide 62

Slide 62 text

App Runner 上にウェブアプリケーションをデプロイ App Runner Amazon ECR Image Repo 動かしたいウェブアプリケーションを指定する

Slide 63

Slide 63 text

App Runner 上にウェブアプリケーションをデプロイ App Runner GitHub 動かしたいウェブアプリケーションを指定する GitHub Repo

Slide 64

Slide 64 text

App Runner 上にウェブアプリケーションをデプロイ App Runner GitHub ソースコードを取得 コンテナイメージをビルドしてデプロイ コンテナインスタンス ロードバランサー ネットワーク (VPC) App Runner GitHub Repo

Slide 65

Slide 65 text

App Runner 上にウェブアプリケーションをデプロイ App Runner コンテナインスタンス ロードバランサー ネットワーク (VPC) App Runner コンテナイメージを取得 コンテナイメージをデプロイ Amazon ECR Image Repo

Slide 66

Slide 66 text

App Runner 上にウェブアプリケーションをデプロイ コンテナインスタンス ロードバランサー ネットワーク (VPC) App Runner エンドユーザー デフォルトドメイン https://xxxxxxxx..awsapprunner.com

Slide 67

Slide 67 text

AWS App Runner の主な特徴 シンプルな オートスケーリング 統合された メトリクス・ロギング機能 シンプルな セットアップ

Slide 68

Slide 68 text

App Runner - シンプルなオートスケーリングの設定 オートスケールのしきい値 となるリクエスト数 コンテナインスタンスの 最⼩数 コンテナインスタンスの 最⼤数 デフォルト の設定値

Slide 69

Slide 69 text

オートスケール コンテナインスタンス ロードバランサー ネットワーク (VPC) App Runner エンドユーザー デフォルトドメイン エンドユーザー エンドユーザー

Slide 70

Slide 70 text

オートスケール コンテナインスタンス ロードバランサー ネットワーク (VPC) App Runner エンドユーザー デフォルトドメイン エンドユーザー エンドユーザー

Slide 71

Slide 71 text

AWS App Runner の主な特徴 シンプルな オートスケーリング 統合された メトリクス・ロギング機能 シンプルな セットアップ

Slide 72

Slide 72 text

ログ・メトリクス ロードバランサー App Runner 開発者 App Runner コンソール コンテナインスタンス ログとメトリクスを⾃動で収集 App Runner コンソールから確認

Slide 73

Slide 73 text

App Runner - Console でのログの閲覧 ⾃分でログエージェントを実装する必要なし

Slide 74

Slide 74 text

App Runner - Console でのメトリクスの閲覧 リクエスト数、応答のレイテンシ、HTTP 2XX 4XX 5XX それぞれの数 を App Runnerのコンソール画⾯で閲覧可能

Slide 75

Slide 75 text

もっと AWS App Runner を知りたい⽅へ 公式ドキュメント https://docs.aws.amazon.com/apprunner/latest/dg/what-is-apprunner.html ブログ https://aws.amazon.com/jp/blogs/news/introducing-aws-app-runner/ ワークショップ https://www.apprunnerworkshop.com/ ロードマップ https://github.com/aws/apprunner-roadmap/projects/1

Slide 76

Slide 76 text

Amazon Aurora Serverless v2

Slide 77

Slide 77 text

AWS purpose-built database 従来のアプリ ケーション、ERP、 CRM、e コマース トラフィックの 多いウェブアプ リ、e コマースシ ステム、ゲーム アプリケーショ ン コンテンツ管理、 カタログ、ユー ザープロファイ ル キャッシュ、 セッション管理、 ゲームのリー ダーボード、地 理空間アプリ ケーション 不正検出、ソー シャルネット ワーク、レコメ ンデーションエ ンジン IoT アプリケー ション、DevOps、 産業テレメトリ 記録システム、 サプライチェー ン、銀⾏トラン ザクション 産業⽤機器のメ ンテナンス、取 引監視、フリー ト管理、ルート 最適化

Slide 78

Slide 78 text

Amazon Aurora 優れた性能と拡張性 クラウド向けに再設計された MySQL, PostgreSQL と互換性のある RDBMS 商⽤データベースの性能と可⽤性を 1/10 のコストで ⾼可⽤性と耐久性 ⾼い安全性 フルマネージド

Slide 79

Slide 79 text

Amazon Aurora のアーキテクチャ ストレージノード 分散ストレージシステム データベース⽤に設計された 専⽤の分散ストレージシステム データは3箇所に分散された数百 のストレージノードに6つのコ ピーとして保存

Slide 80

Slide 80 text

Amazon Aurora のアーキテクチャ ストレージノード 分散ストレージシステム データベース⽤に設計された 専⽤の分散ストレージシステム データは3箇所に分散された数百 のストレージノードに6つのコ ピーとして保存 SQL を実⾏するインタフェース は分散ストレージを共有するこ とで、責務が分離 SQL トランザクション キャッシュ コンピュートノード

Slide 81

Slide 81 text

フルマネージド化による管理負荷の軽減 拡張性 ⾼可⽤性 DB バックアップ DB パッチ適⽤ DB インストール/構築 OS パッチ適⽤ OS インストール サーバーメンテナンス ハードウェア資産管理 電源/ネットワーク/空調 お客様 スキーマのデザイン クエリの作成 データベースの最適化 AWS 時間のかかる データベース管理タスクから解放され、 アプリケーションやビジネスに集中できる アプリケーション最適化

Slide 82

Slide 82 text

データベース運⽤負荷の軽減 分散ストレージシステム SQL トランザクション キャッシュ ライターインスタンス SQL トランザクション キャッシュ リーダーインスタンス リーダーインスタンス SQL トランザクション キャッシュ 迅速なインスタンス追加

Slide 83

Slide 83 text

データベース運⽤負荷の軽減 障害時の⾃動復旧① 分散ストレージシステム SQL トランザクション キャッシュ ライターインスタンス SQL トランザクション キャッシュ リーダーインスタンス リーダーインスタンス SQL トランザクション キャッシュ

Slide 84

Slide 84 text

データベース運⽤負荷の軽減 障害時の⾃動復旧② 分散ストレージシステム SQL トランザクション キャッシュ ライターインスタンス SQL トランザクション キャッシュ リーダーインスタンス ライターインスタンス SQL トランザクション キャッシュ 通常30秒以内に完了

Slide 85

Slide 85 text

データベース運⽤負荷の軽減 障害時の⾃動復旧③ 分散ストレージシステム SQL トランザクション キャッシュ リーダーインスタンス ライターインスタンス SQL トランザクション キャッシュ SQL トランザクション キャッシュ リーダーインスタンス

Slide 86

Slide 86 text

© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. データベース運⽤負荷の軽減 ストレージ⾃動拡張① 分散ストレージシステム SQL トランザクション キャッシュ ライターインスタンス SQL トランザクション キャッシュ リーダーインスタンス リーダーインスタンス SQL トランザクション キャッシュ データが 増えた︕

Slide 87

Slide 87 text

© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. データベース運⽤負荷の軽減 ストレージ⾃動拡張② 分散ストレージシステム SQL トランザクション キャッシュ ライターインスタンス SQL トランザクション キャッシュ リーダーインスタンス リーダーインスタンス SQL トランザクション キャッシュ 10GB単位で128TBまで⾃動的に拡張

Slide 88

Slide 88 text

© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. バックアップ⾃動化 分散ストレージシステム SQL トランザクション キャッシュ ライターインスタンス SQL トランザクション キャッシュ リーダーインスタンス リーダーインスタンス SQL トランザクション キャッシュ Amazon Simple Storage Service (Amazon S3) 継続的な増分バックアップ ・バックアップ保持期間は1〜35⽇ ・保持期間内の任意の時点に復元できる

Slide 89

Slide 89 text

© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. サーバレスデータベースとして ワークロードの拡⼤

Slide 90

Slide 90 text

© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Aurora Serverless v2 アプリケーションのニーズに応じて⾃動的に容量を拡張 インスタンスタイプの⼀つとして簡単なセットアップ 秒単位のシンプルな従量課⾦ 瞬時に拡張し、要求の厳しいアプリケーションをサポート データベースのキャパシティ管理の⼼配からの解放

Slide 91

Slide 91 text

© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 急激なアクセス増減対応の選択肢 Storage fleet ⾃動スケール Amazon Aurora Serverless v2

Slide 92

Slide 92 text

© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 急激なアクセス増減対応の選択肢 Storage fleet Compute fleet ⾃動スケール ⾃動スケール Amazon Aurora Serverless v2

Slide 93

Slide 93 text

© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 急激なアクセス増減対応の選択肢 Storage fleet Compute fleet ⾃動スケール ⾃動スケール Amazon Aurora Serverless v2 • インプレーススケール:CPUやメモリのリ ソースなどを動的に追加することで、1秒以 内にスケーリングが可能 • パフォーマンス影響なし:数十万トランザク ションを実行中でも、スケーリングによる影 響はない https://aws.amazon.com/jp/blogs/news/amazon-aurora-serverless-v2-is- generally-available-instant-scaling-for-demanding-workloads/

Slide 94

Slide 94 text

© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. Aurora Serverless v2 のシームレスなスケーリング Aurora Serverless v2 のスケーリング例 (定期的に同時実⾏数を上げながら OLTP 処理を実施) 同時実⾏数 が増加 同時実⾏数 が増加 同時実⾏数 が増加 処理終了 同時実⾏数が増加して、必要なリソースが 増加した時点で、Aurora Serverless v2の キャパシティが増加(⻘線) また、スケール時にトランザクション (⾚線のCommitThroughput)を阻害しない 処理が終了して、リソースが不要 になると徐々にキャパシティが 減少(⻘線)

Slide 95

Slide 95 text

もっと Amazon Aurora Serverless v2 を知りたい⽅へ 公式ドキュメント https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.html ブログ https://aws.amazon.com/jp/blogs/news/amazon-aurora-serverless-v2-is-generally-available- instant-scaling-for-demanding-workloads/ Deep Dive https://www.youtube.com/watch?time_continue=350&v=b2Tl6SsWC-M&feature=emb_title

Slide 96

Slide 96 text

負担をオフロードできる AWS のサービス フロントエンド、 モバイルアプリ バックエンド Webサーバー バックエンド DBサーバー Amplify Hosting AWS App Runner Amazon Aurora Serverless v2

Slide 97

Slide 97 text

• スタートアップにとって⼤事なことはビジネスにフォーカ スできること • スタートアップが技術選定の際に考えるべきこと • Undifferentiated Heavy Lifting の排除 • ⽬の前の判断が Two-way Door なものではないか⾒極める • まずは、Design for Failure な設計が組み込まれたサービ スを選定できないか考える さいごに – お伝えしたかったこと -

Slide 98

Slide 98 text

Thank you © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Slide 99

Slide 99 text

© 2021, Amazon Web Services, Inc. or its affiliates. All rights reserved. Appendix 1. 簡易セキュリティチェック項⽬

Slide 100

Slide 100 text

簡易セキュリティチェック項⽬ 1/2 1. ルートユーザーにMulti-Factor Authentication (MFA) は設定していますか︖ 2. Amazon S3 バケット許可は適切な設定になっていますか︖ すべてのユーザーにアップロードや削除のアクセス許可を付与していませんか︖ 3. セキュリテイグループでリソースへの無制限アクセスを許可していませんか︖ 4. セキュリティグループで特定のポートに無制限アクセスを許可していませんか︖ 5. Amazon RDS セキュリティグループに対する過度なアクセス権限は設定されていませんか︖ 特定のセキュリテイグループまたは特定のIPアドレスからのみの許可となっていますか︖

Slide 101

Slide 101 text

簡易セキュリティチェック項⽬に対するTo Do 1/2 1. ルートユーザーにMulti-Factor Authentication (MFA) は設定していますか︖ ⇒ハードウェアまたは仮想デバイスのMFAトークンを使⽤することで、トークン所持者のみがログイン可能となります。 ⇒参考ドキュメント︓AWS での多要素認証 (MFA) の使⽤ 2. Amazon S3 バケット許可は適切な設定になっていますか︖ すべてのユーザーにアップロードや削除のアクセス許可を付与していませんか︖ ⇒適切な権限を設定をすることで、意図しないファイルの読み取り・削除、不適切なファイルのアップロードから 守ることができます。 ⇒参考ドキュメント︓Amazon S3のセキュリティベストプラクティス 3. セキュリテイグループでリソースへの無制限アクセスを許可していませんか︖ 4. セキュリティグループで特定のポートに無制限アクセスを許可していませんか︖ ⇒例えば、インバウンド通信でHTTPSのポート 443のみを許可することで、HTTPS以外の意図しない通信を 受け⼊れないようにできます。 ⇒参考ドキュメント︓VPCのセキュリティのベストプラクティス 5. Amazon RDS セキュリティグループに対する過度なアクセス権限は設定されていませんか︖ 特定のセキュリテイグループまたは特定のIPアドレスからのみの許可となっていますか︖ ⇒必要なシステムに対してのみ許可することで、意図しないデータの参照・更新から データベースを守ることができます。 ⇒参考ドキュメント︓Amazon RDSのセキュリティのベストプラクティス

Slide 102

Slide 102 text

簡易セキュリティチェック項⽬ 2/2 6. IAM パスワードポリシーやパスワードコンテンツの要件は 有効化していますか︖ 7. IAMアクセスキーは定期的にローテーションしていますか︖ 8. AWS CloudTrail ロギングは有効化されていますか︖ 9. ⾮推奨のランタイムを使⽤する AWS Lambda 関数はありませんか︖

Slide 103

Slide 103 text

簡易セキュリティチェック項⽬に対するTo Do 2/2 6. IAMパスワードポリシーやパスワードコンテンツの要件は有効化していますか︖ ⇒容易に推測されないパスワードを使⽤することで、総当たり攻撃などからの耐性を強くすることができます。 ⇒参考ドキュメント︓ IAM でのセキュリティのベストプラクティス 7. IAMアクセスキーは定期的にローテーションしていますか︖ ⇒使⽤していないIAMアクセスキーを停⽌させましょう。使⽤している場合は、定期的にローテーションしましょう ⇒参考ドキュメント︓ IAM でのセキュリティのベストプラクティス 8. AWS CloudTrail ロギングは有効化されていますか︖ ⇒CloudTrailはAWSインフラ全体での活動の証跡を記録します。万⼀の際の問題切り分けの⼿がかりの⼀つとなります。 ⇒参考ドキュメント︓組織の証跡の作成 9. ⾮推奨のランタイムを使⽤する AWS Lambda 関数はありませんか︖ ⇒⾮推奨のランタイムはすでにセキュリティパッチなどの提供を停⽌しています。 サポート中のランタイムへのアップデートを推奨します。 ⇒参考ドキュメント︓ランタイムの⾮推奨化に関するポリシー