第3章 node-eye を体験する

本章ではトライアルをご契約されたお客様を対象に、Armadillo-IoT ゲートウェイ G2 (以降、 Armadillo と表記)を使ってnode-eyeの基本的な機能を使う手順を説明します。

以降の手順を行なうために、次のものを用意してください。

表3.1 node-eyeを体験するためのチェックリスト

用意するものチェック
Armadillo-IoT ゲートウェイ G2 開発セット 
ATDE5 
ライセンスファイル(squashfs-license-ne-[Distribution ID].img) 
node-eye登録完了通知書に記載のアカウント情報 
DHCPサーバーが稼動している有線LANネットワーク 

手順の中ではArmadilloのNORフラッシュメモリの書き換えとシリアルコンソールを使ったブートローダーの操作を行います。Armadillo-IoT ゲートウェイ G2 のスタートアップガイドと製品マニュアルに記載された操作を一通り確認する事をお勧めします。

[注記]

ライセンスファイルはnode-eye登録完了通知書と同時にメールでお送りしています。

3.1. Armadillo の準備

node-eye を利用するには、Armadillo の NORフラッシュメモリに node-eye に対応したイメージファイルが書き込まれている必要があります。

Armadilloにnode-eye対応イメージを書き込む際に、パーティション構成の変更を伴うため、イメージの書き換えは順を追って行う必要があります。下記の順番でイメージを書き換えてください。

  1. bootloader 領域の書き換えと再起動

  2. recovery 領域の書き換え

  3. kernel 領域と userland 領域の書き換え

  4. license 領域の書き換え

ライセンスイメージファイル以外のイメージファイルは下記URLからダウンロードすることができます。ライセンスイメージファイルは弊社営業担当よりメールにてお送りしています。


手順3.1 Armadillo の準備

  1. イメージファイルの準備

    Armadillo にイメージの書き込みを行なう前に ATDE5 の /var/lib/tftpboot/ ディレクトリに各イメージをコピーしておいてください。

    [PC ~]$ cd /var/lib/tftpboot/
    [PC /var/lib/tftpboot/]$ ls
    linux-aiotg-std-v2.03-ne1.bin.gz              romfs-aiotg-std-v2.06-ne1.img.gz
    loader-armadillo-iotg-std-ne-v3.8.0-ne1.bin   squashfs-license-ne-[Distribution ID].img
    recovery-aiotg-std-ne1.img
  2. ブートローダーイメージの書き換え

    次に、Armadillo を保守モードで起動し、下記コマンドを実行してください。

     hermit>  tftpdl [ArmadilloのIPアドレス] [ATDE5のIPアドレス] \
    --bootloader=loader-armadillo-iotg-std-ne-v[BASE_VERSION]-ne[VERSION].bin 

    tftpdl コマンドの詳細はArmadillo-IoT ゲートウェイ G2製品マニュアル「12.4. TFTP を使用してフラッシュメモリを書き換える」 を参照してください。

    一度 Armadillo の電源を一度切断し、再度保守モードで起動してください。memmap コマンドを実行し、下記のようなパーティション構成となっていればnode-eye対応のブートローダーが動作しています。

    hermit> memmap
    0xa0000000:0xa1ffffff FLA all bf:8K bl:4x32K/l,255x128K/l
    0xa0000000:0xa001ffff FLA bootloader bf:8K bl:4x32K/l
    0xa0020000:0xa081ffff FLA recovery bf:8K bl:64x128K/l
    0xa0820000:0xa0c1ffff FLA kernel bf:8K bl:32x128K
    0xa0c20000:0xa1edffff FLA userland bf:8K bl:150x128K
    0xa1ee0000:0xa1efffff FLA license bf:8K bl:1x128K/l
    0xa1f00000:0xa1ffffff FLA config bf:8K bl:8x128K
    0x80000000:0x87ffffff RAM dram-1 
  3. リカバリイメージの書込み

    続いて、リカバリイメージを書き込みます。下記のコマンドを実行してください。

    hermit>  tftpdl [ArmadilloのIPアドレス] [ATDE5のIPアドレス] --blksize=1024 \
    --recovery=recovery-aiotg-std-ne[VERSION].img
  4. プライマリイメージの書き込み

    プライマリイメージを書き込みます。下記のコマンドを実行してください。

     hermit>  tftpdl [ArmadilloのIPアドレス] [ATDE5のIPアドレス] --blksize=1024 \
    --kernel=linux-iotg-std-v[BASE_VERSION]-ne[VERSION].bin.gz \
    --userland=romfs-aiotg-std-v[BASE_VERSION]-ne[VERSION].img.gz
  5. license 領域の書き込み

    license 領域用イメージを書き込みます。下記のコマンドを実行してください。複数の Armadilloで node-eye を評価される場合、それぞれの個体に別々のライセンスファイルを書き込んでください。

     hermit>  tftpdl [ArmadilloのIPアドレス] [ATDE5のIPアドレス] \
    --license=squashfs-license-ne-[Distribution ID].img

    license 領域用イメージのファイル名は、squashfs-license-ne-[Distribution ID].imgとなっています。 Distribution ID は、WebUI から操作するデバイスを識別するために必要になるので、 必ず Distribution ID と書き込んだArmadillo の対応関係を控えておいてください。

  6. Armadillo のconfigを初期化する

    次のように"boot"コマンドを実行してLinuxシステムを起動してください。

    hermit> boot
    Uncompressing kernel...........................................................
    ................................................................................
    ................................................................................
    done.
    Uncompressing ramdisk...........................................................
    ................................................................................
    ................................................................................
    ................................................................................ 

    起動が完了するとログインプロンプトが表示されます。rootユーザーでログインしてください。 ユーザー名: root パスワード: root

    armadillo-iotg login: root
    Password:
    [root@armadillo-iotg (ttymxc1) ~]#

    ログインできたら、"flatfsd"コマンドを使ってコンフィグ領域を初期化します。 初期化時には、node-eye対応イメージの"/etc/default"ディレクトリ以下のファイルが コンフィグ領域に保存され、且つ"/etc/config"ディレクトリにファイルが複製されます。

    [root@armadillo-iotg (ttymxc1) ~]# flatfsd -w
    flatfsd: Nonexistent or bad flatfs (-1), creating new one...
    flatfsd: saving fs to partition 0, tstamp=263
    flatfsd: Wrote 5941 bytes to flash in 2 seconds
    flatfsd: Created 14 configuration files (3795 bytes)

    Armadilloの電源を入れなおして再起動してください。

  7. Armadillo を起動する

    保守モードで"boot"コマンドを実行し、Linuxシステムを起動すると、 Armadillo は起動後に自動的に SACM へ接続を行います。

    SACM への接続が成功すると、起動から10分以内にnode-eyeコントロールパネル、SACMコントロールパネル でデバイスの接続状態が [切断中]から[接続中]に切り替わります。

    これで Armadillo の準備は終了しました。実際に WebUI を操作してみましょう。

