Mais conteúdo relacionado Semelhante a Serverless services on_aws_dmm_meetup_20170801 (20) Mais de Amazon Web Services Japan (20) Serverless services on_aws_dmm_meetup_201708012. ✤ Name : 千葉 悠貴(ちば ゆうき)
✤ Role : Solutions Architect
✤ Segment : Media & Entertainment
✤ Favorite Service : CloudFormation
5. 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
プッシュ通知
別テーブルを更
新
■イメージのリサイズやサムネイルの作成
■値チェックや別テーブルへのコピー
6. よくあるサーバーレスアプリケーション構成
Amazon API Gateway
(API GW)
AWS Lambda
(Lambda)
Amazon DynamoDB
(DynamoDB)
Amazon Cognito
(Cognito)
クライアントアプリは必要に応じて
Cognitoから一時的なCredentialsを
得た後、JSONでWeb APIと通信
サーバサイドは
API GW/Lambda/DynamoDB
といったマネージドサービスを用
い、
EC2やELBを利用しない
11. Lambda@Edge (2017年7月GA)
グローバル
Lambda@Edge を使用すれば、エンドユーザーに近い
AWS エッジロケーションからコードを実行できます。こ
れにより、各エンドユーザーにパーソナライズされた豊
富なコンテンツを、低いレイテンシーで簡単に配信でき
ます。
継続的スケーリング
Lambda@Edge では、各トリガーに応答してコードを実
行することにより、アプリケーションが自動的にスケール
されます。コードが並列で実行されることにより、各トリ
ガーは個別に処理されます。これにより、アプリケーショ
ンがワークロードのサイズに合わせて正確にスケール
されます。
オリジンの負荷を軽減
Lambda@Edge ではコードが自動的に実行され、さま
ざまな場所でのサーバーのプロビジョニングや管理の
必要がありません。Node.js コードを記述して AWS
Lambda にアップロードするだけで、エンドユーザーに
近い AWS エッジロケーションから自動的にコードが実
行されます。
ミリ秒単位の課金
Lambda@Edge では、コードの実行時間 50 ミリ秒ごと
に、トリガーされた回数に応じて課金されます。コードが
実行されていなければ、料金は発生しません。
LambdaファンクションをCloudFrontのエッジロケーションで実行
14. Lambda@Edge 用 Lambda Function
AWS Region US-East-1
Author at
Lambda
console
Master
Lambda function
CloudFront
distribution trigger
AWS Region
Lambda function
replica
AWS Region
Lambda function
replica
CREATE
ASSOCIATE
REPLICATE
REPLICATE
CloudWatch
CloudWatch
CloudWatch
・
・
・
17. Orchestration/Transform
BigData関連サービス
Ingest/ Collect Store Analyze/ Process
Visualization/
Consume
Batch
ETL/ELT
Realtime
ETL/ELT
Transactional
/ CDC
B.I. Tools
Data Science
Notebooks
Bulk Transport
File/Object Upload
Streaming Ingest
Commits Transactional
NoSQL
Data Lake
Streaming Storage
Dashboards
Batch Analytics
Interactive
Querying
Machine Learning/
Deep Learning
Realtime Analytics
…
18. Orchestration/Transform
Ingest/ Collect Store Analyze/ Process
Visualization/
Consume
= Serverless
Serverless
Managed
Virtualized
Batch
ETL/ELT
Realtime
ETL/ELT
Transactional
/ CDC
B.I. Tools
Data Science
Notebooks
Bulk Transport
File/Object Upload
Streaming Ingest
Commits Transactional
NoSQL
Data Lake
Streaming Storage
Dashboards
Batch Analytics
Interactive
Querying
Machine Learning/
Deep Learning
Realtime Analytics
BigData関連サービス
21. Data Catalog
Hiveメタストア互換のデータソース用メタデータリポジトリ
テーブル、データ型、パーティションフォーマットを推測するために ソ
ースをクロール
Job Execution
Sparkコンテナでジョブを実行 - SLAベースでオートスケール
Glueはサーバレス - 利用したリソース分を利用料金として払うだけ
Job Authoring
データをソースからデスティネーション(移動先)に移動させるための
Pythonコードを生成
任意のIDEでコードを生成し、Gitで共有.
AWS Glueコンポーネント
26. AWS Code Services
AWS CodeCommit
✤ セキュア、スケーラブルなGit互換のリポジトリサービス
✤ スタンダードなGit Toolからアクセス可能
✤ PushなどのイベントをトリガーにSNS/Lambdaを呼び出し可能
AWS CodeBuild
✤ スケーラビリティに優れたビルドサービス
✤ ソースのコンパイル、テスト、パッケージ生成をサポート
✤ Dockerイメージの作成も可能
AWS CodeDeploy
✤ S3またはGitHub上のコードをあらゆるインスタンスにデプロイ
✤ デプロイを安全に実行するための様々な機能を提供
✤ In-place(ローリング) およびBlue/Greenのデプロイをサポート
AWS CodePipeline
✤ リリースプロセスのモデル化と見える化を実現
✤ カスタムアクションによる柔軟なパイプライン作成が可能
✤ 様々なAWSサービスや3rdパーティ製品との統合をサポート
27. AWS CodeStar (2017年4月GA, 東京リージョン未ローンチ)
AWS上にアプリケーションをすばやく開発・ビルド・デプロイ
AWS上での開発をわずか数分間で開始
チームをまたがった開発をセキュアに
ソフトウェアデリバリの管理を容易に
様々なプロジェクトテンプレートから選択
32. セットアップ内容
✤サンプルアプリケーション
✤ EC2 or Beanstalk or Lambda
✤CodeCommitリポジトリ
✤CodeBuildビルドプロジェクト
✤デプロイツール
✤ CodeDeploy or Beanstalk or CloudFormation
✤CodePipeline 継続的デプロイメントパイプライン
✤CloudWatchメトリクス
✤プロジェクトダッシュボード
34. モニタリング & オペレーション
InspectorTrusted Advisor
CloudWatch/
CloudWatch Logs CloudTrail Config
X-Ray
メトリクス監視
/ログ監視
AWS API
ログ収集
AWS構成変更
ログ収集
サービス
性能監視
OS/アプリ
セキュリティ評価
推奨構成
チェック
45. AWS Lambda Active Tracing
• Lambdaファンクションの
アクティブトレースが可能に
• 各処理の所要時間
などが見れる
• 多少のメモリ
消費量の増加
46. AWS Lambda Active Tracing
• コードの修正は不要。
必要なのは Lambda ファンクションの設定変更だけ
• マネジメントコンソール:
• AWS CLI:
51. Video on Demand on AWS
様々なフォーマットに動画コンテンツを変換し、CloudFront
から配信するまでのVoDワークフローソリューション