Configurationの編集#

Terminal System 2 v1.0.0

Mender Web UIによるConfigurationの編集#

Configurationの項目の編集方法を、設定値がオブジェクト1つの場合と、配列の場合に分けて説明します。

重要

Configurationタブを使用するには、MenderにConfigureアドオンが必要です。 Configureアドオンを導入していない場合、Mender経由ではなく、ローカルネットワーク内からREST APIを使って設定してください。

../../_images/setup_mender_configuration.png

図 156 Configurationタブ#

設定値がオブジェクト1つの場合#

設定値がオブジェクト1つの場合( {"key1": "a", "key2": "b"} )、設定値として書き込んだkey-valueだけが更新されます(REST APIのPATCHにあたります)。

例えば、 agent.connection では、以下の例のように、変更したい値(この場合、 edge_uuidclient_secret )だけを入力して更新することができます。

設定例:

  • 入力する値:

    {
      "edge_uuid": "fa12ae1b-......",
      "client_secret": "cK6Yd....."
    }
    

    この場合、agent.connectionが持つ他の値( server_urlproject_uuid )は変更されません。

設定値がオブジェクトの配列の場合#

設定値がオブジェクトの配列の場合( [{"id": "a", ...}, {"id": "b", ...}] )、以下のようになります。

オブジェクトの作成#

新しいIDを持つオブジェクトを追加することで、設定を追加することができます(REST APIのPOSTにあたります)。 値を省略した場合、デフォルト値が使用されます。

設定例:

  • 編集前の値:

    []
    
  • 入力する値:

    [
      {
        "id": "test1",
        "dest_ids": ["test1"]
      }
    ]
    

    (ここでは、 test1 というIDを持つオブジェクトを作成し、必須のkey-value(ここでは dest_ids )を入力しています。)

  • [SAVE AND APPLY TO DEVICE]実行結果:

    test1 が作成され、 enabledqos などのデフォルト値が適用されました。

    [
      {
        "id": "test1",
        "enabled": true,
        "dest_ids": ["test1"],
        "qos": "unreliable",
        "filters": []
      }
    ]
    

変更#

IDと、変更したいkey-valueからなるオブジェクトを入力することで、そのオブジェクトの持つ値を更新できます(REST APIのPATCHにあたります)。このとき、変更しないオブジェクトは削除せずそのままにしておいてください。

設定例:

  • 編集前の値:

    [
      {
        "id": "test1",
        "enabled": true,
        "dest_ids": ["test1"],
        "qos": "unreliable",
        "filters": []
      },
      {
        "id": "test2",
        "enabled": true,
        "dest_ids": ["test2"],
        "qos": "unreliable",
        "filters": []
      }
    ]
    
  • 入力する値:

    [
      {
        "id": "test1",
        "enabled": true,
        "dest_ids": ["test1"],
        "qos": "unreliable",
        "filters": []
      },
      {
        "id": "test2",
        "enabled": false    // <-- changed
      }
    ]
    

    (ここでは、 test2enabledfalse にします。)

  • [SAVE AND APPLY TO DEVICE]実行結果:

    test2enabled のみが false に変更されました。

    [
      {
        "id": "test1",
        "enabled": true,
        "dest_ids": ["test1"],
        "qos": "unreliable",
        "filters": []
      },
      {
        "id": "test2",
        "enabled": false,      // <-- changed
        "dest_ids": ["test2"], // <-- not changed
        "qos": "unreliable",   // <-- not changed
        "filters": []          // <-- not changed
      }
    ]
    

削除#

編集欄からオブジェクトを削除することで、設定値を削除できます(REST APIのDELETEにあたります)。

設定例:

  • 編集前の値:

    [
      {
        "id": "test1",
        "enabled": true,
        "dest_ids": ["test1"],
        "qos": "unreliable",
        "filters": []
      },
      {
        "id": "test2",
        "enabled": false,
        "dest_ids": ["test2"],
        "qos": "unreliable",
        "filters": []
      }
    ]
    
  • 入力する値:

    [
      {
        "id": "test1",
        "enabled": true,
        "dest_ids": ["test1"],
        "qos": "unreliable",
        "filters": []
      }
      // <-- "test2" deleted
    ]
    

    (ここでは、 test2 を削除しています。)

  • [SAVE AND APPLY TO DEVICE]実行結果:

    test2 が削除されました。

    [
      {
        "id": "test1",
        "enabled": true,
        "dest_ids": ["test1"],
        "qos": "unreliable",
        "filters": []
      }
    ]
    

Configurationのコピー#

以下のように操作することで、Configurationタブの設定をコピーして他のTerminal Systemに適用することができます。

  1. コピー元のデバイスのDevice information画面を開きます。

  2. Troubleshootingタブで、[Launch File Transfer]をクリックします。

  3. [Download]をクリックし、ダウンロード対象として以下のパスを入力します。

    /var/lib/mender-configure/device-config.json
    
  4. ダウンロードした設定ファイルを編集します。

    注釈

    設定ファイルををそのまま別のTerminal Systemにインポートしないでください。個体ごとに異なる設定は必ず変更してください。

    例:

    • agent.connection

    • terminal_system.identification

    • device_connectors の DC_DEVICE_PATH (異なるデバイスを利用する場合)

  5. 別のTerminal Systemの[Configuration]タブを開きます。

  6. [IMPORT CONFIGURATION]をクリックし、編集した device-config.json をインポートします。