2.3. ICE Core 向けAdd-on のセットアップ¶
AI Add-onやOperability Add-onで提供される追加機能のセットアップ方法について説明します。
2.3.1. ICE が提供するNode-REDノード のセットアップ¶
ICEが提供するNode-REDノード共通のセットアップ手順と、それぞれのNode-REDノード固有のセットアップ手順について説明します。
2.3.1.1. ICE Coreのセットアップ¶
事前にICE Coreをセットアップします
2.3.1.2. Node-REDノードのセットアップ¶
2.3.1.2.1. アーカイブの展開¶
{ICE-NODE物件} を {ICE_HOME} で展開してください。 {ICE_HOME} はICE Coreのセットアップ時と同じディレクトリとなります。
例) {ICE_HOME} が/opt/nec/pf/ice、{ICE-NODE物件} がnode-red-contrib-connexive-ice-onvif-noarch-1.2.3.tar.gzの場合
# cd /opt/nec/pf/ice
# tar xzf node-red-contrib-connexive-ice-onvif-noarch-1.2.3.tar.gz
2.3.1.2.2. Node-REDノード有効化¶
ICE_HOME/core/bin/addon_install (またはaddon_install.cmd) を実行して、Node-REDノードを有効化します。
例){ICE_HOME} が/opt/nec/pf/iceにnode-red-contrib-connexive-ice-onvifノードを有効化する場合
# cd /opt/nec/pf/ice/core/bin
# ./addon_install onvif
2.3.1.3. Node-REDノード固有のセットアップ¶
2.3.1.3.1. ice-onvifノードによるカメラのdiscovery向けファイアフォール設定¶
ONVIF規格に準拠したIPカメラのdiscoveryを行うために、ソースポートが3702のUDPパケットを受信許可するようにファイアウォールを設定します。
カメラが接続されたネットワークに接続するネットワークインタフェースがeth0
の場合、次コマンドで設定できます。
# iptables -A INPUT -i eth0 -p udp -m udp --sport 3702 -j ACCEPT
ファイアウォールの設定を永続化する場合、以下のコマンドを実行してください。
# iptables-save > /etc/iptables/rules.v4
2.3.1.4. 起動確認¶
ICE Coreの起動を確認します。
問題の有無を確認するには、Node-REDのログを見て、フローが開始されていること、エラーが発生していないことを確認してください。 また、フローエディタにアクセスできるのであれば、パレットにインストール済みノードがすべて表示されることを 確認いただくことで、インストールが問題なく実行されたことが確認できます。
2.3.2. MQTT Extensionのセットアップ¶
2.3.2.1. ICE Coreのセットアップ¶
事前にICE Coreをセットアップします
2.3.2.2. アーカイブの展開¶
{MQTT Extension物件} を {ICE_HOME} で展開してください。 {ICE_HOME} はICE Coreのセットアップ時と同じディレクトリとなります。
例) {ICE_HOME} が/opt/nec/pf/ice、{MQTT Extension物件} がiot_connectivity_engine_core-mqtt-ext-noarch-1.2.3.tar.gzの場合
# cd /opt/nec/pf/ice
# tar xzf iot_connectivity_engine_core-mqtt-ext-noarch-1.2.3.tar.gz
2.3.2.3. 起動確認¶
ICE Coreの起動を確認します。
2.3.3. プロビジョニングエージェントのセットアップ¶
2.3.3.1. プロビジョニングエージェントのファイル展開¶
{プロビジョニングエージェント物件} を {ICE_HOME} で展開します。
例) {ICE_HOME} が/opt/nec/pf/ice、{ICE Core物件} がiot_connectivity_engine_provisioning_agent-noarch-1.2.3.tar.gzの場合
# mkdir -p /opt/nec/pf/ice
# cd /opt/nec/pf/ice
# tar xzf iot_connectivity_engine_provisioning_agent-noarch-1.2.3.tar.gz
2.3.3.2. サービスの登録¶
rcスクリプトの修正
{ICE_HOME}/pa/bin/ice-pa の下記行を修正します。
先頭のコメント行部分で、必要に応じて、pidfileとlockfileの場所等を変更します。
# pidfile: /tmp/ice/ice-pa.pid # lockfile: /tmp/ice/ice-pa.lock
コメント行の少し下部分で、${ICE_HOME}のパスを記入します。
PIDFILE
、LOCKFILE
、INITFILE
は必要に応じて変更してください。ICE_CORE_HOME=${ICE_CORE_HOME-/opt/nec/pf/ice/core} ICE_PA_HOME=${ICE_PA_HOME-/opt/nec/pf/ice/pa} PIDFILE=/tmp/ice/${service}.pid LOCKFILE=/tmp/ice/${service}.lock INITFILE=${ICE_HOME}/${service}.init
また、起動/停止順序がICE Coreよりも先になるように、chkconfigの設定を適宜見直してください。
# chkconfig: 2345 91 91
注釈
tmpwatchなど/tmp下のファイルが定期削除されるような設定になっている場合、このpidfile, lockfileのパス変更は必須です。/var/tmp下などを指定してください。
サービスの登録と有効化
systemd をサポートするOSの場合
$ sudo cp /opt/nec/pf/ice/core/bin/ice-pa /etc/init.d/ $ sudo systemctl daemon-reload $ sudo systemctl enable ice-pa $ systemctl status ice-pa (Loaded: の項目が loaded である事を確認する)
SysV init をサポートするOSの場合
$ sudo cp /opt/nec/pf/ice/core/bin/ice-pa /etc/init.d/ $ sudo chkconfig --add ice-pa $ chkconfig --list (ice-paの行がある事を確認する)
Upstart をサポートするOSの場合
$ sudo cp /opt/nec/pf/ice/core/bin/ice-pa /etc/init.d/ $ sudo insserv -d ice-pa $ insserv -s (ice-paの行がある事を確認する)