Location via proxy:
[ UP ]
[Report a bug]
[Manage cookies]
No cookies
No scripts
No ads
No referrer
Show this form
Submit Search
Submit Search
Upload
aws mackerel twilio_handson_public
•
1 like
•
632 views
T
Tomoaki Sakatoku
Follow
https://mackerelio.connpass.com/event/53750/
Read less
Read more
Report
Share
Report
Share
1 of 48
Download now
Download to read offline
More Related Content
aws mackerel twilio_handson_public
1.
AWS Lambda Hands-on - AWS Lambda, API Gateway - アマゾン ウェブ
サービス ジャパン パートナー ソリューション アーキテクト 酒徳 知明 (Sakatoku Tomoaki)
2.
⾃⼰紹介 酒徳 知明(さかとく ともあき) エコシステム
ソリューション部 パートナー ソリューション アーキテクト 仕事 • エンタープライズ SIパートナー様のご⽀援 • ISVパートナー様のご⽀援
3.
本⽇お話する内容 • サーバーレス アーキテクチャを⽀えるAWS
サービス • Amazon Lambda • API Gateway • サーバレス アーキテクチャとエコシステム (demo) • mackerel • Twilio • ハンズオン
5.
サーバーレス アーキテクチャを⽀える AWS サービス Amazon Lambda API Gateway
6.
Networking AnalyticsCompute Storage &
Content Delivery Developer Tools Management Tools Security & Identity Mobile Services Database Business Productivity, Desktop & App Streaming S3 CloudFront EFS Glacier Storage G ateway AppStream CloudSearch SESSQS Mobile A nalytics Cognito Device Farm SNS RDS DynamoDB ElastiCache RedShift WorkSpaces WorkDocs WorkMail Lambda ECSEC2 VPC Direct Connect Route 53 EMR Data Pipeline KinesisELB QuickSight Elasticsearch Service CodeCommit CloudWatch Cloud Formation CloudTrail Config OpsWorks ServiceC atalog IAM Directory Service Trusted A dvisor WAFSnowball DMS IoT IoT Game Dev Mobile Hub ElasticBeanstalk ACM Inspector GameLift CodePipeline CodeDeploy AWS が提供するサービス Lightsail AWS Batch Application Discovery Service SMS Pinpoint Application Services API Gateway Elastic Transcoder SWF Step Functions Messaging Migration X-Ray CodeBuild AI LexPolly Rekognition Machine Learning KMS ShieldOrganizations
7.
“No server is
easier to manage than no server” -Werner Vogels, CTO Amazon-
8.
AWSのサーバーレス プラットフォーム Amazon ECS (コンテナサービス) AWS Lambda (コード、ファンクション) Amazon EC2 (仮想サーバー) インスタンス単位 コンテナ単位
ファンクション単位 • 必要なときのみのコー ドの実⾏ • インフラの構成、管理 からの開放 • サーバー環境の管理を ⾏いたい • スケール ロジックをカ スタマイズしたい • OS,ネットワーク、ス トレージを管理したい • OSより上位レイヤーを 管理したい
9.
AWS Lambdaとは 特徴 (http://aws.amazon.com/jp/lambda/) • OS、キャパシティ等インフラの管理不要 •
S3、Kinesis、SNS等でのイベント発⽣を元 にユーザが⽤意したコード(Node.js)を実 ⾏ • ユーザアプリからの同期/⾮同期呼び出し 価格体系 (http://aws.amazon.com/jp/lambda/pricing/) • コード実⾏時間(100ms単位) • Lambdaファンクションへのリクエスト回数 • 1⽉あたり100万リクエスト、400,000GB/秒 が無料で利⽤可能 イベントをトリガーにコードを実⾏するコンピュートサービス AWS LambdaAmazon S3 Bucket イベント 元画像 サムネイル画像 1 2 3 AWS LambdaAmazon DynamoDB Table and Stream プッシュ通知 別テーブルを更 新 ■イメージのリサイズやサムネイルの作成 ■値チェックや別テーブルへのコピー
11.
Node.js, Java, Python, C#
13.
従来型アーキテクチャとAWS Lambdaの⽐較 S3へファイルアップロードされたら解析するようなユースケース 1) ポーリング 2)
object 設置 3) object 情報取得 4) 処理queue作成 5) 処理queue ポーリン グ 6) 実際にやりたい処理 処理量に併せてinstanceの 増減管理 EC2インスタンス不要 ・EC2 コスト ・EC2スケーラビリティ試験 ・監視 ・リアルタイム性の向上 従来型アーキテクチャの6)のコードのみ ・コード圧縮可能 1) Object 設置 2) AWS Lambda起動 従来型アーキテクチャ AWS Lambda
14.
Amazon S3 Amazon DynamoDB Amazon Kinesis AWS CloudFormation AWS CloudTrail Amazon CloudWatch Amazon SNSAmazon SES Amazon API Gateway Amazon Cognito
AWS IoT Amazon Alexa Cron events DATA STORES ENDPOINTS REPOSITORIES EVENT/MESSAGE SERVICES AWS Lambdaと連携するイベントソース Amazon Config Amazon Aurora
15.
AWS Lambda の使い所 AWS Lambda Amazon
S3 Bucket イベント 元画像 サムネイル画像 1 2 3 AWS Lambda Amazon DynamoDB Table and Stream プッシュ通知 別テーブルを更 新 ■イメージのリサイズやサムネイルの作成 ■値チェックや別テーブルへのコピー AWS LambdaAmazon Kinesis ■リアルタイムデータ処理として ■SWF Workerとして (バッチジョブフローのタスクとして) 集計処理 リアルタイム Cloudwatch logsやSNSなど との連携も可能 AWS Lambda AWS Lambda 画像処理 配信処理
16.
Amazon API Gateway 特徴 (http://aws.amazon.com/jp/lambda/) • OS、キャパシティ等インフラの管理不要 •
バックエンドとしてLambda、既存Webシ ステムを利⽤可能 • スロットリング/キャッシュ 価格体系 (http://aws.amazon.com/jp/lambda/pricing/) • 呼び出し回数とキャッシュ容量 • 100万回の呼び出しにつき$3.5 • キャッシュ容量に応じて$0.02/時〜$3.8/時 Web APIの作成・保護・運⽤と公開を簡単に Mobile Apps Websites Services API Gateway AWS Lambda functions AWS API Gateway Cache Endpoints on Amazon EC2 / Amazon Elastic Beanstalk Any other publicly accessible endpoint Amazon CloudWatch Monitoring
17.
Amazon API Gateway 提供するAPIのバージョン管理 API利⽤状況のモニタ、管理とマネタイズ APIに対する認証とアクセス権の管理 トラフィック管理とAPIエンドポイントのアタックからの保護 インフラのセットアップおよび管理とメンテナンス
18.
スロットリング メソッド単位でのスロットリングを提供 • ステージ単位で全体的に同⼀設定にすることも、個々のメソッドに対し て個別に設定することも可能 • スロットリングによりバックエンドのパフォーマンスと可⽤性を維持 •
許容するリクエスト/秒を指定 • バーストを許容する設定も可能 • トークンバケットアルゴリズムによる実装 リミットを超えたリクエストがスロットリングされる • HTTPステータス429(Too many request)をレスポンス • ⽣成したSDKを使う場合、⾃動でリトライする http://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/api-gateway-request-throttling.html
19.
レスポンスのキャッシング レイテンシ減とバックエンドへのトラフィック軽減 • キャッシュがあった場合、バックエンドを呼び出すことなくレスポンス ステージ単位のキャッシュプロビジョニング • 0.5GBから最⼤237GBの間でプロビジョニング 細やかな設定 •
メソッド単位で暗号化とTTLを設定 • クエリパラメータ、ヘッダ、パスパラメータ単位でキャッシュ有無を設 定 キャッシュアルゴリズムはLRU(Least Recently Used)
20.
サーバレスなアプリケーションモデル イベントソース ファンクション サービスなど Java C# Node.js Python イベント S3にオブジェクトが作られる Kinesisにストリームデータが保存される HTTPSによるリクエスト etc...
21.
ユースケース Web Applications Data Processing ChatbotsBackends </></> Amazon Alexa Autonomous IT
22.
ユースケース Data Processing Backend</></> Autonomous IT データの変更、システム状態の遷移もしくはユーザによ るアクションといったものに対応したコードの実⾏ AWS内の状態やデータ変更に応じたシステム処理の実 ⾏、⾃動化 Web、モバイル、IoTや外部APIへのリクエストを扱う バックエンドロジックの実⾏
23.
Backend: Web Application https://github.com/awslabs/lambda-refarch-webapp
24.
Backend: Mobile Backend https://github.com/awslabs/lambda-refarch-mobilebackend
25.
IoT Backend https://github.com/awslabs/lambda-refarch-iotbackend
26.
Data Processing: File Processing https://github.com/awslabs/lambda-refarch-fileprocessing
27.
Data Processing: Stream Processing https://github.com/awslabs/lambda-refarch-streamprocessing
28.
Autonomous IT: Extract, Transform and Load
29.
サーバレス アーキテクチャとエコシステム mackerel Twilio
30.
サンプル:Monitoring & Alerting AWS LambdaAWS APIGWMonitoring & Alerting Lambda Function 閾値監視 APIGW EndpointをKick
31.
サンプル:Lambda Function Blueprint
33.
Speech Platform Skills Weather ASR NLU TTS “speak” directive intent recognition result recognize intent recognition result text/SSML Alexa’s voice Alexa, 今⽇の天気は? * Orchestration -
ASR, NLU, TTS, Application Services * Intent Routing to Applications * Session Management * Dialog Management – multi-turn interactions * Abstraction of device features to applications
34.
You Pass Back a Textual or Audio Response You Pass Back a Graphical Response Alexa Converts Text-to-Speech (TTS)
& Renders Graphical Component Respond to Intent through Text & Visual User Makes a Request Audio Stream is sent up to Alexa Alexa Identifies Skill & Recognizes Intent Through ASR & NLU Alexa sends Customer Intent to Your Service Your Service processes Request サンプル:Alexa Skill Kit との連携 ASK “JUDY HOPS” “Find My Phone”
35.
Amazon Rekognition ディープラーニングを利⽤した画像認識サービス 状況&物体の認識 表情の解析 顔の⽐較
顔認識 DetectLabels DetectFaces CompareFaces IndexFaces SearchFacesByImage
36.
サンプル画像認識サービスとの通知連携
38.
AWS Dev Day Tokyo 2017 • 2017/5/31(⽔)〜 6/2(⾦) •
受付開始 9:00〜 • セッション 13:20〜 • 品川プリンスホテル アネックスタワー 5F プリンスホール • 来場無料(要事前申し込み) http://www.awssummit.tokyo/devday/index.html 5/31(⽔) 6/1(⽊) 6/2(⾦) • Serverless Evolution Day• Microservices、DevOps、IoT、Deep Learning など最先端技術にフォーカスした実践的なセッション • Amazon.com CTO Werner Vogelsも登壇
39.
ハンズオン
40.
AWS LambdaAWS APIGWMonitoring & Alerting 閾値監視 APIGW EndpointをKick Hands-on 内容
41.
AWSマネージメントコンソールにログイン
42.
まず始めに利⽤するリージョンを確認しましょう 東京リージョンが選択されていることを確認
43.
Lambdaファンクションの作成 ※ Lambda Function の名前はご⾃⾝でわかりやすく、⼀意に設定
44.
Lambda ブループリントの選択
45.
トリガーの設定でAPI Gatewayを選択
46.
Lambda ファンクションの作成
47.
API エンドポイントの確認 作成したエンドポイントが、異常時にmackerelからキックされる
48.
では、やってみましょう!
Download now