Node-RED設定

info

本項は、OpenBlocksにおけるNode-REDのインストールと使用するに当たり必要となる設定事項について解説するものです。
Node-REDエディタの操作方法については、こちらを参照して下さい。
また、本項におけるノードとはNode-REDのノードを意図するものです。

Node-REDのインストール

本製品出荷時では、Node-REDはインストールされておりません。
WEB-UIのメンテナンス⇒機能拡張タブからNode-REDパッケージをインストールして下さい。

set1

WEB-UIのメンテナンス⇒機能拡張タブの機能拡張ペインにてパッケージを選択することができます。

set2

インストール機能のリストからNode-REDを選択します。
その後、インストールの実行ボタンを押し、インストールを行って下さい。

なお、インストール完了後には反映を行うため、本体再起動が必要となります。
メンテナンス⇒停止・再起動タブからOpenBlocksの再起動を行って下さい。

Node-RED起動設定

Node-REDのインストールが完了している場合、WEB-UIのサービス⇒基本タブにNode-REDの項目が表示されます。

このNode-REDのリンクを押して下さい。これにより、Node-REDタブへと遷移します。

set3set4

Node-RED⇒Node-REDタブからNode-RED自体の設定を行います。

  • Node-RED
項目説明
使用設定Node-REDの使用設定を行います。Node-REDを使用する場合には、使用するを選択して下さい。
ポート番号Node-REDへアクセスするためのポート番号を設定します。通常は、デフォルトの1880から変更する必要はありません。
ログイン認証設定ログイン認証を使用する場合には使用するを選択し、ユーザー名及びパスワードを設定し保存ボタンを押して下さい。
使用Config設定Node-RED自体の起動設定Configファイルを本システムまたはユーザー編集したものと切り替えることができます。
ユーザー定義コンフィグを選択した場合、コンフィグ編集用タブが表示されます。

設定完了後、保存ボタンを押すことによりNode-REDが起動又は停止もしくは再起動します。

リンクボタンを押すことによって稼働中のNode-REDエディタへアクセスすることができます。ただし、AirManage経由の場合にはアクセスは行えません。AirManage経由の場合にはURIプロキシ機能を用いてアクセスして下さい。

また、Node-RED機能を使用する状態にて、保存ボタンを押した場合にて、フィルターが解放されていない場合には、解放確認のポップアップが表示されます。ローカルエリアネットワークワークのみ全てのいずれかのボタンを押して下さい。(モバイル回線を用いている場合、モバイル回線のみのボタンも表示されます。)

set5

Node-REDのブラウザフィルタについて

Node-REDのインストールが完了している状態でNode-REDエディタへアクセスする場合、Node-REDのフィルターを開放する必要があります。
フィルターの開放設定を行っていない場合には、WEB-UIのシステム⇒フィルタータブのフィルター開放設定ペインにてNode-REDのフィルターを開放して下さい。

set6

デフォルトではNode-REDエディタへのアクセスはできないようにフィルターが適用されています。
有効に設定し、保存ボタンを押して下さい。

なお、セキュリティの観点上、Node-REDの設定完了後はフィルターを閉鎖して下さい。

パケットフィルタについて

OpenBlocksの入力方向のパケットフィルタは、WEB-UIへのアクセスや時刻同期等、システムの動作に必要となるポートを除き開放されておりません。

TCP 入力ノード等、リモートからの接続を待ち受けるノードを使用し外部からのIPパケットを受信する場合、必要に応じて別途パケットフィルタを開放する必要があります。

パケットフィルタの操作は、/var/webui/local/bin/iptables-ext.shファイルを作成し メンテナンス⇒フィルタータブのフィルター開放設定ペインの上部にある拡張フィルタ対応ボタンを押し、拡張フィルタ設定ファイル編集ペインを表示し、表示されるシェルスクリプトを編集し保存ボタンを押して下さい。
(この機能はWEB-UIからiptables編集するスクリプトファイル(/var/webui/local/bin/iptables-ext.sh)を作成し編集できるようにしたものです。)

Node-REDログについて

Node-RED自体のログについては、Node-RED⇒ログタブから確認することができます。

log1

閲覧したいログファイルをログ欄から選択します。

log2

ログファイルの選択を行うと、対象ログファイルの末尾が表示されます。
また、ダウンロードボタンを押すことによりログファイルのダウンロードが行えます。

Node-REDへのノード追加

Node-REDに対して対応するファイルをアップロードすることにより、Node-REDに対してノードを追加することができます。
ノード用のファイルアップロードはNode-RED⇒ファイルタブから行えます。なお、本機能でアップロードする箇所の機能については、多言語等の対応機能は含まれておりません。

add1

  • nodeファイル
項目説明
アップロードNode-REDのアップロード用に単体のファイルをアップロードが行えます。
アップロードするファイルを選択後、対応するアップロードボタンを押して下さい。
一括アップロードNode-REDのアップロード用に複数のファイルをアップロードが行えます。
複数のファイルをアップロードする場合、tar形式に圧縮したファイルを指定して下さい。
アップロードするファイルを選択後、対応するアップロードボタンを押して下さい。