3.2. node-eyeコントロールパネルを使う

3.2.1. node-eyeコントロールパネルにログインする

http://apps.node-eye.com/device-management/ にアクセスし、node-eye登録完了通知書 に記載されている node-eyeコントロールパネルアカウントを使用してログインしてください。

[警告]

node-eye登録完了通知書 に記載しているアカウントは管理者(admin)権限です。 第3者に漏れることの無いよう厳重に保管してください。アカウントの追加/削除権限を持たないオペレーターアカウントは、本文「アカウントの追加/変更/削除を行う」の手順で追加することができます。

3.2.2. 全体の稼働状況を見る

node-eyeコントロールパネルにアクセスするとダッシュボードが表示されます。

ダッシュボード(node-eye コントロールパネル)

図3.1 ダッシュボード(node-eye コントロールパネル)


この画面ではnode-eyeに登録されているデバイスの接続状況の一覧、直近5件のタスクおよびイベントが表示されます。

接続中/切断中の列に表示された台数をクリックすることで、それぞれの状態にあるデバイスの一覧を表示することができます。

3.2.3. 各デバイスの稼働状況を見る

メニューから[デバイス]をクリックするとデバイスの一覧を見ることができます。

デバイス一覧 (node-eye コントロールパネル)

図3.2 デバイス一覧 (node-eye コントロールパネル)


この画面では、「グループ」「接続状態」「設定状態」「デバイス名/SAコード」で目的のデバイスを絞り込み、探すことができます。目的のデバイスをクリックすることで、デバイスの詳細な情報を確認できます。

デバイス詳細 (node-eye コントロールパネル)

図3.3 デバイス詳細 (node-eye コントロールパネル)


また、複数のデバイスにチェックを入れ、一括で「ファームウェアアップデート」「再起動」「コマンド実行」「リソース表示」を行うことも可能です。

