【速報】新サービス「AWS IoT」 登場! #reinvent

2015.10.09

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、せーの@ラスベガスです。Re:Invent 2015 Day2 Keynoteに参加中です。 ついに、待ちに待ったAWS初のIoT系新サービス「AWS IoT」が発表されたので速報としてご紹介します!!

aws_iot_2

https://aws.amazon.com/iot/

http://docs.aws.amazon.com/iot/latest/developerguide/what-is-aws-iot.html

特徴

AWS IoTはIoTのハードウェアをサポートするバックエンドの仕組みをいかにスマートに、簡単に作れるようになるか、ということに重点を置いたサービスとなります。 AWS IoTは、インターネットに接続されたデバイス(たとえば、センサ、アクチュエータ、組み込みデバイス、スマート家電など)とAWSの間で安全な双方向通信を提供します。 これにより、複数のデバイスからのテレメトリデータを収集し、保存したデータを分析することができます。また、携帯電話またはタブレットからこれらのデバイスを制御するアプリケーションを作成することができます。

主なコンポーネント

awsiot_1

Device Gateway

デバイスとAWSをつなぐゲートウェイになります。プロトコルはMQTTになります。MQTTは古いプロトコルですがよく出来ていて、遅延性も低くつながります。x509を使って認証をかけることができ、この認証をIAM Roleと紐付けることができます。これにより新しいデバイスの認証、また触らなくてもデバイスを起動することができるのです! 集約化した窓口としてPub-Subの仕組みを使用しています。Subの方がデータを受け取ります。

デバイス側からDevice GatewayへはAWSが用意したSDKを使用します。SDKの言語は

  • C
  • JavaScript
  • Arduino
  • Android
  • iOS

となります。

Rules

収集したデータをどのようにルールづけするか、というルールエンジンです。一つ一つがSQLから構築でき、拡張性が高く、オーケストレーションが可能です。ルール化したものをパラメータとしてルールエンジンに格納します。SQLにはワイルドカードも使えます。

Registry

Registryはルール付けしたデータをPub-subのトピックとして送り出す為に各デバイスに固有のIDを割り当てるものです。送り先はAWSの各リソース、またはデバイスに対してrepublishすることも可能です。これにより簡単にデバイスのコントロールが出来るようになります。

Device shadow

Shadowはデバイスのステータスを気にせずに永続的なバージョンを貯めておくことができます。つまりデバイスがオフラインだった場合はShadowにデータのステータスがたまり、オンラインになった時に再び望むステータスに変更される、ということです。

詳細は後ほど!