3. プロビジョニング#

Terminal System OS 2 イメージをエッジコンピュータに書き込み、利用できる状態にする(プロビジョニング)方法について説明します。

主な用語

プロビジョニング

エッジコンピュータのrootfsパーティションおよびdataパーティションにイメージを書き込みます。 また、エッジコンピュータの初回起動時にMenderサーバーとの 1. Menderサーバーへの接続を許可する で利用されるキーペアを自動生成します。

rootfsパーティション

Linuxカーネルを含むシステムパーティションです。 rootfsパーティションはA/Bの2つの領域で構成され、OSアップデートアーティファクトにより更新されます。

dataパーティション

Menderの更新間で保持するデータを格納するパーティションです。 通常はアップデートで更新されません。

作業PC

エッジコンピューターにTerminal System OS 2のイメージを書き込むために使用するPCです。エッジコンピューターとの間はUSBで接続します。

../../../_images/provisioning-usb.png

図 186 作業PCからTerminal System OS 2イメージを書き込む#

注意

過去にデバイス認証を許可したエッジコンピュータに対してプロビジョニングを再実施する場合

古い公開鍵での認証を削除し、プロビジョニングで新しく作成した公開鍵でエッジコンピュータを再認証する必要があります。詳細は 1. Menderサーバーへの接続を許可する を参照してください。

推奨作業環境#

プロビジョニング作業に必要な作業PC環境はエッジコンピュータに応じて異なります。以下の推奨環境で実施してください。

書き込み先エッジコンピュータ

作業PCの推奨環境

備考

EDGEPLANT T1

Ubuntu 16.04 or 18.04

作業PCには以下のパッケージのインストールが必要です。

  • qemu-user-static

  • python

  • jq

インストール方法の例:

$ sudo apt update
$ sudo apt install qemu-user-static python jq

イメージの入手#

ソフトウェアの提供元からTerminal System OS 2 イメージを入手し、作業PCに保存します。

プロビジョニングする#

プロビジョニング手順はエッジコンピュータごとに異なります。

EDGEPLANT T1#

作業PCからEDGEPLANT T1にTerminal System OS 2イメージを書き込むには、以下のようにします。

  1. EDGEPLANT T1をリカバリーモードで起動し、作業PCと接続します。

    1. Nano SIMスロットのカバーを取り外します。

    2. リカバリーボタンを押しながら、電源を投入します。

    3. 作業PCとEDGEPLANT T1のリカバリーUSB端子をUSBケーブルで接続します。

    4. 作業PC側でEDGEPLANT T1をUSBデバイスとして認識していることを確認します。

      $ lsusb -d 0955:
      Bus 001 Device 004: ID 0955:7418 NVIDIA Corp. APX
      

    注釈

    リカバリーボタンなど各部の位置については、 取扱説明書 を参照してください。

  2. (以下の手順はすべて、作業PCでの操作です)Terminal System OS 2 イメージ(<terminal_system_2_image>.tegraflash.zip)を、ディレクトリを指定して展開します。

    $ mkdir -p ~/Downloads/image
    $ unzip <terminal_system_2_image>.tegraflash.zip -d ~/Downloads/image
    
  3. 展開先のディレクトリに移動します。

    $ cd ~/Downloads/image
    
  4. 以下のようにコマンドを実行して、Terminal System OS 2のイメージを書き込みます。

    このとき、環境変数を使って必要な情報を与えます。指定可能な環境変数については、下の表を参照してください。

    $ sudo SERIAL_NUMBER=<serial_number> ./doflash.sh
    

    環境変数

    説明

    必須/任意

    入力規則(正規表現)

    SERIAL_NUMBER

    Menderのデバイス識別情報として利用するシリアル番号 1

    必須

    ^[0-9a-zA-Z_.-]*$

    OPT_MENDER_SERVER_URL

    MenderサーバーURL

    任意 2

    ^https?://.*$

    OPT_MENDER_TENANT_TOKEN

    Menderテナントトークン (Organization token)

    任意 2

    ^.+$

    OPT_API_USER_PASS_ADMIN

    API Basic認証パスワード(adminユーザー) 3

    任意 4

    ^\$apr1\$

    OPT_API_USER_PASS_USER

    API Basic認証パスワード(userユーザー) 3

    任意 5

    ^\$apr1\$

    OPT_USER_PASS_ROOT

    ログインユーザーパスワード(rootユーザー) 6

    任意 7

    ^\$6\$

    OPT_USER_PASS_ADMIN

    ログインユーザーパスワード(adminユーザー) 6

    任意 7

    ^\$6\$

    OPT_USER_PASS_MAINT

    ログインユーザーパスワード(maintユーザー) 6

    任意 7

    ^\$6\$

    1

    シリアル番号には、底面パネルに記載されているシリアル番号を指定してください。その他の文字列を指定する場合はエンドユーザーにシリアル番号を通知する必要があります。

    2(1,2)

    設定を省略した場合は、Terminal System OS 2イメージ内に設定されたデフォルトが使用されます。

    3(1,2)

    API Basic認証パスワードはMD5(apr1)で暗号化された文字列を使用してください。(例: $(echo p@ssword | openssl passwd -apr1 -stdin)

    4

    設定を省略した場合は、Terminal System OS 2イメージ内に設定されたデフォルトが使用されます。

    5

    設定を省略した場合は、Terminal System OS 2イメージ内に設定されたデフォルトが使用されます。

    6(1,2,3)

    ログインユーザーパスワードはSHA-512で暗号化された文字列を使用してください。(例: $(echo p@ssword | openssl passwd -6 -stdin)

    7(1,2,3)

    設定を省略した場合は、Terminal System OS 2イメージ内に設定されたデフォルトが使用されます。

    注釈

    作業PCとして仮想マシンを使用する場合の注意点

    仮想マシンでイメージの書込みを行う場合、書込み処理の途中でUSBの再接続に失敗して、以下のような表示で停止することがあります。

    ...
    [  10.2706 ] tegrarcm_v2 --boot recovery
    [  10.2718 ] Applet version 01.00.0000
    [  10.3302 ]
    [  11.3332 ] tegrarcm_v2 --isapplet
    

    このようなケースでは、USBケーブルを再接続することで書込み処理が再開されます。

  5. 書き込みが完了すると、EDGEPLANT T1が自動的に再起動し、Terminal Systemが起動します。