デバイス複数選択 (node-eye コントロールパネル)

図3.4 デバイス複数選択 (node-eye コントロールパネル)


[ティップ]

ファームウェアアップデート実行中でも「再起動」を行うことができます。ただし、これを行うとプライマリイメージが起動しなくなることがあります。

3.2.4. リソースモニタリングを行う

メニューから[デバイス]を選択します リソースを確認したいデバイスのチェックボックスを選択します。

デバイス複数選択 (node-eye コントロールパネル)

図3.5 デバイス複数選択 (node-eye コントロールパネル)


画面下の[リソース表示]をクリックすると、CPU使用率,転送量等のデバイスのリソースが表示されます。

リソースモニタリング (node-eye コントロールパネル)

図3.6 リソースモニタリング (node-eye コントロールパネル)


3.2.5. ファームウェアアップデートを行う

本章では、node-eye コントロールパネルを使って Armadillo のファームウェアアップデートを実行する方法を説明します。

アップデートで書き込むファイルは、Armadillo が接続されているネットワーク経由でダウンロードする事が可能なWebサーバーに公開されている必要があります。ここでは、例としてアットマークテクノが公開しているnode-eye対応のイメージファイルを使います。

まず、メニューから[デバイス]を選択します

デバイス一覧 (node-eye コントロールパネル)

図3.7 デバイス一覧 (node-eye コントロールパネル)


デバイスの中から[接続状態]が 接続中 になっているデバイスのチェックボックスを選択し、画面下の[ファームウェアアップデート]をクリックします。

ファームウェアアップデート (node-eye コントロールパネル)

図3.8 ファームウェアアップデート (node-eye コントロールパネル)


フォームに下記のイメージファイルのURLを入力してください。

表3.3 ファームウェアアップデートに利用するイメージファイルの一覧


「アップデート完了時に再起動する」 にチェックを入れて [実行]をクリックしファームウェアアップデートを開始します。[2]

[ティップ]

ファームウェアのアップデートはnode-eyeコントロールパネルから与えたURLを使って、Armadilloがダウンロードを行います。上記以外の新たにビルドしたイメージファイルを使う場合は、ArmadilloからアクセスすることのできるHTTPサーバーにファイルを配置してください。

[ティップ]

ファイルをHTTPサーバーに配置する際には、ファイルのMD5チェックサムを "~.md5" という拡張子を付けて同階層からダウンロードできるようにしてください。MD5チェックサムはファームウェアアップデートの際にファイルの破損を検知するために同時にダウンロードされます。

[ティップ]

「アップデート完了時に再起動する」 にチェックを入れない場合は、Armadillo が再起動するまで古いファームウェアで稼動し続けます。

3.2.6. ログを見る

ログにはタスク、イベントの2つがあり、それぞれ、表示される内容が異なります。

[タスク]ではデバイスに対して再起動やコマンド実行を行った結果を参照することができます。 [イベント]では「デバイスの状態が接続中から切断中に変化した」など、デバイスに関するイベントを参照することができます。

[タスク]の一覧を見るには、メニューから[ログ]->[タスク]をクリックしてください。

タスク (node-eye コントロールパネル)

図3.9 タスク (node-eye コントロールパネル)


[イベント]の一覧を見るには、メニューから[ログ]->[イベント]をクリックしてください。

イベント (node-eye コントロールパネル)

図3.10 イベント (node-eye コントロールパネル)


3.2.7. アカウントの追加/変更/削除を行う

メニューから[アカウント]をクリックします。 この画面から、オペレーター向けのアカウント作成を行います。

[ティップ]

管理者権限のアカウントのみ、この操作が行えます オペレーター権限ではメニューに[アカウント]が表示されません

手順3.2 アカウントの作成

  1. [新規アカウント]をクリック

  2. 項目を入力し[作成]をクリック

  3. 作成したアカウントの詳細画面が表示されます。

  4. メニューの[アカウント]をクリックしてユーザー一覧を表示すると、作成したユーザーが増えていることがわかります。

手順3.3 アカウントの編集

  1. ユーザーをクリック

  2. [編集]をクリック

  3. "名前"を変更し[保存]をクリック

手順3.4 アカウントの削除

  1. ユーザーをクリック

  2. [削除]をクリックし、[OK]をクリック

  3. [OK]をクリックした後に、ユーザー一覧から選択したユーザーが消えていることが確認できます

