IBM LiteアカウントでNode-REDインスタンスを作成する


はじめに

2017年11月より、IBM CloudにはLiteアカウントができ、一定の制限に従えば、クレジットカード登録なしにずっとクラウドサービスを使えるようになりました。
LiteアカウントではNode-REDのインスタンスも一つ使えるようになっています。本資料ではその手順の説明を行います。

インスタンス利用時には一点ご注意いただきたいことがあります。
Liteアカウントで作成したインスタンスには、
「10日間開発なしでアプリの自動停止」※
「30日間活動なしでサービスの自動削除」
というルールがあります。
しばらく使っていないうちにサービスごと消されていたということもありえますので、バックアップはこまめに取得されることをお勧めします。
具体的には、Node-REDの場合はフロー全体をクリップボードにコピーするという機能があり、これをテキストエディタに張り付けてローカルファイルとして保存すればOKです。

※ 非常にわかりにくいのですが、ここでいう「開発」とは「Cloud Foundryアプリケーションとしての開発」を意味します。
Node-RED上でフローエディタを使って「開発」「デプロイ」を繰り返しても、その変更はCloud Foundryには伝わらないので、結果的に「10日間開発なし」と認識されてしまい、警告メールが発行されるようです。
基本的には、サービスを止められても、30日以内に自分でサービスの再起動をすれば、サービスを消されることはないのですが、このメールが気持ちが悪い方は、この記事の最後に対応方法を記載しましたので、10日毎にこの対応を取っていただければいいかと思います。

前提条件

IBM CloudのLiteアカウントについてはすでに取得済みであることを前提とします。
こちらの手順については、最新版IBM Cloud ライトアカウント登録手順を参考として下さい。

Node-REDサービスの作成

IBM Cloud ダッシュボードのURLにアクセスし、ダッシュボード表示を行います。
画面右上の「リソースの作成」ボタンをクリックします。

  1. 左側のカテゴリーの中から「ボイラーテンプレート」を選択します。
  2. ボイラーテンプレートの一覧から、画面右上の「Node-RED Starter」を選択します。

「Cloud Foundryアプリの作成」の画面が表示されるので
1. 画面最上部の「アプリ名」の名称を入力します。名前は自分の好きなものでかまいませんが、ここで付けた「アプリ名」を元に生成される<アプリ名>.mybluemix.netという名称が、DNSに登録されるインターネット上のホスト名となる関係で、インターネット上でユニークな名称にする必要があります。
2. それ以外はデフォルト値でいいので、画面右下の「作成」ボタンをクリックします。

下のような画面になり「開始中」のステータス表示がされます。
「コマンドラインインターフェイス云々」の表示がされますが、最低限の使い方をする分には関係ないので気にせずサービス作成が終わるのを待って下さい。
約4,5分程度サービス作成にはかかると思います。

下の図のように「実行中」にステータス表示が変われば、サービスが完成しています。
Node-REDの初期セットアップを行うため、アプリURLにアクセスリンクをクリックします。

Node-REDの初期セットアップ

すると、下のような画面が表示されます。この画面では何も行わず、右下の「Next」をクリックして下さい。

次の画面はNode-REDにアクセスするためのUsername/Passwordの設定画面です。
IBM Cloudのアカウントとは関係なく好きなものが設定できます。
以降、Node-REDにログインするときに必要になりますので、設定した値は必ず覚えるようにして下さい。

下の画面では特に操作を行わず「Next」として下さい。

次の画面で「Finish」をクリックすると初期セットアップは完了となります。

Node-RED開発画面へのアクセス

前の画面で「Finish」ボタンを押すと、次のようなNode-REDの初期画面が表示されます。
この画面で「Go to your Node-RED flow editor」のボタンをクリックします。

ログインの画面が表示されるので、先ほど設定したUsername/Passwordを入力して、「ログイン」を、クリックして下さい。

これで無事、Node-REDのフローエディタ初期画面が表示されます。
お疲れ様でした。
後の使い方に関しては別記事Node-RED超入門を書いていますので、こちらを参考にしてみて下さい。

初期セットアップ後のアクセス方法

以降、Node-REDのフローエディタにアクセスするためには、IBM Cloud ダッシュボードのURLにアクセスし、ダッシュボード表示を行った後、赤枠で囲んだNode-REDサービスのリンクをクリックします。

※「10日間開発なし」の警告メールを止める方法

次の手順で、node-redのアプリケーションに対して「restage」という操作を行い、cloudFoundryに対して開発を行ったように見せかけます。
10日がチェックの基準なので、最低10日以内に1回、この操作を行う必要があります。

CFコマンドのインストール

以下のリンク先から、CFコマンドのインストーラをダウンロード、インストールを実行します。
CF ダウンロード先
リンク先の画面はちょっとわかりにくいのですが、少し下の方にスクロールすると、以下のような領域が現れるので、ここからお使いのパソコンの環境に応じて適切なモジュールをダウンロードし、インストールします。

CFコマンドによるログイン

コマンドプロンプト(Windows)またはターミナル(MacとLinux)から次のコマンドを実行し、e-mailアドレスとパスワードを順次聞かれるので、自分のアカウントのものを答えて先に進めます。

$ cf api https://api.ng.bluemix.net
$ cf login

ログインに成功すると以下のような画面になるはずです。

Node-REDアプリケーション名の確認と、該当アプリケーションへのrestage実施

まず、次のコマンドで、IBM Cloud上のアプリケーションの一覧を表示します。(「a」は「application」の略です)

$ cf a

以下のような結果が返ってくるはずですので、Node-REDサービスに該当する行の「名前」の欄を確認します。以下の手順では、仮に名前が 「node-red-myname-1」であったとします。(「rg」は「restage」の略です)

$ cf rg node-red-myname-1

以下のような画面となり、最後に一番下のような画面がでてくれば「restage」に成功しています。