アップロードしたノードファイルをNode-REDに反映させる場合には、Node-RED自体の再起動が必要となります。後述のダッシュボードからプロセスの再起動を推奨します。

Node-REDのノードの作成方法については以下のURLを参照して下さい。

https://nodered.jp/docs/creating-nodes/first-node

また、本項によるノード追加の場合、ノードの公開は行われないためpackage.jsonの作成等は不要です。

なお、フォーマットエラー等のファイル(html及びjsファイル)をアップロードした場合、読み込みがスキップされ、対象ノードは表示されません。

Node-REDのConfig編集

Node-RED⇒Node-REDタブの使用Config設定にてユーザー定義コンフィグを選択している場合、Node-RED⇒編集タブが表示されます。

この編集タブからNode-RED自体のコンフィグ情報を編集できます。

conf1

  • 編集
項目説明
編集対象ファイルsetting.jsを選択して下さい。ファイルを選択した段階で、現状使用するコンフィグファイルの内容がロードされます。
最終保存時のユーザーコンフィグを読み込みたい場合は、Load(ユーザーコンフィグ)ボタンを押して下さい。
また、システム作成のコンフィグを読み込みたい場合は、Load(システムコンフィグ)ボタンを押して下さい。
※本項目の編集については十二分に理解がある方を前提としています。

コンフィグファイルの編集後、保存ボタンを押すことにより反映されます。
また、編集中のコンフィグファイルの内容をエクスポートボタンを押すことで保存することが可能です。

Node-REDのプロセス状況について

Node-REDを使用設定にしている場合、ダッシュボードタブにてNode-RED自体のプロセス状況を確認することができます。
プロセス状況に応じて、起動停止初期化ボタン等が表示されます。

info

初期化ボタンはNode-REDのフロー状況等が削除されますので、ご注意下さい。

proc

Node-REDエディタアクセスポートのHTTPS化

Node-REDエディタへのアクセスは通常ではHTTP通信となります。

セキュリティ強化のためHTTPS通信へと変更を行いたい場合には、以下の方法を実施することで切り替え可能となります。

HTTPS通信に切り替えた場合、WEB-UIのNode-REDタブ内のリンクボタンからのリンクはHTTP前提となっている為、リンク切れが発生します。

  1. 証明書の作成
    本項では/var/tmpディレクトリ配下に自己署名証明書を作成しています。正式なものとして使用するには推奨いたしません。
# cd /var/tmp
# openssl genrsa 2048 > privatekey.pem
# openssl req -new -key privatekey.pem 2> /dev/null > server.csr <<!
JP
Tokyo
!
# openssl x509 -days 365 -req -signkey privatekey.pem < server.csr 2> /dev/null > certificate.pem
  1. Node-RED⇒Node-REDタブ内の使用Config設定ユーザー定義コンフィグに設定し保存します。

uconf

  1. Node-RED⇒編集タブにてコンフィグを修正します。
    編集対象ファイルをsetting.jsを選択し、テキストボックス内を変更します
    変更内容は”var fs”部のコメント解除及びhttpsディレクティブのコメント解除・パス修正となります。
  • 変更前
・・・・・・
// The https setting requires the fs module. Uncomment the following
// to make it available:
//var fs = require("fs");
・・・・・・
// The following property can be used to enable HTTPS
// See http://nodejs.org/api/https.html#https_https_createserver_options_requestlistener
// for details on its contents.
// See the comment at the top of this file on how to load the fs module used by
// this setting.
//
//https: {
// key: fs.readFileSync('privatekey.pem'),
// cert: fs.readFileSync('certificate.pem')
//},
・・・・・・
  • 変更後
・・・・・・
// The https setting requires the fs module. Uncomment the following
// to make it available:
var fs = require("fs");
・・・・・・
// The following property can be used to enable HTTPS
// See http://nodejs.org/api/https.html#https_https_createserver_options_requestlistener
// for details on its contents.
// See the comment at the top of this file on how to load the fs module used by
// this setting.
//
https: {
key: fs.readFileSync('/var/tmp/privatekey.pem'),
cert: fs.readFileSync('/var/tmp/certificate.pem')
},
・・・・・・
  1. 変更完了後、保存ボタンを押すことでHTTPS化は完了となります。

Node-REDのバージョンアップ

インターネット接続環境の場合、Node-RED自体のアップデートを行う事が可能です。弊社で用意しているNode-RED及びNode-REDのモジュールのアップデートは、Node-RED⇒アップデートタブから確認が行えます。

verup1verup2verup3
  • アップデート
項目説明
強制オンラインアップデートアップデート実行ボタンを押すことにより、オンラインアップデートが行われます。
アップデート処理中は状況確認ボタンにて、アップデートログが別ウィンドウにて表示可能です。
また、アップデートが完了すると完了の旨のポップアップが表示されますので、OKボタンを押して下さい。
本機能はオンライン環境である必要がありますので、ご注意下さい。
また、Node-RED及びNode-REDモジュールについては各コントリビューターが用意しているものであるため、互換性が担保されているものではありません。
そのため、事前に確認機等にてアップデート及び動作確認を推奨いたします。