Upgrade to Pro — share decks privately, control downloads, hide ads and more …

サーバーは作らない!「サーバーレス」がIoTに適している理由と、AWSが語るIoT向けサービス&アーキテクチャー/SORACOM Tech Days 2021 day1_1

SORACOM
PRO
November 30, 2021

サーバーは作らない!「サーバーレス」がIoTに適している理由と、AWSが語るIoT向けサービス&アーキテクチャー/SORACOM Tech Days 2021 day1_1

SORACOM Tech Days 2021 セッション資料です。
IoTのデータ処理でサーバーを使うケースがありますが、構築前に知っておきたいのが「サーバーレスアーキテクチャー」です。データ挿入などのイベントをきっかけに動的に計算資源が割り当てられる仕組みで、IoTのデータ処理に適しています。本セッションはサーバーレスアーキテクチャーの利点や必要な機能についての共有、そしてゲストよりAWSが提供しているIoT向けサービスの解説とユースケース別アーキテクチャーを紹介いただきます。

アマゾン ウェブ サービス ジャパン
シニアエバンジェリスト
亀田 治伸氏

株式会社ソラコム
テクノロジー・エバンジェリスト
松下 享平

SORACOM
PRO

November 30, 2021
Tweet

More Decks by SORACOM

Other Decks in Technology

