JAWS-UG横浜Rebootで語られたAWS IoTのディープな話
オルトプラス中田さんが語るAWSとAzure、GoogleのIoTの違い
2016年12月12日 07時00分更新
11月2日にRebootしたJAWS-UG横浜において、「AWS IoTを使う上でのNext Step!!」というタイトルのセッションを披露したのは、オルトプラスの中田聡さん。AWS IoTの使い方や機能、他社サービスとの比較、セキュリティトピックまで幅広く説明した。
進化を続けるAWS IoT サービス連携も魅力
ピザがまだ残る会場において、長沢さんに続いて登壇したオルトプラスの中田聡さん。中田さんの所属するオルトプラスは2010年に創業した渋谷の会社で、ソーシャルゲームの企画や開発、運営のほか、ゲームの運営委託、広告事業、ベトナムのオフショア開発まで幅広く手がけている。2016年4月に主席フェローに伊勢幸一さんを迎え、VRやIoT、ブロックチェーンなどの先端技術を開発するオルトプラスラボを設立。中田さんもこのオルトプラスラボの開発部に所属している。
自己紹介を終え、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月には証明書のジャストインタイム登録などを矢継ぎ早に発表している。
中田さんは、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はおもにアプリケーションや分析サービスを提供しており、前者とコンセプトがやや違うようだ。
また、機能に関しては、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のシャドウ機能に「電池の残容量」を持たせておき、電池状況によってアラートを出すという方法も考えられるという。
中田氏は、自身のLTについて「AWS IoTを使うにはマネジメントコンソールとCLIを適切に使い分ける」「AWS IoT以外のサービス概要も知っておく必要がある」「セキュリティを意識した実装が重要」などとまとめる。そして、冒頭から測定を開始した会場の二酸化炭素量をグラフで披露。「ほかの会場では開始時や休憩時に人に二酸化炭素が増えるが、アトラシアンのこの会場は、比較的オープンなので変化が少ない」と語り、登壇を終えた。AWS IoTの概要や他社サービスとの比較、避けて通れないセキュリティの話まで盛り込まれ、初心者にもとっつきやすいセッションだと感じられた。
この連載の記事
-
第10回
デジタル
キャリアを超えてネットワークを語り合うNW-JAWSが始動! -
第9回
デジタル
カヤックでのAurora移行は「今のところいいことしかない」 -
第7回
デジタル
Reboot完了!潮風とピザの香りが漂うJAWS-UG横浜に行ってきた -
第6回
デジタル
JAWS-UG IoT支部とコラボ!300人で盛り上がった真夏のIoTLT -
第5回
デジタル
AWS初心者がまず知っておきたいこと、ハンズラボ吉田さんが語る -
第4回
デジタル
JAWS-UGコンテナ支部で垣間見えたDockerやECS活用のコツ -
第3回
デジタル
AWS運用に耐えうるIT部門は作れる?情シス支部の議論をのぞく -
第2回
デジタル
首都圏の16支部がそろい踏み!JAWS-UG東京、2年ぶり開催 -
第1回
デジタル
キャンセル待ち150人!Security-JAWS第1回で現場の苦労を見た - この連載の一覧へ