3.3. SACMを使う

3.3.1. SACMへログインする

https://atmark-techno.sacm.jp/user/ にアクセスし、node-eye登録完了通知書に記載されているSACM コントロールパネルアカウントを使用してログインしてください。

3.3.2. リモートコンフィグを行う

本章では、DHCP で稼働してる Armadillo を固定IPにする方法を例に、リモートコンフィグ機能の使い方を紹介します。 その他の設定方法については 本文 6章Howto「SACMからネットワークインターフェースの設定を行う」 を参照してください。

手順3.5 リモートコンフィグを行う

  1. メニューから[SA]をクリックし、[接続中]になっている Armadillo をクリック

  2. SAのメニューから[コンフィグ]をクリックして、ページ下部の[コンフィグ変更]をクリック

  3. モジュール0のコンフィグを以下のように書き換えます。

    VERSION=1
    interface_eth0=enable
    interface_eth0_metric=1
    interface_eth0_type=static
    interface_eth0_address="192.0.2.10"
    interface_eth0_netmask="255.255.255.0"
    interface_eth0_network="192.0.2.0"
    interface_eth0_broadcast="192.0.2.255"
    interface_eth0_gateway="192.0.2.1"
    [ティップ]

    モジュール0の設定項目は Armadillo の /etc/network/interfaces に反映されます。実際のネットワークの構成にあわせて値を決めてください。

  4. [コンフィグ変更]をクリックし、[コンフィグ反映]をクリックします。

    コンフィグ反映 (SACM コントロールパネル)

    図3.11 コンフィグ反映 (SACM コントロールパネル)


  5. 反映スケジュールを[即時反映]にチェックを入れて、[コンフィグ反映]をクリックします。

    即時反映 (SACM コントロールパネル)

    図3.12 即時反映 (SACM コントロールパネル)


    [注記]

    執筆時点で以下の不具合が判明しているため、モジュール 0 のコンフィグと、他のモジュールのコンフィグを同時に反映しないでください。

    モジュールコンフィグのロールバックが発生した時、Armadillo上で動作しているコンフィグと、SACMコントロールパネルに表示されるコンフィグが一致しなくなる場合があります。

  6. 反映が完了した後に、Armadillo に接続したシリアルコンソールでifconfigを実行すると、ネットワークインターフェースにモジュール0のコンフィグが反映されている事を確認することができます。

    [Armadillo ~]# ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:11:0C:18:10:83
              inet addr:192.0.2.10  Bcast:192.0.2.255  Mask:255.255.255.0
              inet6 addr: fe80::211:cff:fe18:1083/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:17608 errors:0 dropped:1 overruns:0 frame:0
              TX packets:1488 errors:3 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:2584712 (2.4 MiB)  TX bytes:194540 (189.9 KiB)
    
    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:65536  Metric:1
              RX packets:60 errors:0 dropped:0 overruns:0 frame:0
              TX packets:60 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:5280 (5.1 KiB)  TX bytes:5280 (5.1 KiB)
    [ティップ]

    リモートコンフィグ機能によるネットワーク設定の内容に問題があり、SACM と接続できなくなった場合、 Armadillo で動作している armsd が 約5分後にコンフィグ反映直前の設定に戻します。

3.3.3. フォルダ機能を使う

Armadillo の数が多い場合や拠点ごとに管理を行いたい場合に便利なフォルダ機能を紹介します。 フォルダ分けすることにより、フォルダ単位でコマンドが実行できるようになったり、コンフィグの一斉反映がより簡単に行なえるようになります。

手順3.6 SAをフォルダに追加する

  1. メニューから[フォルダ]をクリックし、[フォルダ追加]をクリック

    フォルダ (SACM コントロールパネル)

    図3.13 フォルダタブ (SACM コントロールパネル)


  2. 任意のフォルダ名を入力し[フォルダ追加]をクリック

    フォルダ名入力 (SACM コントロールパネル)

    図3.14 フォルダ名入力 (SACM コントロールパネル)


  3. フォルダ一覧から、先ほど入力したフォルダ名をクリック

    フォルダ一覧 (SACM コントロールパネル)

    図3.15 フォルダ一覧 (SACM コントロールパネル)


  4. フォルダにArmadilloを登録するため、[所属SA変更]をクリック

    所属SA変更 (SACM コントロールパネル)

    図3.16 所属SA変更 (SACM コントロールパネル)


  5. 任意のSAにチェックを入れ、[所属SA変更]をクリック

    フォルダに追加するSAを選択 (SACM コントロールパネル)

    図3.17 フォルダに追加するSAを選択 (SACM コントロールパネル)


  6. チェックを入れたSAが表示されます。

    フォルダのviewのスクリーンショット

    図3.18 SAが追加されたフォルダ (SACM コントロールパネル)