Transcript

  1. サーバーは作らない!
    「サーバーレス」が IoT に適している理由と、
    AWS が語る IoT 向けサービス&アーキテクチャー
    SORACOM Tech Days 2021
    アマゾン ウェブ サービス ジャパン
    シニアエバンジェリスト
    亀田 治伸 氏
    株式会社ソラコム
    テクノロジー・エバンジェリスト
    松下 享平 (Max)

    View Slide

  2. 自己紹介
    株式会社ソラコム / テクノロジー・エバンジェリスト
    松下 享平 (まつした こうへい) “Max”
    静岡県民 🗻 新幹線通勤族 🚅
    講演や執筆を中心に活動、登壇回数400以上/累計
    好きな言葉: 論よりコード
    AWS ヒーロー (IoT 部門)
    Twitter: @ma2shita

    View Slide

  3. 新たなプロダクト = ハードウェアとソフトウェアの融合

    View Slide

  4. クラウド
    センサー/デバイス
    “モノ”
    ネットワーク
    現場をデジタル化 現場とクラウドをつなげる デジタルデータの活用
    モノやコトをデジタル化
    IoT とは?

    View Slide

  5. SORACOM は IoT の「つなぐ」を簡単に
    IoT デバイス クラウドサービス
    ✓ 遠隔操作
    ✓ メンテナンス
    ✓ 蓄積・見える化
    ✓ アラート通知
    通信
    デバイス
    センサ
    キット
    IoT 通信
    IoT SIM
    LPWA
    パートナー
    デバイス
    パートナークラウド
    (AWS / Microsoft / Google)
    Wi-Fi / 有線
    3G / LTE / 5G
    LTE-M

    View Slide

  6. 部品を組み合わせて
    構築
    “Build”
    部品を知る 組み合わせ方を知る

    View Slide

  7. クラウド
    センサー/デバイス
    “モノ”
    ネットワーク
    現場をデジタル化 現場とクラウドをつなげる デジタルデータの活用
    モノやコトをデジタル化
    IoT とは?

    View Slide

  8. IoT バックエンド(サーバーサイド処理)に求められる3つの機能
    受付 変換 蓄積
    データ活用
    《可視化・通知》
    HTTP や MQTT 等
    プロトコルの API 公開と
    変換処理への橋渡し
    フォーマット変換や
    マッピング(意味づけ)
    集計処理
    データ活用側で
    利用するための
    保管
    IoT デバイス

    View Slide

  9. IoT バックエンド構築の課題
    準備
    仮想サーバーを作ってから、PHP + Laravel をイ
    ンストールして API と変換処理を実装した後、
    ストレージに MySQL を設定して…
    非機能要件の実装
    MQTT 対応?認証処理?
    規模やワークロード調整?ストレージ見積?
    運用や費用
    モニタリング?スケールできる?
    データが流れていない時のコスト?

    View Slide

  10. IoT で活用すべきは
    サーバーレス
    Serverless

    View Slide

  11. オンプレミス / 仮想サーバー / マネージドサービス
    [JAWS-UG初心者支部]AWSはじめの一歩と学びのススメ
    https://speakerdeck.com/tttak/jaws-ugchu-xin-zhe-zhi-bu-awshazimefalse-bu-toxue-bifalsesusume?slide=69

    View Slide

  12. 「サーバーレス」はマネージドサービスの一形態
    共通項:OSレイヤは抽象化される
    1. クラスターや AZ(データセンター)配置をユーザーが意識するもの
    2. アプリケーション実行環境が提供されるもの
    3. 機能のみが提供されるもの
    2、3 どちらもサーバーレスと呼ばれる

    View Slide

  13. IoT データは「いつ発生するかわからない」
    例) ドアの開閉をセンシングしたい
    IoT のデータ処理に適する
    データの待ち時間がムダに
    仮想サーバーや
    マネージドサービス
    サーバーレス
    ➢ 課金単位は稼働時間
    ➢ データを常に処理する
    ワークロード向き
    ➢ 課金単位は実行時間
    ➢ データ発生時のみ処理する
    ワークロード向き

    View Slide

  14. IoT バックエンド(サーバーサイド処理)に求められる3つの機能
    受付 変換 蓄積
    データ活用
    《可視化・通知》
    HTTP や MQTT 等
    プロトコルの API 公開と
    変換処理への橋渡し
    フォーマット変換や
    マッピング(意味づけ)
    集計処理
    データ活用側で
    利用するための
    保管
    IoT デバイス
    【再掲】

    View Slide

  15. アマゾン ウェブ サービス ジャパン
    シニアエバンジェリスト
    亀田 治伸 氏

    View Slide

  16. Innovation Fly Wheel
    © 2021, Amazon Web Services, Inc. or its affiliates. All rights reserved.

    View Slide

  17. Innovation Fly Wheel
    © 2021, Amazon Web Services, Inc. or its affiliates. All rights reserved.

    View Slide

  18. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
    S U M M I T
    情報爆発とユーザエンゲージメント
    【出典】 「我が国のインターネットにおけるトラヒックの集計結果」(総務省)
    (http://www.soumu.go.jp/main_content/000604136.pdf)をもとにアマゾン
    ウェブ サービス ジャパン株式会社作成

    View Slide

  19. © 2021, Amazon Web Services, Inc. or its affiliates. All rights reserved.
    Feedback
    アイデア
    実験
    Innovation
    Flywheel
    Builders の育成が
    Innovations のカギ
    発明への高い意志を持ち、
    課題をかかえる顧客体験に注目し、
    それらに正直に取り組み、
    再発明する方法を見つけようとする人々
    Andy Jassy
    CEO, Amazon


    © 2021, Amazon Web Services, Inc. or its affiliates. All rights reserved.

    View Slide

  20. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
    コンピューティング アプリケーション統合
    ARとVR
    Game Tech
    IoT
    機械学習
    モバイル
    量子テクノロジー
    ロボット工学
    カスタマーエンゲージメント
    ビジネスアプリケーション
    エンドユーザーコンピューティング
    分析
    AWS コスト管理
    ブロックチェーン
    データベース
    開発者用ツール
    マネジメントとガバナンス
    メディアサービス 移行と転送
    ネットワークとコンテンツ配信
    人工衛星
    セキュリティ、ID、コンプライアンス
    ストレージ
    AWSの提供する90%のサービスや機能はお客様からの意見をもとに開発、残りの10%もお客様の潜在的な要望を汲み取って作られています
    200を超えるサービス マネージドサービス

    View Slide

  21. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
    価値を生みずらい重労働 (Undifferentiated Heavy Lifting)
    冗長構成
    Backup
    パッチ適応
    PITR(Point In Time Recovery)

    View Slide

  22. View Slide

  23. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
    デバイスシャドウ
    クラウド側で
    デバイスの状態を管理
    デバイスは状態変化を
    クラウドに通知
    クラウド側での状態変更を
    デバイスに反映
    状態の取得 状態の変更

    View Slide

  24. © 2020, Amazon Web Services, Inc. or its Affiliates.
    • SQL 文を使ったトピックのフィルタ
    • WHERE 句でフィルタリング条件を
    記述することが可能
    • JSON 形式のメッセージをサポート
    ルールエンジン – メッセージのフィルタリング
    SELECT *
    FROM ‘
    data/meguro-building/1f/+/sensor’
    WHERE temp > 35.0
    {“temp”: 35.2}
    • トピックのフィルタの例
    取得するデータ →
    対象となるTopic →
    条件 →

    View Slide

  25. © 2020, Amazon Web Services, Inc. or its Affiliates.
    ルールエンジン - アクション
    Amazon CloudWatch
    (Alarm, Metrics, Logs)
    Amazon DynamoDB
    Amazon Elasticsearch
    Service
    Amazon Kinesis Data Firehose
    AWS IoT Analytics
    AWS IoT Events
    AWS IoT SiteWise
    Amazon Kinesis
    AWS Lambda
    HTTP endpoint
    MQTT republish
    Amazon Simple Storage
    Service
    Amazon Simple Notification Service
    Amazon Simple Queue Service
    AWS Step Functions
    AWS IoT Core から
    他の AWS サービスや
    外部サービスと連携
    ルールエンジン
    アクション
    Amazon Timestream

    View Slide

  26. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
    リアルタイム可視化
    アプリケーション
    データレイク・BI
    AWS Lambda
    Web Browser
    Amazon Elasticsearch
    Service
    AWS IoT
    Core
    AWS Lambda Amazon
    DynamoDB
    Amazon Kinesis
    Data Firehose
    デバイス
    MQTT
    Amazon Kinesis
    Data Streams
    Amazon S3
    Amazon API
    Gateway
    AWS IoT Core による
    データ収集アーキテクチャ例
    Amazon Athena

    View Slide

  27. © 2020, Amazon Web Services, Inc. or its Affiliates.
    コンピューティングリソースの抽象化
    抽象度
    ビジネスロジック(アプリ開発)への注力
    Serverless
    物理サーバ
    仮想マシン
    コンテナ化
    Lambda Fargate
    • 連続的なスケーリング
    • 組込済みの耐障害性
    • 実行に応じた支払い
    • メンテナンスフリー
    • ビジネス価値への注力
    EKS
    EC2
    ECS
    © 2021, Amazon Web Services, Inc. or its affiliates. All rights reserved.

    View Slide

  28. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
    サーバー管理は
    不要
    利用状況に応じて
    自動で拡張
    利用していない
    リソースは支払い不要
    可用性や耐障害性は
    実装済み
    Lambda の基本特性

    View Slide

  29. © 2020, Amazon Web Services, Inc. or its Affiliates.
    AWS LambdaとRDBが抱えていた課題
    1.AWS LambdaからVPCへの通信
    2.RDBへのコネクション爆発
    求めあうけど
    許されない二人

    View Slide

  30. © 2020, Amazon Web Services, Inc. or its Affiliates.
    DBデプロイメントとVPC
    VPC
    AWS Cloud
    Availability Zone
    パブリック
    サブネット
    プライベート
    サブネット
    リージョン
    Internet
    gateway
    Corporate
    data center
    インターネット

    データベースサービスは
    お客様が作成したVPC中
    に作成されます

    データベースはVPC内の
    任意のサブネット内で動作
    させることが可能です

    セキュリティの観点から
    不必要にパブリックサブ
    ネット上にデータベースを
    配置しないようにします
    Amazon RDS
    ?
    ?
    VPN、専用線
    Amazon EC2

    View Slide

  31. © 2020, Amazon Web Services, Inc. or its Affiliates.
    だがしかし、Lambda は VPCの外
    2016年2月
    VPC対応
    2019年9月
    パーフォーマンス
    が劇的改善
    VPC
    AWS Cloud
    Availability Zone
    パブリック
    サブネット
    プライベート
    サブネット
    リージョン
    Internet
    gateway
    Corporate
    data center
    インターネット
    Amazon RDS
    ?
    ?
    VPN、専用線
    Amazon EC2

    View Slide

  32. © 2020, Amazon Web Services, Inc. or its Affiliates.
    AWS LambdaとRDBが抱えていた課題
    1.AWS LambdaからVPCへの通信
    2.RDBへのコネクション爆発
    求めあうけど
    許されない二人

    View Slide

  33. © 2020, Amazon Web Services, Inc. or its Affiliates.
    水平スケーリングと垂直スケーリング
    AWS Lambdaは水平スケーリング
    min
    Max
    (lambda default:1000)

    View Slide

  34. © 2020, Amazon Web Services, Inc. or its Affiliates.
    と、いうことでRDS Proxy
    コネクションを
    ウォーム状態でプール
    Aurora(MySQL, PostgreSQL)
    MySQL(not 8.0)
    PostgreSQL
    未対応
    Aurora Serverless(→DATA API)
    Aurora Multi Master
    EC2

    View Slide

  35. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
    IoT Core のルールエンジンを利用した場合
    AWS IoT Core
    デバイス
    デバイス
    デバイス
    IoT
    rule
    AWS Lambda
    Amazon DynamoDB
    Amazon Simple Notification
    Service
    IoT
    shadow
    条件の判断ロジック アクション
    RDS Proxy

    View Slide

  36. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
    AWS
    Lambda
    シンプルなプロトコルで
    呼び出し開始 ファンクションを実行
    戻り値を返却
    戻り値を受け取り
    SIM による
    認証
    クラウド上は
    「関数」を作るのみ
    SORACOM Funk
    AWS IoTの証明書認証や
    デバイスゲートウェイはまとめて
    SORACOMで
    Funk ? Funky _? Yes, Let’s Funk!! SORACOM Funk
    からの直接接続
    AWS
    Step Functions

    View Slide

  37. View Slide

  38. IoT デバイスと AWS サービスをつなげる SORACOM
    ビーム
    SORACOM Beam
    ファネル
    SORACOM Funnel
    ファンク
    SORACOM Funk
    Amazon Kinesis Data Streams
    Amazon Kinesis Data Firehose
    AWS Lambda
    AWS IoT Core
    IoT デバイス
    Lambda 関数を
    直接実行
    データ収集向け
    AWS サービス連携
    AWS IoT Core を
    フル活用
    MQTT
    HTTP / TCP / UDP
    HTTP / TCP / UDP

    View Slide