このページの本文へ

JAWS-UG首都圏勉強会レポート ― 第8回

JAWS-UG横浜Rebootで語られたAWS IoTのディープな話

オルトプラス中田さんが語るAWSとAzure、GoogleのIoTの違い

2016年12月12日 07時00分更新

文● 大谷イビサ/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

11月2日にRebootしたJAWS-UG横浜において、「AWS IoTを使う上でのNext Step!!」というタイトルのセッションを披露したのは、オルトプラスの中田聡さん。AWS IoTの使い方や機能、他社サービスとの比較、セキュリティトピックまで幅広く説明した。

進化を続けるAWS IoT サービス連携も魅力

 ピザがまだ残る会場において、長沢さんに続いて登壇したオルトプラスの中田聡さん。中田さんの所属するオルトプラスは2010年に創業した渋谷の会社で、ソーシャルゲームの企画や開発、運営のほか、ゲームの運営委託、広告事業、ベトナムのオフショア開発まで幅広く手がけている。2016年4月に主席フェローに伊勢幸一さんを迎え、VRやIoT、ブロックチェーンなどの先端技術を開発するオルトプラスラボを設立。中田さんもこのオルトプラスラボの開発部に所属している。

LTの冒頭から二酸化炭素の測定を始めたオルトプラスの中田聡さん

 自己紹介を終え、IoTデバイスで会場の二酸化炭素を測定しはじめた中田さんはAWS IoTのこれまでの経緯について整理する。2015年10月に発表されたIoTプラットフォームサービスのAWS IoTだが、2016年4月にはRule EngineがAmazon Machine Learningをサポート。6月にAWS IoT ELF公開しつつ、7月にはThing Typeのサポート、JavaとPythonのSDK、AWS CloudFormationでのAWS IoT対応、8月には証明書のジャストインタイム登録などを矢継ぎ早に発表している。

AWS IoTの開発経緯

 中田さんは、Thing登録や証明書・ポリシー作成などAWS IoT開発の大まかな流れを説明した。また、SORACOM Airの登録やAWS LambdaやKinesis Stream、Elastic Searchなど各種サービスとの連携、増えたThingやポリシーの管理、マネージメントコンソールとCLIの使い分けなどについても解説した。

AWS、Azure、GoogleでのIoTを比較

 今回のハイライトはAWSとAzure、Googleなどのサービスとの比較だ。まずIoTのアーキテクチャに関しては、RESTサービスやデータ分析、メッセージキューなどの基本機能を、AWS IoT・Azure IoTともにカバーしており、ビルディングブロックのように他のサービスと連携して使えるという。一方、Google Cloud Platformはおもにアプリケーションや分析サービスを提供しており、前者とコンセプトがやや違うようだ。

各社のIoTサービスのアーキテクチャ

 また、機能に関しては、AWS IoTやAzure IoT Suiteがエンドユーザーによるデバイスのアクティベイト、ディスアクティベイトができるようになっており、デバイスレベルの認証やセキュリティの機能も用意している。一方で、Googleでは、ここにあたる機能がないため、開発する必要があるという。プロトコルに関しては、AWS IoTとAzure IoT SuiteがHTTP以外のプロトコルとして、MQTTとAMQPSなどをサポートしているのに対し、GoogleはHTTP/2とgRPCに対応。SDKに関しても、AWS IoTとAzure IoT Suiteは主要な言語をサポートしているが、GoogleのSDKは言語サポートは抱負だが、プロトコルがgRPC対応のみになるという。Googleだけがユーザーを選ぶサービスと言える。

サービスの機能的な違い

 料金体系は3社でそれぞれ違いがあり、AWS IoTとAzure IoT Suiteはメッセージ単位、GoogleはAPI呼び出し数で課金される。ただ、メッセージ1通のサイズが異なり、AWS IoTは512B、Azure IoTが4KB、Googleが64KB単位になっている。そのため、8KBのメッセージを送る場合は、AWS IoTが16メッセージ必要なのに対し、Azureでは2メッセージ、Googleは1メッセージで済むという。

サービスの料金面での差異

AWS IoTを活用したセキュリティ対策をガイド

 続いて気になるトピックとして挙げられたのが、IoTで特に重視されるセキュリティ。中田さんは、防犯カメラやルーターなどのIoTデバイスを踏み台として、米国のセキュリティ情報サイトにDDoS攻撃が仕掛けられた「Mirai」ボットネットの事件を紹介。Miraiの作者はボットネットのソースコードをGitHubに限定公開したため、ソースコードの悪用による影響も懸念されている。「デフォルトのログイン情報を変えてないデバイスが攻撃対象になるので、まずはログイン情報を変更し、インターネットからアクセスされないよう設置する。感染した場合はメモリに常駐するので、いったん再起動する」と中田さんは語る。

 とはいえ、IoTデバイスは実装がシンプルになりがちなので、マルウェア感染のリスクが高いと中田さんは指摘する。省電力・省リソースなので、デバイス上でアンチウイルスソフトを動かすのが難しい。リモートでの起動や停止が必要があるが、

 AWS IoTで実現できる対策としては、まずコンフィグを設置環境ごとに変えるという手がある。これを実現するには、デバイスごとのIoTルールでLambdaを実行し、DBの値によってコンフィグを切り替える方法がある。また、異常動作をしていないか、デバイスのログをS3に定期的に送信したり、仮想デバイスを作れるAWS IoTのシャドウ機能に「電池の残容量」を持たせておき、電池状況によってアラートを出すという方法も考えられるという。

AWS IoTでできるセキュリティ対策

 中田氏は、自身のLTについて「AWS IoTを使うにはマネジメントコンソールとCLIを適切に使い分ける」「AWS IoT以外のサービス概要も知っておく必要がある」「セキュリティを意識した実装が重要」などとまとめる。そして、冒頭から測定を開始した会場の二酸化炭素量をグラフで披露。「ほかの会場では開始時や休憩時に人に二酸化炭素が増えるが、アトラシアンのこの会場は、比較的オープンなので変化が少ない」と語り、登壇を終えた。AWS IoTの概要や他社サービスとの比較、避けて通れないセキュリティの話まで盛り込まれ、初心者にもとっつきやすいセッションだと感じられた。

■関連サイト

カテゴリートップへ

この連載の記事