3.3.4. 接続状態が変化した時の通知先を設定する

SACMコントロールパネルでは、Armadilloと SACM の接続状態が変化した時に、電子メールを送信する機能を設定する事ができます。

接続状態が変化するのは以下のようなことが考えられます。

  • [接続中] → [切断中]: Armadilloがリカバリイメージで起動した

  • [接続中] → [切断中]: Armadilloと SACM 間のネットワークに障害が発生し通信できなくなった

  • [切断中] → [接続中]: Armadilloが SACM 間のネットワークに障害が解消され通信できるようになった

[ティップ]

[接続中] → [切断中] の接続状態の変化には実際に通信が途絶してから、最大で15分程度かかります

[ティップ]

[切断中] → [接続中] の接続状態の変化には実際に通信が確立してから、最大で10分程度かかります

通知先の設定には SACMコントロールパネル の 監視グループ を使います。 監視グループ には複数の Armadillo と、通知先のメールアドレスを登録することができます。

手順3.7 SAの接続状態が変化した時の通知先を設定する

  1. まず、監視グループの作成を行います。 メニューから[監視]をクリックし、[監視グループ追加]をクリック

    監視タブ (SACM コントロールパネル)

    図3.19 監視タブ (SACM コントロールパネル)


  2. 任意の監視グループ名を入力し、[監視グループ追加]をクリック

    監視グループ名入力 (SACM コントロールパネル)

    図3.20 監視グループ名入力 (SACM コントロールパネル)


  3. これで監視グループの作成は完了です。次に監視グループに電子メールの送信先を設定します。 監視グループ一覧から、先ほど入力した監視グループ名をクリック

    監視グループが追加された監視タブ (SACM コントロールパネル)

    図3.21 監視グループが追加された監視タブ (SACM コントロールパネル)


  4. [通知先メールアドレス変更]をクリック

    監視グループの詳細 (SACM コントロールパネル)

    図3.22 監視グループの詳細 (SACM コントロールパネル)


  5. 任意の通知先メールアドレスを入力し、[通知先メールアドレス変更]をクリック

    通知先メールアドレス入力 (SACM コントロールパネル)

    図3.23 通知先メールアドレス入力 (SACM コントロールパネル)


  6. これでArmadilloの動作状況が変化した時の通知先を設定することができました。

    通知先メールアドレスが追加された監視グループ詳細 (SACM コントロールパネル)

    図3.24 通知先メールアドレスが追加された監視グループ詳細 (SACM コントロールパネル)


  7. 最後に、監視グループにArmadilloを登録します [監視対象変更]をクリック

    監視グループ詳細 (SACM コントロールパネル)

    図3.25 監視グループ詳細 (SACM コントロールパネル)


  8. 監視グループに追加したいArmadilloにチェックを入れ[監視対象変更]をクリック

    監視グループに追加するSAを選択 (SACM コントロールパネル)

    図3.26 監視グループに追加するSAを選択 (SACM コントロールパネル)


  9. これで監視グループに登録したArmadilloの動作状況が変わった時に、電子メールが送信されるようになりました。

    SAが追加された監視グループ (SACM コントロールパネル)

    図3.27 SAが追加された監視グループ (SACM コントロールパネル)


電子メールが送信されることを確認するには、登録したArmadilloのEthernetケーブルを外すか、 その時点で[切断中]となっているArmadilloを起動し、SACMと接続する必要があります。

SACM は一時的なネットワーク障害と区別するため、[接続中]から[切断中]に状態の表示を 変更するまでに15分の猶予期間を設けています。 そのため、Ethernetケーブルを外す等の方法で SACMとの接続を遮断した場合は15分後に、 電子メールの送信 と node-eyeコントロールパネル、SACMコントロールパネル の表示が変化します。

3.3.5. その他

この他の使い方や、詳しい情報は http://manual.sacm.jp/ を参照してください



[2] 「実行時間を指定する」で過去の時間を指定した場合には、「すぐに実行する」と同じ動作になります。