Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン

12,840 views

Published on

AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン

Published in: Technology
  • Hello! Get Your Professional Job-Winning Resume Here - Check our website! https://vk.cc/818RFv
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン

  1. 1. 【AWS Black Belt Online Seminar】 IoT向け最新アーキテクチャパターン アマゾンウェブサービスジャパン株式会社 ソリューションアーキテクト 榎並 利晃 2017.02.28
  2. 2. 自己紹介 2 • 名前 – 榎並 利晃(えなみ としあき) – toshiake@amazon.co.jp • 役割 – IoT Solution Design – Solution Architect • 好きなAWSのサービス – AWS IoT – Amazon Kinesis Family
  3. 3. AWS Black Belt Online Seminar とは AWSJのTechメンバがAWSに関する様々な事を紹介するオンラインセミナーです 【火曜 12:00~13:00】 主にAWSのソリューションや 業界カットでの使いどころなどを紹介 (例:IoT、金融業界向け etc.) 【水曜 18:00~19:00】 主にAWSサービスの紹介や アップデートの解説 (例:EC2、RDS、Lambda etc.) ※開催曜日と時間帯は変更となる場合がございます。 最新の情報は下記をご確認下さい。 オンラインセミナーのスケジュール&申し込みサイト – https://aws.amazon.com/jp/about-aws/events/webinars/ 3
  4. 4. 内容についての注意点 • 本資料では2017年2月28日時点のサービス内容および価格についてご説明しています。最新 の情報はAWS公式ウェブサイト(http://aws.amazon.com)にてご確認ください。 • 資料作成には十分注意しておりますが、資料内の価格とAWS公式ウェブサイト記載の価格に 相違があった場合、AWS公式ウェブサイトの価格を優先とさせていただきます。 • 価格は税抜表記となっています。日本居住者のお客様が東京リージョンを使用する場合、別途 消費税をご請求させていただきます。 • AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in accordance with the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any pricing information included in this document is provided only as an estimate of usage charges for AWS services based on certain information that you have provided. Monthly charges will be based on your actual use of AWS services, and may vary from the estimates provided. 4
  5. 5. Agenda • IoTのユースケース • AWS IoT Solutions • Keyとなるサービス • デザインパターン 5
  6. 6. IoTのユースケース 6
  7. 7. 製造 メンテナンス/異常検知 モニタリング 交通 車両センサー ドライバーの安全 エネルギー スマートメータ メンテナンス/異常検知 リテール 動線把握 O2O 家電 スマート家電 オートメーション ヘルスケア 医療機器管理 遠隔医療 農業 モニタリング 遠隔制御 さまざまな利用用途
  8. 8. IoT を構成する3要素 誰もがすぐに調達可能で アイデアと実行能力があれば市場参入が容易 イノベーションにより市場に破壊が起きる センシングデバイス ネットワークコネクティビティ 処理・分析を実行するサーバー
  9. 9. IoTの代表的な要件  モニタリング 位置情報管理・状態監 視・実績把握・動線把握  予防予知保全 異常検知・故障予測  データ連携/モバイル 保守作業・スマートデバ イス・企業連携・オープ ンデータ  遠隔制御 機器運用・ ファームアップ 9
  10. 10. IoTプラットフォーム データ 収集 データ保存 データ処理・分析 活用 デバイス 制御 デバイス管理 アラート 業務支援 システム Report/Dashboard (故障予知・予測) デバイス管理 データ収集・分析 リモート制御
  11. 11. IoTプラットフォーム AWS IoT Solution アラート 業務支援 システム Report/Dashboard (故障予知・予測) デバイス管理 デバイス制御 データ収集 データ処理・分析 データ保存 デバイス管理 データ活用 IoT IoT S3 Kinesis IoT S3 RDS DynamoDBElasticache Redshift EMR Machine Learning QuickSight ElasticSearch Kinesis Analytics API GW Lambda SNS AWS IoT Solution Lambda エッジ Greengrass AI関連 Athena
  12. 12. キーとなるサービス 12
  13. 13. エッジ コンピューティング デバイス制御 データ収集 データ処理・分析 データ保存 デバイス管理 データ活用 IoT IoT S3 Kinesis IoT S3 RDS DynamoDB Redshift EMR Machine Learning QuickSight ElasticSearch Kinesis Analytics API GW Lambda SNS AWS IoT Solution Lambda エッジ Greengrass AI関連 Athena Elasticache
  14. 14. Messages Messages Authentication & Authorization Device Gateway Action Device State AWS Services Applications Registry AWS IoT API AWS Greengrass Going to the edge Introducing AWS Greengrass Device State Action Device Gateway Messages Authentication & Authorization Security *Note: Greengrass is NOT Hardware (You bring your own) Limited preview
  15. 15. AWS Greengrass のベネフィット ローカルイベントに対する即時応答 オフライン オペレーション 簡易化された デバイス上でのプログラ ミング IoT applicationsに対するコスト削減
  16. 16. AWS Greengrass Overview Local環境MQTT Greengrass要求スペック CPU 1GHz single 以上 Memory 128MB 以上 OS: Linux (Ubuntsu or Amazon) Kenel 4.4.11以上 • Status Sync • サービスとの接続 Greengrassのメリット ローカル処理による高速レスポンス 常時接続不要 センシティブ情報の処理(暗号化/削除) Greengrass Core Lambda Device shadow
  17. 17. AWS Greengrass Coreの構成要素 Local Lambda Shadows Messaging Security
  18. 18. AWS Greengrass pricing Active Devices Price 3 1年間の無料利用 3–10,000 $0.16/月 $1.49/年 10,000+ お問い合わせ active deviceの定義 Greengrass Core では、30 日間デ バイスから AWS への接続がないと、 デバイスがローカルで動作していて も非アクティブと見なされます。
  19. 19. データ収集 デバイス管理 デバイス制御 デバイス制御 データ収集 データ処理・分析 データ保存 デバイス管理 データ活用 IoT IoT S3 Kinesis IoT S3 RDS DynamoDB Redshift EMR Machine Learning QuickSight ElasticSearch Kinesis Analytics API GW Lambda SNS AWS IoT Solution Lambda エッジ Greengrass AI関連 Athena Elasticache
  20. 20. Things Sense & Act Cloud Storage & Compute Intelligence Insights & Logic → Action AWS IoT Action Device State AWS Services Applications Authentication & Authorization Device Gateway Registry AWS IoT API Messages Messages 簡単で安全なクラウドへのIoTデバイス接続サービス
  21. 21. AWS IoT : 2つの利用用途 • データ収集 数十万規模のデバイスからのデー タ収集 • リモート制御 遠隔にあるデバイスをクラウドを 介してコントロール 使用例 デバイスのデータの可視化 故障予測・異常検知 ファームアップ リモート機器制御
  22. 22. AWS IoT スタンダードプロトコル (no lock-in) 数百万デバイスやアプリをMQTTや HTTP1.1プロトコル, Websocketsを使っ て通信が できる 長期間のセッション保持によるクラウド を介したメッセージ送受信 クライアント(デバイスやアプリ)は 制御信号やコマンドなどをクラウドから 受信することができる デフォルトのセキュリティ X509証明書とTLS1.2を使った相互認証 Topic Based Architecture (lights/thing-2/color) ハイスケーラブル メッセージブローカー
  23. 23. AWS IoT デバイスとクラウドとの 相互認証 TLS1.2を用いた相互認証 証明書に対するポリシ設定も可能 ルールエンジンと アクション SQLライクな構文でルールの設定 ルールに合致した場合、AWSの各種サー ビスとのインテグレーション デバイスシャドー デバイスが物理的に接続されてなくて もコマンドを伝達できる デバイスレジストリ 多くのデバイスを管理 Key-Value形式でファームバージョンなど の属性情報も管理可能
  24. 24. デザインパターン 〜 各レイヤの選定ポイント 〜 24
  25. 25. データ収集 25 デバイス制御 データ収集 データ処理・分析 データ保存 デバイス管理 データ活用 IoT IoT S3 Kinesis IoT S3 RDS DynamoDB Redshift EMR Machine Learning QuickSight ElasticSearch Kinesis Analytics API GW Lambda SNS AWS IoT Solution Lambda エッジ Greengrass AI関連 Athena Elasticache
  26. 26. データ送受信(Ingest) AWS IoT Amazon Kinesis Amazon S3 ペイロード長 1メッセージあたり128KB 1レコードあたり1MB 1オブジェクトあたり5TB プロトコル MQTTS/HTTPS /Websocket HTTPS HTTPS 料金 512Bを1メッセージとして $8/百万メッセージ 1シャード$0.0195/時 ペイロードユニットを25KB として$0.0215/百万ペイ ロード(Streams) $0.025/GB(最初の50TB, 月) 認証 クライアント証明書 SigV4 SigV4 SigV4 使いどころ ペイロードが小さく送信頻度も 低い デバイスとクラウド間の双方向 通信が必要 高いセキュリティを求められる ペイロードが大きく、送信 頻度が高い メディアなどデータサイズ が大きい場合、ファイル単 位でデータを扱う場合
  27. 27. データ処理・分析 27 デバイス制御 データ収集 データ処理・分析 データ保存 デバイス管理 データ活用 IoT IoT S3 Kinesis IoT S3 RDS DynamoDB Redshift EMR Machine Learning QuickSight ElasticSearch Kinesis Analytics API GW Lambda SNS AWS IoT Solution Lambda エッジ Greengrass AI関連 Athena Elasticache
  28. 28. データ処理・分析(Analytics) Amazon EMR Amazon Redshift Amazon Athena Amazon Kinesis Analytics Amazon Machine Learning 用途 Hadoop/Sparkな どを使いデータの 分散処理を実行 大規模なデータ セットに対する複 雑なクエリを実行 S3のオブジェクト に対しアドホック にクエリを実行 Kinesisのシャー ド上のデータに対 し、リアルタイム にクエリを実行 教師データを元に 予測モデルを作成 し、APIで予測を 実行 リアルタイム/ バッチ特性 バッチ/リアルタ イム バッチ バッチ リアルタイム バッチ/リアルタ イム
  29. 29. データ保存 29 デバイス制御 データ収集 データ処理・分析 データ保存 デバイス管理 データ活用 IoT IoT S3 Kinesis IoT S3 RDS DynamoDB Redshift EMR Machine Learning QuickSight ElasticSearch Kinesis Analytics API GW Lambda SNS AWS IoT Solution Lambda エッジ Greengrass AI関連 Athena Elasticache
  30. 30. データの保存(Store) Amazon S3 Amazon DynamoDB Amazon Elasticache Amazon Aurora 用途 データ連携の Hub(データレイク)、 またはアーカイブ Read/Write性能のス ケールが必要で、か つデータを単純に参 照 ダッシュボードなど リアルタイムにデー タを単純に参照 SQLアプリケーショ ン向け 堅牢性 データセンター3箇所 以上に保存 データセンター3箇所 以上に保存 メモリ上で揮発性は 高いが、EBSに退避 も可能 3AZに6個のレプリ ケーションを保持 保存単位 ファイル アイテム アイテム レコード
  31. 31. データ活用 31 デバイス制御 データ収集 データ処理・分析 データ保存 デバイス管理 データ活用 IoT IoT S3 Kinesis IoT S3 RDS DynamoDBGlacier Redshift EMR Machine Learning QuickSight ElasticSearch Kinesis Analytics API GW Lambda SNS AWS IoT Solution Lambda エッジ Greengrass AI関連 Athena
  32. 32. データの活用 Amazon SNS Amazon Elasticsearch Service Amazon Quicksight 用途 デバイスの状態などに 応じてメール、モバイ ルプッシュなどで管理 者に通知 Kibanaによる時系列 データの可視化 時系列データの分析 (BI) 利用方法 AWS IoTのルールアク ション、または、 Lambdaを介してメッ セージを配信 クロスアカウント・別 システム連携 AWS IoTのルールアク ションを実行し、 Elasticsearch Service へデータを送信 S3、RDS、Redshiftな どをデータソースとし て利用
  33. 33. システム要件別デザインパターン 33 主に、AWS IoTを中心としたパターン
  34. 34. 34 データ保管 対象シーン - センサーデータなどのバックアップ - 機械学習などのモデル作成に向けた準備 条件 - 128kb以内のメッセージ AWS IoT ルールエンジン Amazon Kinesis Firehose Amazon S3 (注意) Amazon Kinesis Firehoseがローンチされてないリージョンの場合は、Kinesis + Lambda or KCL on EC2でS3に転送する必要あり
  35. 35. 35 シンプルモニタリングパターン 対象シーン - センサーデータをモニタリングしたい - モニタリング要件がKibana実現できる 条件 - 128kb以内のメッセージ AWS IoT ルールエンジン Amazon Elasticsearch (注意1) シンプルなモニタリングであれば、CloudWatchでも可能 (注意2) Amazon Elasticsearch Serviceに対するアクセス制御については以下を参考にしてください。 https://aws.amazon.com/blogs/security/how-to-control-access-to-your-amazon-elasticsearch-service-domain/
  36. 36. 36 ラージデータアップロードパターン (ダウンロード) 対象シーン - 画像・動画など大きいデータをアップロードする場合でAWS IoTのデバイス認証を活かす場合 条件 - 128kb以上のデータ - デバイスが、MQTTとHTTSを利用できる AWS IoT Amazon S3 デバイス認証 ファイルアップロード 次ページにシーケンス
  37. 37. ラージデータアップロードパターン 〜シーケンス〜 AWS IoT device00/token/res device00/token/req ②トークン の取得 ③トークンをpublish ①トークン取得リクエストを publish ④トークンをsubscribe あらかじめテンポラリトークン に割り当てるロールを作成 ex) KinesisのputRecordのみ S3のputObjectのみ許可 ⑤トークンを使ってアクセス AWS Lambda IAM Amazon S3 Topic
  38. 38. 38 ディープチェック 対象シーン - センサーデータが処理・格納されたことを確認し、デバイス側で リトライ制御したい場合 条件 - デバイス側で送信したデータに識別子を付与し、その識別子の データ処理が正しく処理されたかを別トピックをサブスクライブ して待ち受けることができる DB Storage など エラー AWS Lambda Topic AWS IoT
  39. 39. 39 他システム連携 対象シーン - AWS内外のシステムとAPI連携するパターン 条件 - センサーデータをバッファリングして他システムと連携する AWS IoT ルールエンジン Amazon Kinesis Streams AWS Lambda 他 システム (注意) 他システムが受けられるキャパシティに合わせた仕組み化が必要。場合によっては完全に 切り離してバッチ処理で他システム連携を行うケースも検討 LambdaのDLQ機能を使うことで他システムでエラーがおきてもイベントを救うことができる
  40. 40. 40 ストリーム処理 対象シーン - センサーデータに対して異常検知、スライディングウィンドウ処 理などをストリームで処理したい 条件 AWS IoT AWS Lambda Amazon Kinesis Analytics Amazon Kinesis Streams Amazon Kinesis Streams (注意) 上記は、Amazon Kinesis Analyticsで処理できる場合。実施したい内容によっては、 Amazon EMR上のSparkを利用するなどやりたことに応じて組む必要がある
  41. 41. 41 モバイルアプリ連携パターン 対象シーン - モノとモバイルアプリを紐付けるケース - 家電とそのコントロールアプリをユーザ認証をもって紐付ける 条件 - 機器特定IDをローカルの手段で読み取れる(入力できる) - 機器特定IDとThing名が同じ AWS IoT 物理的にIDを読み取り (QRコードなど、機器特定ID Cognito ID IoT Policy Cognito IDとThingを紐 付けたPolicyをアタッチ (注意) 機器特定IDとThing名が異なる場合は、API GWなどカスタムのAPIを通して、IDを特定し、Policyを作 成し、アタッチすることも可能
  42. 42. 42 ThingA ThingA_1 ThingA_2 ThingA_3 命名規則は、ポリシー設定にも影響します。 詳細は以下のドキュメントを御確認ください。 http://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/thin g-policy-examples.html 複数のデバイスステータスを管理するパターン 対象シーン - 1つのデバイスに対して複数のステータスなどをもたせたい場合 条件 - Thing名を利用したシャドー名を利用 デバイスシャドーは、1つのThingに対して複数作ることができます。 シャドーのパラメータが複数あり、更新頻度が高ければ、複数にするこ とをお勧めします。
  43. 43. 参考 :Device Shadow • Developer Guide – https://docs.aws.amazon.com/ja_jp/iot/latest/developergui de/iot-thing-shadows.html 43
  44. 44. オペレーション要件別デザインパターン 44
  45. 45. 45 デバイス証明書登録 対象シーン - デバイスを製造する段階でデバイス証明書を書き込む 条件 - Just-in-Time Registration機能を使った登録 AWS IoT 中間CA 事前にCAとしての登録 出荷 AWS Lambda IoT Policy ポリシーアタッチ
  46. 46. 参考:AWS IoT デバイス証明書の登録について • AWS IoT デバイス証明書を作成および登録する – http://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/d evice-certs-create.html • 自前の証明書を使用する – http://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/d evice-certs-your-own.html • Best Practices for IoT Security in the Cloud – https://www.slideshare.net/AmazonWebServices/february- 2016-webinar-series-best-practices-for-iot-security-in-the-cloud 46
  47. 47. 参考:Just-in-Time Registration (JITR) • Blog – https://aws.amazon.com/blogs/iot/just-in-time-registration- of-device-certificates-on-aws-iot/ • JITR - AWS Lambdaのサンプルコード – https://github.com/awslabs/aws-iot- examples/blob/master/justInTimeRegistration/deviceActivati on.js 47
  48. 48. 48 ファームアップ 対象シーン - 特定のデバイスに対してファームアップを指示 条件 - Device Registryにデバイスとファームバージョンを管理している - Device Shadowを使ってコマンドの実行が可能 - HTTPSでファームをダウンロード可能 ① ファームをストア ② list-things APIで対象デバイスを検索 ③ 対象デバイスのShadow のDesired更新 ⑤ ファームダウンロード ④ Delta (注意)デバイス側にDevice Shadowを受け取り、ファームアップをするアプリがデバイス上に実行さ れていること Shadow
  49. 49. 49 デバイスの挙動管理 対象シーン - デバイスが期待したとおりの挙動をしているかを確認したい 条件 - CloudWatchを利用した確認 [代表的なAWS IoTのメトリックス] • PublishIn.Success • Ping.Success • Connect.Success メトリックス詳細 http://docs.aws.amazon.com/iot/latest/developerguide/metrics_dimensions.html ユースケース例 http://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/monitoring-cloudwatch.html
  50. 50. AWS IoTの制限 設計上考慮すべき代表的な制限 (2017年2月時点の制限であり、変更される可能性があります。詳細は以下のURLを確認してください。) http://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/iot-limits.html • メッセージサイズ 一度に発行できるメッセージのペイロードは、128 KB に制限されます。こ のサイズを超えるメッセージは、AWS IoT サービスによって拒否されます。 • Shadow JSON 状態ドキュメントの最大サイズ JSON 状態ドキュメントの最大サイズは 8 KB です。 • シャドウの有効期間 1 年以上更新または取得されていない Thing Shadows は AWS IoT によっ て削除されます。 50
  51. 51. 参考資料 • AWS IoT – http://aws.amazon.com/jp/iot/ • AWS IoT開発者用リソース – https://aws.amazon.com/iot-platform/developer-resources/ • AWS Greengrass – https://aws.amazon.com/jp/greengrass/ • 関連Blog – https://aws.amazon.com/jp/blogs/database/managing-iot-and- time-series-data-with-amazon-elasticache-for-redis/ 51
  52. 52. オンラインセミナー資料の配置場所 • AWS クラウドサービス活用資料集 – http://aws.amazon.com/jp/aws-jp-introduction/ • AWS Solutions Architect ブログ – 最新の情報、セミナー中のQ&A等が掲載されています – http://aws.typepad.com/sajp/ 52
  53. 53. 公式Twitter/Facebook AWSの最新情報をお届けします 53 @awscloud_jp 検索 最新技術情報、イベント情報、お役立ち情報、 お得なキャンペーン情報などを日々更新しています! もしくは http://on.fb.me/1vR8yWm
  54. 54. AWSの導入、お問い合わせのご相談 AWSクラウド導入に関するご質問、お見積り、資料請求を ご希望のお客様は以下のリンクよりお気軽にご相談ください https://aws.amazon.com/jp/contact-us/aws-sales/ ※「AWS 問い合わせ」で検索してください
  55. 55. 55

×