入
入
入入
入 入
入 入
■概要
- サーバレスコンピューティング、AWS Lambdaについて
■登壇者
- Tim Wagnerさん (General Manager of AWS Lambda and Amazon API Gateway, Amazon Web Services, Inc.)
■導入
- サーバレスコンピューティングとは?
- VM: ハードの抽象化 => EC2
- コンテナ: アプリケーションの抽象化 => ECS
- サーバレス: 言語ランタイムの抽象化 => AWS Lambda
- 3つのメリット
- サーバ管理不要
- 継続的なスケーリング
- アイドル時間は課金されない
- クラウドはスーパーコンピュータ。サーバレスでプログラムできる
- リクエストごとに課金
- 100msごとに0.21セント
- リクエストの料金は0.2セント
- アイドル時間の課金なし
- 無料利用枠(100万件/月)
- Lambdaの使用
- BYOC(Node.js, Py, Java) zip
- 柔軟な使用方法
- シンプルなリソースモデル
- プログラミングモデル: SDK etc...
- オーサリング機能 eclipse, VS プラグイン etc...
- ステートレス DB、S3などで永続化
- モニタリングとスケーリング
■ユースケース・Lambdaの価値
- データ処理
- 例: S3バケットトリガー
- オブジェクト追加 -> S3バケットイベント -> Lambdaで圧縮 -> バケットに戻す
- 例: S3バケットトリガー
- バックエンド
- どちらかを選択
- モバイルアプリ
- IoTデバイス
- モバイルバックエンド ブループリント
- API Gateway: サーバレスAPI
- どちらかを選択
- エコシステム
- 静的コンテンツを提供: S3
- 動的コンテンツ: Lambda
- HTTPアクセスを提供API: API Gateway
- NoSQLデータストレージ: DynamoDB
- 事例
- Alexaアプリ + Slack = サーバレスボット
- Canon
- マイクロサービスでプリンティングソリューション
- 岡三
- バーチャルトレーディング
- 受注管理システムの中心部分
- 1/10でデリバーした
- リクルート: タウンワーク
- マシンラーニングでエンドユーザに対してレコメンデーション
■新しいサービスとベストプラクティス
- 新機能
- re:Invent 2015以降
- Node.js 4.2.2
- ステージ変数
- Swaggerのインポート/エクスポート etc...
- re:Invent 2015以降
- スケジュール機能: 入門ガイド
- ウォーム状態
- キューのポーリング
- タイマーは増やせる
- 1分以下でスケジュールできる
- バージョング: 入門ガイド
- 変更可能な構成情報
- Lambdaのロールバック: Aliasによる切り替え
- Blue/Greenデプロイメント
- クライアント/デバイスのバージョン固定
- LambdaのVPCの基礎
- 常にVPC内で実行される。セキュリティを有効にする必要はない
- リソースアクセスを許可することができる
- VPCはオプション
- ENIは各自のクォータに計上
- 十分なIPをサブネットで確保する etc ...
- サーバレス マイクロサービスの作成方法
- CloudFormation
- オープンソースフレームワーク(Serverless.com)
- Flourish(AWS支援のGitHubプロジェクト)
■デモ
- CloudFormationによるデモ(Inventoryシステム)
- Create Stack...
- API GatewayメソッドをJSON中に定義
- カスタム(lmbda)関数の実行が可能(サンプルデータの投入など)
- サーバレスコンピューティングのマニフェスト
- 関数はデプロイメントとスケールの単位
- プログラミングモデルはマシン、VM、コンテナは見えない
- 永続的ストレージがあちこちに利用できる
- スケーリング、プロビジョニング不要
- アイドル課金なし
- 関数はどこでも、耐障害性がある
- BYOC
- メトリックとロギングは自動的
- サーバレスを始めよう!
※当日の生メモです(ほぼ校正していませんm(_ _)m
※登壇者の方の情報など一部 http://www.awssummit.tokyo/devcon/index.html から引用させて頂きました