kaakaa Blog

この世は極楽 空にはとんぼ

AWS re:Invent 2016 Serverless Follow Up行ってきた

久しぶりの参加レポ。
【大幅増枠!】AWS re:Invent 2016 Serverless Follow Up - connpass

途中で「資料は公開される」と言ってました(全てとは言ってなかったけど、たぶん全て公開されるでしょう)

公開されました。 aws-serverless.connpass.com

所感

  • API GatewayとMarketplaceの連携によるAPIのマネタイズは面白そう。最初のAPI提供者としてdocomoをひっぱてこれるの流石
  • AI系は眉唾なので奥手になってるけど、今回発表されたAI系サービス(Lex, Polly, Rekognition)には騙されても良いぐらい面白そうだった
  • LambdaのC#対応でAzure Functionsを、X-RayではTwitterのzipkinを、と競合への対策だったり追従だったりをスピーディーにやってるなぁ

  • Amazon恐ろしい子・・・

メモ

会場:目黒・アルコタワーアネックス 14F

  • デブサミでおなじみの目黒雅叙園の近く
  • 雅叙園に行く時に見かけていたのでAmazonがあるのは知ってたけど、中入ったのは初めて
  • 会場は普通のセミナールームでした
  • 残念ながらゲストwi-fiの提供はなし

What's new with Serverless @Keisuke69

  • Serverlessの機能が充実してきた
  • Serverless App のCI/CD
    • 相談が多かった

serverless(Lambda) follow up

  • Lambdaに環境変数が設定できるようになった

  • Serverless Application Model(SAM)

    • CloudFoundationのエクステンション
    • Lambdaベースアプリケーションをパッケージ&デプロイ可能に
    • Yaml形式で定義
  • Serverless CI/CD pipeline
    • CodeCommit -> CodeBuild(new) -> CloudFormation
  • ICYMI
    • CloudWatchの新機能
    • メトリクスでのパーセンタイル解析が可能に
  • AWS X-Rayとのインテグレーション
    • 今は不可能。そろそろ可能になる。
    • ファンクションとサービスの依存関係を可視化
    • 非同期呼び出しの滞留時間とリトライを確認(zipkin的なもの?)
  • Lamba追加機能
    • Kinesisイテレーター追加
    • C#サポート
    • Dead Letter Queue: 非同期イベントとして失敗したファンクションをSQS/SNSで通知できるようになった => 失敗したイベントを救出できるようになった
  • AWS Step Function
    • ファンクション・ワークフローのGUI化と高機能化
    • 待ち合わせや3回以上の試行が可能に
  • Lambda Bot and Amazon Lex
  • Snowball Edge
    • オンプレからAWSへのシンプル・セキュアな移行(物理)
  • Greengrass
    • AWSの処理をデバイス上で実行可能に
    • 必要スペック的にRaspiあたりが対象
  • Lambda@Edge(Preview)
    • 「Labmda Everywhere」

API Gateway follow up

serverless エコシステム

  • datadogはLambdaの監視が無料
  • ログ連携に関する問い合わせが多いため、logglyとの連携なども対応
  • OSS

Introducing C# in AWS Lambda

  • 資料は後程公開されるらしい
  • AWS Functionsへの対抗かな

  • .Net 開発者へもサーバーレスの道が開けた
  • .Net Frameworkでなく、.Net Coreに対応
  • 様々なAPIが提供されている
    • Kinesis / S3 / SNSなどのAWSサービスのイベントに関するPOCO
    • Serialization / Loggingライブラリ(from NuGet)
  • その他、使い方の説明(メソッドシグニチャやファンクションの登録方法)

  • デモ

    • VisualStudioプロジェクトテンプレート取得
    • 現在提供されているテンプレートは、空のテンプレートかDynamo / Kinesis / S3を使ったシンプルプロジェクト
    • NuGetパッケージの取得でエラーになるが、「復元」を押せば正常になる
    • Visual StudioからLambdaファンクションの発行も可能(Webを開かなくても良い)
    • S3でイベント発行 -> Labmda起動 -> CloudWatch LogsでLambda起動イベントを確認

Introducing Amazon Lex, Amazon Polly and Amazon Rekognition

  • AIサービス3つ

Rekognition

  • DeepLearningベースの画像認識サービス
  • 物体・シーン・顔分析・顔比較・顔認識
  • 物体シーン
    • 画像内のオブジェクトの位置をJSON形式で返してくれる
    • 物体から写真の撮られた状況も推測してくれる「LivingRoom」「indoor」
  • 顔分析
    • EmotionなどもJSONデータとして返す
  • 顔認識
    • 他の3つはステートレスだが、これはステートフル。IndexFaceを登録する。

  • US-east / US-west / アイルランドリージョンのみで利用可能
  • マネジメントコンソール上で手動デモ可能

Polly

  • Text to Speech as a Service
  • 日本語もサポート
  • SSML(Speech Synthesis Markup Language)サポート
    • 部分的なボリューム・ピッチの指定などが可能
  • Lexicons
    • 単語やフレーズの発音をカスタマイズ可能
    • 記号の読みなどを指定できる

Lex

  • 音声をテキストを使った対話型インタフェース
  • Alexaと同等のDeepLearning技術を使用
  • Versioning / Aliasのサポート
    • AIを過去の履歴に戻せる
  • Mobile Hubによるコネクタ
    • スマホのインターフェースとしてのLexBot
    • Lexで認識した情報をLambdaに渡して処理できる

Amazon Pinpoint - ユーザーをエンゲージしよう @shimy_net

  • リアルタイムモバイルユーザーエンゲージメントの実現
  • 1ユーザー獲得するのに$2.14かかるという調査結果
    • キャンペーン・広告を打つ -> 効果測定難しい
  • バイルユーザーのターゲッティングやプッシュ通知、イベントの効果測定などを一括で可能

  • デモ

    • ダッシュボードからプロジェクト作成
    • iOS or Androidを選ぶ(今回はiOS
    • 証明書のアップロード。で、だいたいの設定は完了。
    • MobileHubサンプルプロジェクト / SDKで一から作る。今回はMobileHubサンプルアプリから。
    • サンプルにはXCodeのプロジェクトが入ってるので、そのままビルド。
    • サンプルアプリを操作して情報を溜める
    • Pinpointダッシュボードで溜まった情報を確認
    • セグメンテーションを作成・指定してイベント(メッセージ送信など)を発行

Introduction to AWS X-Ray

  • 伝統的なデバッグプロセスは本番アプリやサービス指向、MSA、サーバーレスで構築されたアプリには適していない
    • サービス間連携の調査、異なるフォーマットのログの集約・分析などが大変
  • X-Ray SDK

    • 各リクエストのメタデータを自動キャプチャ
    • X-Ray daemonUDPがキャプチャしたデータを受信する
    • サンプリングのルールを指定することも可能
    • SDKが提供されていない場合はX-Ray APIを使用する
  • サービスコールグラフの可視化

    • 集めたデータから自動で生成
    • 各サービスで処理にかかった時間も合わせて表示
    • パフォーマンスボトルネックの特定(zipkinライク)

  • デモ
    • サインアップURLに対するリクエストの処理時間可視化
    • ステータスコード毎に解析結果を見る
    • エラーのスタックトレースも確認できてそう
    • テキストによるフィルタリングも可能
    • クライアントIPでのグループ化も可能

  • サーバーレスなどでサービスを跨ったサービスに効果がある

    • もちろん普通のアプリでも使える
  • プレビュー期間は無料