初めてWatson IoT Platformを使ってみよう、というかたのためのガイドです。
Watson IoT Platformを使ってみるでIoTアプリを準備しました。
MQTTの練習をするために、MQTTブローカーとして無償評価版のMessageSightを用意します。
- MessageSightはrpm版を使用します。
- Linux環境であればそのまま導入します。
- Windows環境やMacbook環境ではDockerが便利です。
- MessageSightはServerコンポーネントに最低で4GB、WebUIコンポーネントに最低で1GBのメモリを使用します。
#FAQ: つながらない?
- 当ページ最下部に設定時のFAQをまとめてあります。
#MessageSightをダウンロードします。
-
IBM® IoT MessageSight™ページを開き、画面右上の「Download Developer Package」ボタンからIBM IDでログインしてMessageSight V2のパッケージをダウンロードします。370MB程度のサイズです
- ダウンロードが完了したら
IBMIoTMessageSight-2.0.zip
をunzipすると、MessageSight ServerとWebUIのそれぞれのtzファイル(例:IBMIoTMessageSightServer-2.0.20160525-2146.tz
)などが現れます。この中にrpmファイルやDockerfileなどが含まれます(次のステップで準備していきます)。
#CentOSでrpmを導入します。
-
Installing IBM IoT MessageSightのページを参照します。
-
Preparing the IBM IoT MessageSight .tz packages for installationを参照してファイルを準備します。
-
Installing the IBM IoT MessageSight RPM on a host OSを参照してMessageSightのServerとWebUIをそれぞれ導入し、手順にしたがいそれぞれのインスタンスを起動します。
-
Logging in to the IBM IoT MessageSight Web UIを参照して最初のWebUI画面へログインします。
このとき、https://127.0.0.1:9087
とhttps
である点に注意します。
ブラウザで証明書についての認証する必要がある場合があります。
コンソール(黒い画面)にログインプロンプトが表示されるので
ユーザー名:admin
パスワード:admin
でログインします。
-
WebUIへログインできました。
#Macbook/WindowsでDockerで導入します。
-
Docker for Mac、Docker for Windowsなどを参照してDockerを準備します。MacbookがMarvericksなど古くてDocker for Macが使用できない場合には、deprecateされていますがboot2dockerが自己責任で使用可能ではあります。Windows 7などではDocker Toolboxからインストールが可能です。
-
[Installing IBM IoT MessageSight] (http://www.ibm.com/support/knowledgecenter/SSWMAJ_2.0.0/com.ibm.ism.doc/QuickStartGuide/qsg10000.html)のページを参照します。
-
Preparing the IBM IoT MessageSight .tz packages for installationを参照してファイルを準備します。
-
Installing IBM IoT MessageSight in Docker containersを参照してMessageSightのServerとWebUIをそれぞれ導入し、手順にしたがいそれぞれのインスタンスを起動します。
-
Logging in to the IBM IoT MessageSight Web UIを参照して最初のWebUI画面へログインします。
このとき、https://xx.xx.xx.xx:9087
とhttps
である点に注意します。
Docker環境によっては、hostonlyでネットワークが構成されている場合があります。その場合、VirtualBoxのport forwardで9087
ポートへ外部からアクセス可能に設定する必要がある場合があります。
boot2dockerを使用している場合、boot2docker ip
コマンドで外部からアクセス可能なIPアドレスを入手します(参考:boot2dockerの使い方)。
ブラウザで証明書についての認証する必要がある場合があります。
コンソール(黒い画面)にログインプロンプトが表示されるので
ユーザー名:admin
パスワード:admin
でログインします。
-
WebUIへログインできました。
#MessageSight Serverへ接続します。
- WebUIからMessageSight Serverを接続します。
- WebUI画面上部の「サーバー」メニューを開き、「サーバーの追加または削除」を選択します。
- 「サーバーの追加または削除」画面で、「+」記号を押してMessageSight Serverを追加します。デフォルトで
9089
ポートで稼働しています。
- 「テスト接続」ボタンを押してMessageSight Serverへ接続できる事を確認します。
このとき、MessageSight Serverインスタンスに十分なメモリが割り当てられていないと、「接続のテスト」を行った時点でMessageSight Serverが異常終了するので注意が必要です。 - WebUIのホーム画面へ戻り、「Messaging Tester サンプル・アプリケーション」を使用してサンプルアプリからMessageSightへ接続し、publish/subscribeできる事を確認します。
#MessageSight インストール FAQ:
- 再起動後、
1883
ポートへ接続できない: → エンドポイントが「使用不可」になっていませんか? WebUIの「メッセージング」メニューから「メッセージング・ハブ」の「DemoHub」を選択して鉛筆マークで編集モードに入り、「DemoHub」編集画面の「エンドポイント」タブを開き、デフォルトの「DemoMqttEndpoint」(ポート:1883)が使用可能になっているかを確認します。使用不可になっている場合、「DemoMqttEndpoint」を選択して鉛筆マークで編集モードに入り、「エンドポイントの編集」画面で「「使用可能」にチェックを入れます。 - WebUIからMessageSight Serverが登録できない: → MessageSight Serverに十分なメモリが割り当てられている事を確認します。デフォルトで4GBが必要です。メモリ割り当てが不足するとWebUIからの「接続のテスト」時にMessageSight Serverが異常終了する場合があります。
- Docker環境で9087ポートがアクセス不可: → Dockerがhostonlyでネットワークを構成している場合があります。VirtualBoxのport forwardで9087ポートなどが外部からアクセスできるように設定します。