クラウドアプリケーションを開発する

本ガイドでは、シンプルなクラウドアプリケーションを作成する方法について学ぶことができます。

クラウドアプリケーションの作成

まずはクラウドアプリケーションの基礎として、クラウドサービスを用いたシンプルなクラウドアプリケーションを作成する方法を学びます。 本ガイドでは、サンプルとして下記のようなクラウドアプリケーションを作成します。

  • クラウドアプリケーション概要
    My IoTエッジから送信されたデータを解析し、条件に応じた処理を行うアプリケーション。

Step 1. 作業端末の環境構築

クラウドアプリケーションを開発するための環境を作業端末に構築します。
環境構築手順の詳細は、別途 My-IoT ユーザーマニュアル を参照してください。

Step 2. 構成パターンの選定

次に、クラウドアプリケーションの構成パターンを選定します。
My-IoTデータストアに蓄積したデータをどのような用途で利用するかにより、必要となるクラウドのリソースが異なります。「My-IoTプラットフォーム仕様書」では、用途別に6つの構成パターンをサンプルとして記載しています。
構成パターンの詳細については、 クラウドアプリケーション - 用途別のクラウドアプリケーション構築 を参照してください。

上記の「クラウドアプリケーション概要」で記載しているアプリケーションは、 パターン5パターン6 を組み合わせることで、目的の構成を作成することができます。

Step 3. クラウドアプリケーションの開発

クラウドアプリケーション-用途別のクラウドアプリケーション構築に記載されている各パターン構成から、Step 2 で選定したCloudFormationテンプレート例、およびカスタム処理ソースコード例を参照し、作業端末にてソースファイルパッケージ(カスタムLambda関数)と、CloudFormationテンプレートファイルを作成します。

コネクタの設計と登録

エッジアプリケーションから送信されたデータを利用した処理を行う場合は、取り扱うデータ形式を定義したコネクタを設計します。
コネクタとは、クラウドアプリケーションが処理に必要とするデータ形式を定義したものです。
同一のコネクタを使用したエッジアプリケーションとクラウドアプリケーションを組み合わせることで、
同一のデータ形式でエッジアプリケーションからのデータ蓄積、クラウドアプリケーションからのデータ取り出しが可能となります。

クラウドアプリケーションを開発する際は、ここで設計したコネクタ仕様に沿ったデータをMy-IoTデータストアから取得し、取り扱うように開発していきます。

コネクタはクラウドアプリケーションをIoTストアに登録する際に必要になりますので、コネクタの設計が完了しましたら、事前にIoTストアにコネクタを登録しておいてください。
コネクタの登録方法については、 My-IoT ユーザーマニュアル を参照してください。

既にIoTストアに登録されているコネクタを使用する場合は、設計と登録は必要ありません。
使用するコネクタ仕様に従ってクラウドアプリケーションを開発してください。

コネクタの詳細については、 コネクタ仕様 を参照してください。

ソースファイルパッケージ(カスタムLambda関数)の作成

クラウドアプリケーションで処理する内容を決めたら、実際にカスタムLambda関数を作業端末上で作成します。
用途別のクラウドアプリケーション構築の各パターンにあるカスタム処理ソースコード例には、開発者の用途に合わせ修正・実装が必要な箇所をコメントとして記載しているため、コメント内容を参考に作成してください。
作成方法の詳細については My-IoT ユーザーマニュアル を参照してください。

Lambda関数の一般的な作成方法については AWS公式のドキュメント を参考にしてください。

カスタムLambda関数の処理について修正と確認が終わったら、カスタムLambda関数実行に必要なパッケージをまとめて一つのディレクトリにまとめ、zip形式で圧縮します。これをソースファイルパッケージと呼びます。

WebUIパッケージの作成

クラウドアプリケーション構築のパターン3など、Webアプリを使用するクラウドアプリケーションを作成する場合は、HTMLファイルやjsファイルなどのリソースファイルを作成します。
作成方法の詳細については My-IoT ユーザーマニュアル を参照してください。

リソースファイルの作成が終わったら、リソースファイルを一つのディレクトリにまとめ、zip形式で圧縮します。これをWebUIパッケージと呼びます。

CloudFormationテンプレートファイルの作成

ソースファイルパッケージが完成したら、カスタムLambda関数をクラウドアプリケーションとして登録するために、CloudFormationテンプレートファイルを作成します。json/yml/yaml形式で作成してください。
用途別のクラウドアプリケーション構築の各パターンにあるCloudFormationテンプレート例には、開発者の用途に合わせ修正・実装が必要な箇所をコメントとして記載しているため、コメント内容を参考に作成してください。

CloudFormationテンプレートの記述方法については AWS公式ドキュメント を参照してください。

Step 4. クラウドアプリケーションの登録

ソースファイルパッケージおよびWebUIパッケージ(Webアプリを作成する場合)、CloudFormationテンプレートファイルが完成したらIoTストアへ登録を行います。
詳細については別途 My-IoT ユーザーマニュアル を参照してください。