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}のパスを記入します。 PIDFILELOCKFILEINITFILEは必要に応じて変更してください。

    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の行がある事を確認する)