サービス 基 盤 を える AWSのアーキテクチャ Amazon Web Services Japan エコシステムソリューション 部 パートナーソリューションアーキテクト 梁 川
紹 介 梁 川 貴 史 (こやながわ たかし) パートナーソリューションアーキテクト APNさまへの 技 術 援 アーキテクチャの 検 討 援 やレビューなど 経 歴 ソフトハウスにて 開 発 とSI 業 務 を 経 験 電 機 メーカーにて 社 Webサービスの 設 計 から 運 まで 経 験 AWSのユーザとして4 年 半 1000 台 を 超 えるインスタンス 環 境 での 開 発 運 好 きなサービス Cloudwatch events AWS IoT
アマゾンのビジネス Eコマース ( 物 販 &デジタル) アドバタイジング マーケットプレイス ロジスティックス クラウド
Since 1995 規 模 の 経 済 ITの 活 で 薄 利 多 売 の ビジネスモデルを 実 現 低 コスト 化 への 改 善 値 下 げ カスタマーファースト 選 択 肢 の 増 加 スケールメリット テクノロジーカンパニー パートナーの 増 加 企 業 の 成 長 顧 客 満 足 度 の 向 上 利 用 量 の 増 加
Amazonのクラウドの 考 え 初 期 投 資 不 要 完 全 従 量 課 柔 軟 なキャパシティ 市 場 投 スピード セキュア グローバル 展 開 柔 軟 なインフラリソースを いつでも 誰 でも 安 く に れることができる
AWS グローバルネットワーク 13のリージョン 1. US EAST (Virginia) 2. US WEST (N. California) 3. US WEST 2 (Oregon) 4. EU WEST (Ireland) 5. JAPAN (Tokyo) 6. South America (Sao Paulo) 7. ASP 1 (Singapore) 8. ASP 2 (Sydney) 9. GovCloud 10.BJS 1 (Beijing China) limited 11.EU (Frankfurt) 12.Seoul(korea) 13.Mumbai(India) 13 Regions ( 地 域 ) 35 Availability Zones(データセンター 群 ) 54か 所 のエッジロケーション
世 界 中 に 広 がるAWSの 拠 点 AZ 間 はAWSの 専 線 で 接 続 AZ 間 はほぼ1ms 以 下 のレイテンシー AZ Transit 1データセンターあたり5 万 台 以 上 のサーバ データセンター 間 はAWSの 専 線 で 接 続 AZ AZ AZ AZ Transit
世 界 中 に 広 がるAWSの 拠 点 AZ 間 はAWSの 専 線 で 接 続 AZ 間 はほぼ1ms 以 下 のレイテンシー 収 集 されるデータのロケーションはお Transit 客 様 が 選 択 AZ 1データセンターあたり5 万 台 以 上 のサーバ データセンター 間 はAWSの 専 線 で 接 続 データは 配 置 されたリージョンから 許 可 なく 他 AZ AZ AZ リージョンへコピーされない AZ むしろ DR 的 であえて 動 でコピーする 設 定 を うことも 可 能 Transit
AWSのセキュリティに 対 する 取 り 組 み
リリースとセキュリティの 関 係 ティ 最 優 先 の 考 え 40% 以 上 がセキュリティに 関 す るアップデートorリリース
共 有 責 任 モデル AWSのセキュリティに 関 する 考 え お 客 様 お 客 様 のアプリケーションとコンテンツ プラットフォーム アプリケーション アイデンティティ &アクセス 管 理 オペレーティングシステム ネットワーク ファイア ウォール 構 成 顧 客 はクラウ ド 内 のセキュ リティに 責 任 を 持 ちます クライアント 側 で のデータ 暗 号 化 サーバー 側 での データ 暗 号 化 ネットワークトラ フィックの 保 護 AWS の 基 盤 サービス コンピュー ティング AWS グローバ ルインフラスト ラクチャ ストレージ データベース ネットワー キング アベイラビリ ティーゾーン リージョン エッジロケー ション AWS はクラウド のセキュリティに 責 任 を 持 ちます
専 家 の 監 査 : 透 明 性 と 正 確 性 専 の 監 査 は コンプライアンスに 関 して 偏 のない 解 を 提 供 します プロセスが 終 わることはなく 常 に 尽 し 続 けています これまでにご 覧 になったことがないようなモニタリングを 継 続 しています PCI DSS:Payment Card Industry Data Security Standard クレジットカード 情 報 および 取 引 情 報 を 取 り 扱 うための セキュリティ 基 準 https://aws.amazon.com/jp/compliance/compliance-latest-news/
AWSのセキュリティ 実 証 例 医 情 情 報 でも クラウドに 医 療 情 報 を 分 散 格 納 し 情 報 漏 えいや 災 害 時 の 情 報 消 失 防 に 対 処 Eコマースでも クラウド 上 で 顧 客 情 報 クレジット 決 済 を 管 理 金 融 サービスでも PCI DSSを 取 得 して 融 決 済 サービスを 提 供
本 で20,000 以 上 のお 客 様
AWSクラウド 上 で 構 築 エコシステムで 課 題 解 決! クラウドサービス 提 供 アプライアンス ネットワーク ベンダーのクラウド 対 応 システムインテグレーション
すべての IT を on AWSで 500 台 規 模 のプライベート クラウドを 丸 ごとAWSへ 業 務 システムの 全 インフラを 数 年 かけてAWSに 移 基 幹 システムをAWSに 移 その 他 の 業 務 システムも 順 次 AWSに 移 1000 台 以 上 のサーバーを ほぼ 全 てをクラウドへ 移 5 年 間 で40%のコスト 削 減
AWS 体 にて 継 続 的 なイノベーションを 加 速 24 AWS EMR Amazon VPC Amazon RDS 2009 Amazon SNS AWS Identity & Access Management Amazon Route 53 48 AWS Import/Export 2010 82 Amazon SES AWS Elastic Beanstalk AWS CloudFormation Amazon ElastiCache AWS Direct Connect GovCloud 2011 AWS Storage Gateway Amazon Dynamo DB Amazon CloudSearch Amazon SWF Amazon Glacier 159 Trusted Advisor Amazon Redshift AWS Data Pipeline 2012 Amazon Elastic Transcoder AWS OpsWorks Amazon CloudHSM Amazon AppStream Amazon CloudTrail Amazon WorkSpaces Amazon Kinesis 280 2013 516 AWS CodeDeploy AWS CodeCommit AWS CodePipeline Amazon EC2 Container Service Amazon Lambda Amazon Config Amazon CloudWatch Logs Amazon RDS for Aurora AWS KMS Amazon Cognito Amazon WorkDocs AWS Service Catalog AWS Directory Service Amazon Mobile Analytics 2014 AWS IoT 722 AWS Mobile Hub Amazon EC2 Container Registry AWS Database Migration Service Amazon Inspector Amazon RDS for MariaDB Amazon Kinesis Analytics Amazon Kinesis Firehose AWS Import/Export Snowball Amazon QuickSight Amazon Elasticsearch AWS WAF Amazon API Gateway AWS Device Farm Amazon EFS Amazon WorkMail Amazon Machine Learning 2015 Service
数 字 で るAWSクラウド 世 界 に 先 駆 け2006 年 より クラウドサービスを 提 供 世 界 に13か 所 のデータセンター 群 世 界 で190か 国 の100 万 を 超 えるお 客 様 が 利 年 間 で 合 計 700を 超 える(15 年 度 実 績 ) イノベーション 機 能 拡 張 / 改 善 世 界 に10,000を 超 えるパートナー エコシステム 累 計 で51 回 以 上 値 下 げをして 利 益 をお 客 様 へ 還 元
お 客 様 のアプリケーション ライブラリ & SDKs Java, PHP,.NET, Python, Ruby 管 理 インター フェイス Management Console, CLI 認 証 とログ IAM, Cloud Trail, Cloud HSM, Config ディレクトリ Directory Service モニタリング Cloud Watch, Trusted Advisor コード 管 理 CodeDeploy, CodeCommit, CodePipeline デプロイと 動 化 Elastic Beanstalk, Cloud Formation, OpsWorks エンタープライズアプリケーション WorkSpaces, WorkDocs, WorkMail モバイルサービス Mobile Analytics, Cognito, SNS データベース アプリケーションサービス サーバー ストレージ DBから アプリケーションまで RDS, DynamoDB, AppStream, Cloud Search, Redshift, ElastiCache SWF, SQS, SES, 70を 超 えるクラウドサービスを 提 供 Region コンピュート 処 理 EC2, Auto Scaling, Lambda Elastic Load Balancing, EC2 Container Service AZ ストレージ EBS, S3, Glacier, Storage Gateway ネットワーク VPC, Route 53, Direct Connect グローバルインフラ リージョン アベイラビリティゾーン エッジロケーション 分 析 Elastic MapReduce, Kinesis, Data Pipeline コンテンツ 配 信 CloudFront
クラウドネイティブ 化 による 本 業 集 中 への 変 遷 イメージ Application Application Application Middleware Middleware OS OS Server/Storage Network Appliance Data Center オンプレ クラウドファースト クラウドネイティブ
AWSサービスの 本 質 はビルディングブロック サービスを 組 み 合 わせることで 素 早 くアプリケーション 構 築 が 可 能
Amazon API Gateway Mobile Apps Web APIの 作 成 保 護 運 と 公 開 を 簡 単 に AWS API Gateway Cache API Gateway AWS Lambda functions 特 徴 (http://aws.amazon.com/jp/lambda/) OS キャパシティ 等 インフラの 管 理 不 要 バックエンドとしてLambda 既 存 Webシス テムを 利 可 能 スロットリング/キャッシュ Websites Services Amazon CloudWatch Monitoring Endpoints on Amazon EC2 / Amazon Elastic Beanstalk Any other publicly accessible endpoint 価 格 体 系 (http://aws.amazon.com/jp/lambda/pricing/) 呼 び 出 し 回 数 とキャッシュ 容 量 100 万 回 の 呼 び 出 しにつき$3.5 キャッシュ 容 量 に 応 じて$0.02/ 時 $3.8/ 時
Amazon API Gateway 提 供 するAPIのバージョン 管 理 API 利 状 況 のモニタ 管 理 とマネタイズ APIに 対 する 認 証 とアクセス 権 の 管 理 トラフィック 管 理 とAPIエンドポイントのアタックからの 保 護 インフラのセットアップおよび 管 理 とメンテナンス
スロットリング メソッド 単 位 でのスロットリングを 提 供 ステージ 単 位 で 全 体 的 に 同 設 定 にすることも 個 々のメソッドに 対 して 個 別 に 設 定 することも 可 能 スロットリングによりバックエンドのパフォーマンスと 可 性 を 維 持 許 容 するリクエスト/ 秒 を 指 定 バーストを 許 容 する 設 定 も 可 能 トークンバケットアルゴリズムによる 実 装 リミットを 超 えたリクエストがスロットリングされる HTTPステータス429(Too many request)をレスポンス 成 したSDKを 使 う 場 合 動 でリトライする
レスポンスのキャッシング レイテンシ 減 とバックエンドへのトラフィック 軽 減 キャッシュがあった 場 合 バックエンドを 呼 び 出 すことなくレスポンス ステージ 単 位 のキャッシュプロビジョニング 0.5GBから 最 237GBの 間 でプロビジョニング 細 やかな 設 定 メソッド 単 位 で 暗 号 化 とTTLを 設 定 クエリパラメータ ヘッダ パスパラメータ 単 位 でキャッシュ 有 無 を 設 定 キャッシュアルゴリズムはLRU(Least Recently Used)
AWS Lambda イベントをトリガーにコードを 実 するコンピュートサービス インフラ 管 理 不 要 いパフォーマンス 細 やかな 料 ビジネスロジックにフォーカスできる コードをアップロードするだけで あ とはAWS Lambdaが 以 下 をハンドリ ング イベントのレートに 合 う ようにLambdaが 動 で スケール 100ミリ 秒 単 位 でのコンピュート 時 間 に 対 する 価 格 設 定
AWS Lambda サービスの 組 み 合 わせ イメージのリサイズやサムネイルの 作 成 リアルタイムデータ 処 理 として 元 画 像 1 3 サムネイル 画 像 2 Amazon Kinesis AWS Lambda リアルタイム Amazon S3 Bucket イベント 値 チェックや 別 テーブルへのコピー AWS Lambda 別 テーブルを 更 新 集 計 処 理 Cloudwatch logsやsnsなど との 連 携 も 可 能 SWF Workerとして (バッチジョブフローのタスクとして) 画 像 処 理 AWS Lambda Amazon DynamoDB Table and Stream AWS Lambda プッシュ 通 知 配 信 処 理 AWS Lambda
従 来 型 アーキテクチャとAWS Lambdaの 較 S3へファイルアップロードされたら 解 析 するようなユースケース 従 来 型 アーキテクチャ AWS Lambda 1)ポーリング 1)Object 設 置 2)AWS Lambda 起 動 2)object 設 置 3)object 情 報 取 得 4) 処 理 queue 作 成 5) 処 理 queue ポーリング 6) 実 際 にやりたい 処 理 処 理 量 に 併 せてinstance の 増 減 管 理 EC2インスタンス 不 要 EC2 コスト 監 視 リアルタイム 性 の 向 上 従 来 型 アーキテクチャの6)のコードのみ コード 圧 縮 可 能
Amazon Relational Database Service (RDS) フルマネージドRDBMSサービス 特 徴 (http://aws.amazon.com/jp/rds/) MySQL / PostgreSQL / Oracle DB / SQL Serverに 対 応 数 クリックで 構 築 可 能 で バックアップやパッチの 適 フェイルオーバーは 動 で われる Oracle DB / SQL Serverのライセンスを 従 量 課 モデルで 利 可 能 (Oracle DB: Standard Edition One / SQL Server: Express Web Standard Edition), Enterprise Editionなど 他 のエディションをBYOL 可 能 Multi-AZ 配 置 (SQL ServerはVirginia, Oregon, Ireland リージョン)により2つのAZにMasterを 配 置 可 能 (Hot- Standby 構 成 ) / リージョン 間 でスナップショット 動 転 送 も 可 能 価 格 体 系 (http://aws.amazon.com/jp/rds/pricing/) インスタンスタイプに 応 じて Oracle / SQL Serverはライセンスの 時 間 課 ストレージ / バックアップストレージは 利 量 に 応 じて Multi-AZ 配 置 を 利 の 場 合 料 表 記 載 の 料
Amazon Cognito アイデンティティの 管 理 とクロスプラットフォームなデータ 同 期 Cognito Identity : AWSサービスへのゲートウェイ Amazon Cognito (AWS IAM / STS) Cognito Sync :クロスデバイスなデータ 同 期 特 徴 (http://aws.amazon.com/jp/cognito/) 複 数 のIDプロバイダや 独 認 証 基 盤 との 連 携 したユ ニークなアイデンティティの 作 成 管 理 クロスプラットフォーム クロスデバイスでのデータ 同 期 セキュリティのベストプラクティス 実 装 を 実 現 価 格 体 系 (http://aws.amazon.com/jp/cognito/pricing/) 無 料 利 枠 あたり100 万 回 の 同 期 オペレーション あたり10GBのデータストア 最 初 の12ヶ のみ それ 以 降 10000 回 の 同 期 オペレーションあたり$0.15 同 期 データストアの 容 量 :$0.15/GB
Amazon Simple Notification Service (SNS) マルチプロトコルに 対 応 したフルマネージド 通 知 サービス 1.Topicに メッセージを 送 信 2. マルチプロトコルで 通 知 HTTP HTTPS EMAIL 特 徴 (http://aws.amazon.com/jp/sns/) 個 々のメッセージ 送 信 や 多 数 の 受 信 者 にメッセージを ファンアウトすることが 可 能 AWSの 様 々なサービスと 連 携 して 通 知 可 能 フルマネージドなので 速 かつスケーラブルで 管 理 不 要 で 常 に 安 価 Publisher Publis h Topic Amazon SNS SQS Mobile Push Subscriber 価 格 体 系 (http://aws.amazon.com/jp/sns/pricing/) 無 料 枠 : Email/Email-JSON: 1,000 件 HTTP/HTTPS: 100,000 件 Simple Queue Service(SQS): 無 料 リクエスト 単 価 (64KBのチャンク 毎 に1リクエストとして 課 ) Email/Email-JSON: 100,000 件 あたり2 USD HTTP/HTTPS: 100 万 件 あたり0.6 USD Simple Queue Service(SQS): 無 料
Amazon Mobile Analytics モバイルのためのスケーラブルなデータ 収 集 と 可 視 化 Amazon S3 自 動 エクスポート 収 集 Amazon Mobile Analytics 参 照 Amazon Redshift 特 徴 (http://aws.amazon.com/jp/mobileanalytics/) モバイルアプリの 利 状 況 データを 規 模 に 収 集 可 視 化 して 把 握 することが 可 能 速 スケーラブルでクロスプラットフォーム S3 Redshiftへ データを 動 エクスポート 価 格 体 系 (http://aws.amazon.com/jp/mobileanalytics/pricing/) 収 集 するイベント 数 による 課 無 料 枠 あたり1 億 イベントまで それ 以 降 あたり100 万 イベントにつき$1
従 来 型 のサーバデザインと サーバレスアーキテクチャデザイン
典 型 的 なWebシステム Amazon Route 53 (ドメイン 名 割 り 当 て) CloudFront (コンテンツ 配 信 ) 東 京 リージョン AZ-1a ELB (ロードバランサ) AZ-1c EC2 EC2 S3 静 的 コンテンツ RDSマスタ 動 同 期 RDSスレーブ
クラウドファースト Web Front Application Availability Zone ELB DB Web Front Application Availability Zone 認 証 認 可 機 能 スロットリング コンテンツ 配 信 スケーリング キャッシュ 機 構 など
求 められる スピード モバイル 対 応 新 しい 要 求 セキュリ ティパッチ リソース 管 理 インフラ 運 用
クラウドネイティブ 静 的 コンテンツ 認 証 機 構 AIP 定 義 スロットリング 設 定 WebFront ファンクション DB NoSQL DB
1 S3のStaticWebsiteにアクセス 1 S3の 静 的 ウェブサイトホス ティング 機 能 でホストされた HTML, JS, CSSにアクセス 以 降 は 全 てAjaxで 処 理 する
2 Cognitoから 認 証 情 報 取 得 1 2 AWSのリソースにアクセス するための 時 的 な 認 証 情 報 をCognitoから 取 得
3 AjaxでAPI Gatewayを 叩 く 1 2 3 Cognitoから 取 得 した 認 証 情 報 を いる 新 規 コメント 投 稿 や 投 稿 内 容 の 取 得 を う
4 APIがLambdaをキック 1 2 3 LambdaでDynamoDBにア クセスし 情 報 の 登 録 / 取 得 を う No servers. 4
5 LambdaでDynamoDBを 操 作 1 情 報 の 取 得 と 更 新 を う 2 3 4 5
サーバレス 構 成 のまとめ 1 2 3 1 S3 静 的 ウェブサイトホスティング 2 Cognito Indentity & Cognito Sync 3 API Gateway (IAM 認 証, CORS) 4 Lambda Function 5 DynamoDB 4 5
まとめ サーバレスアーキテクチャ サーバがなくなるわけではなく お 客 様 がサーバ/インスタンスを 管 理 する 必 要 がなくなる アプリケーション 作 成 API 設 計 に 集 中 頂 くことが 可 能 導 のポイント REST API ステートレス 新 しい 技 術 に 対 する 検 討 管 理 テスト など