

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# MQTT 5 ブローカー (EMQX)
<a name="mqtt-broker-emqx-component"></a>

EMQX MQTT ブローカーコンポーネント (`aws.greengrass.clientdevices.mqtt.EMQX`) は、クライアントデバイスと Greengrass コアデバイス間の MQTT メッセージを処理します。このコンポーネントは、[EMQX MQTT 5.0 ブローカー](https://www.emqx.com/en/mqtt/mqtt5)の修正バージョンを提供します。この MQTT ブローカーをデプロイして、クライアントデバイスとコアデバイスの間の通信に MQTT 5 機能を使用します。MQTT ブローカーの選択方法の詳細については、「[MQTT ブローカーを選択する](choose-local-mqtt-broker.md)」を参照してください。

このブローカーは、MQTT 5.0 プロトコルを実装します。セッションとメッセージの有効期限、ユーザープロパティ、共有サブスクリプション、トピックエイリアスなどのサポートが含まれます。MQTT 5 は MQTT 3.1.1 と下位互換性があるので、[モケット MQTT 3.1.1 ブローカー](mqtt-broker-moquette-component.md)を実行する場合、EMQX MQTT 5 ブローカーに置き換えることができ、クライアントデバイスは通常どおり接続して動作し続けることができます。

<a name="note-local-mqtt-broker-mqtt-5-features"></a>

**注記**  <a name="client-device-component-context"></a>
クライアントデバイスは、Greengrass コアデバイスに接続し、処理するために MQTT メッセージとデータを送信するローカル IoT デバイスです。詳細については、「[ローカル IoT デバイスとやり取りする](interact-with-local-iot-devices.md)」を参照してください。

**Topics**
+ [バージョン](#mqtt-broker-emqx-component-versions)
+ [タイプ](#mqtt-broker-emqx-component-type)
+ [オペレーティングシステム](#mqtt-broker-emqx-component-os-support)
+ [要件](#mqtt-broker-emqx-component-requirements)
+ [依存関係](#mqtt-broker-emqx-component-dependencies)
+ [設定](#mqtt-broker-emqx-component-configuration)
+ [ローカルログファイル](#mqtt-broker-emqx-component-log-file)
+ [ライセンス](#mqtt-broker-emqx-component-licenses)
+ [変更ログ](#mqtt-broker-emqx-component-changelog)

## バージョン
<a name="mqtt-broker-emqx-component-versions"></a>

このコンポーネントには、次のバージョンがあります。
+ 2.0.x
+ 1.2.x
+ 1.1.x
+ 1.0.x

## タイプ
<a name="mqtt-broker-emqx-component-type"></a>

<a name="public-component-type-generic"></a>この<a name="public-component-type-generic-phrase"></a>コンポーネントはジェネリックコンポーネント (`aws.greengrass.generic`) です。[Greengrass nucleus](greengrass-nucleus-component.md) は、コンポーネントのライフサイクルスクリプトを実行します。

<a name="public-component-type-more-information"></a>詳細については、「[コンポーネントタイプ](develop-greengrass-components.md#component-types)」を参照してください。

## オペレーティングシステム
<a name="mqtt-broker-emqx-component-os-support"></a>

このコンポーネントは、次のオペレーティングシステムを実行するコアデバイスにインストールできます。
+ Linux
+ Server 

## 要件
<a name="mqtt-broker-emqx-component-requirements"></a>

このコンポーネントには次の要件があります。
+ コアデバイスは、MQTT ブローカーが動作するポートで接続を受け入れられる必要があります。このコンポーネントは、デフォルトでポート 8883 で MQTT ブローカーを実行します。このコンポーネントを設定するとき、別のポートを指定できます。

  <a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>別のポートを指定し、[MQTT ブリッジコンポーネント](mqtt-bridge-component.md)を使用して MQTT メッセージを他のブローカーにリレーする場合、MQTT ブリッジ v2.1.0 以降を使用する必要があります。MQTT ブローカーが動作するポートを使用するように設定します。

  <a name="mqtt-broker-configuration-ip-detector-requirement"></a>別のポートを指定し、[IP ディテクターコンポーネント](ip-detector-component.md)を使用して MQTT ブローカーエンドポイントを管理する場合、IP ディテクタ v2.1.0 以降を使用する必要があります。MQTT ブローカーが動作するポートを報告するように設定します。
+ Linux コアデバイスでは、次のように Docker がコアデバイスにインストールおよび設定されています。
  + <a name="docker-engine-requirement"></a>[Docker Engine](https://docs.docker.com/engine/) 1.9.1 以降が Greengrass コアにインストールされていいること。バージョン 20.10 は、 AWS IoT Greengrass Core ソフトウェアで動作することが検証された最新バージョンです。Docker コンテナを実行するコンポーネントをデプロイする前に、コアデバイスに直接、Docker をインストールしておく必要があります。
  + <a name="docker-daemon-requirement"></a>このコンポーネントをデプロイする前に、Docker デーモンがコアデバイス上で起動し、実行されています。
  + このコンポーネントを実行するシステムユーザーには、ルート権限または管理者権限が必要です。または、このコンポーネントを `docker` グループ内のシステムユーザーとして実行し、このコンポーネントの `requiresPrivileges` オプションを `false` に設定して特権なしで EQMX MQTT ブローカーを実行できます。
+ EMQX MQTT ブローカーコンポーネントは、VPC での実行がサポートされています。
+ EMQX MQTT ブローカーコンポーネントは `armv7` プラットフォームではサポートされていません。

## 依存関係
<a name="mqtt-broker-emqx-component-dependencies"></a>

コンポーネントをデプロイすると、 は互換性のあるバージョンの依存関係 AWS IoT Greengrass もデプロイします。つまり、コンポーネントを正常にデプロイするには、コンポーネントとその依存関係のすべての要件を満たす必要があります。このセクションでは、このコンポーネントの[リリースされたバージョン](#mqtt-broker-emqx-component-changelog)の依存関係と、各依存関係に対するコンポーネントのバージョンを定義するセマンティックバージョン制約をリスト表示しています。コンポーネントの各バージョンの依存関係は、[AWS IoT Greengrass コンソール](https://console.aws.amazon.com//greengrass)でも確認できます。コンポーネントの詳細ページで **[Dependencies]** (依存関係) リストを確認します。

------
#### [ 2.0.2 – 2.0.3 ]

次の表に、このコンポーネントのバージョン 2.0.2 および 2.0.3 の依存関係を示します。


| 依存関係 | 互換性のあるバージョン | 依存関係タイプ | 
| --- | --- | --- | 
| [クライアントデバイス認証](client-device-auth-component.md) | >=2.2.0 <2.6.0 | ソフト | 

------
#### [ 2.0.1 ]

次の表に、このコンポーネントのバージョン 2.0.1 の依存関係を示します。


| 依存関係 | 互換性のあるバージョン | 依存関係タイプ | 
| --- | --- | --- | 
| [クライアントデバイス認証](client-device-auth-component.md) | >=2.2.0 <2.6.0 | ハード | 

------
#### [ 2.0.0 ]

次の表に、このコンポーネントのバージョン 2.0.0 の依存関係を示します。


| 依存関係 | 互換性のあるバージョン | 依存関係タイプ | 
| --- | --- | --- | 
| [クライアントデバイス認証](client-device-auth-component.md) | >=2.2.0 <2.5.0 | ハード | 

------
#### [ 1.2.2 – 1.2.3 ]

次の表に、このコンポーネントのバージョン 1.2.2 から 1.2.3 までの依存関係を示します。


| 依存関係 | 互換性のあるバージョン | 依存関係タイプ | 
| --- | --- | --- | 
| [クライアントデバイス認証](client-device-auth-component.md) | >=2.2.0 <2.5.0 | ハード | 

------
#### [ 1.2.0 and 1.2.1 ]

次の表に、このコンポーネントのバージョン 1.2.0 および 1.2.1 の依存関係を示します。


| 依存関係 | 互換性のあるバージョン | 依存関係タイプ | 
| --- | --- | --- | 
| [クライアントデバイス認証](client-device-auth-component.md) | >=2.2.0 <2.4.0 | ハード | 

------
#### [ 1.0.0 and 1.1.0 ]

次の表に、このコンポーネントのバージョン 1.0.0 および 1.1.0 の依存関係を示します。


| 依存関係 | 互換性のあるバージョン | 依存関係タイプ | 
| --- | --- | --- | 
| [クライアントデバイス認証](client-device-auth-component.md) | >=2.2.0 <2.3.0 | ハード | 

------

コンポーネントの依存関係の詳細については、「[コンポーネント recipe のリファレンス](component-recipe-reference.md#recipe-reference-component-dependencies)」を参照してください。

## 設定
<a name="mqtt-broker-emqx-component-configuration"></a>

------
#### [ 2.0.0 - 2.0.3 ]

このコンポーネントには、コンポーネントのデプロイ時にカスタマイズできる次の設定パラメータが用意されています。

**重要**  
MQTT 5 ブローカー (EMQX) コンポーネントのバージョン 2 を使用している場合は、設定ファイルを更新する必要があります。バージョン 1 の設定ファイルはバージョン 2 では機能しません。

emqxConfig  
 (オプション) 使用する [EMQX MQTT ブローカー](https://www.emqx.io/docs/en/v5.1/configuration/configuration.html)設定。このコンポーネントで EMQX 設定オプションを設定できます。  
EMQX ブローカーを使用する場合、Greengrass ではデフォルト設定が使用されます。このフィールドを使用して変更しない限り、この設定が使用されます。  
以下の設定を変更すると、EMQX Broker コンポーネントが再起動します。他の設定変更は、コンポーネントを再起動せずに適用されます。  
+ `emqxConfig/cluster`
+ `emqxConfig/node`
+ `emqxConfig/rpc`
`aws.greengrass.clientdevices.mqtt.EMQX` は、セキュリティに配慮したオプションを設定することを許可します。これらには、TLS 設定、認証、認可プロバイダーが含まれます。相互 TLS 認証と Greengrass クライアントデバイス認証プロバイダーを使用するデフォルト設定を推奨します。

**Example 例: デフォルト設定**  
次の例は、MQTT 5 (EMQX) ブローカーのデフォルト設定を示しています。これらの設定は、`emqxConfig` 設定を使用してオーバーライドできます。  

```
{
  "authorization": {
    "no_match": "deny",
    "sources": []
  },
  "node": {
    "cookie": "{{<placeholder>}}"
  }, 
  "listeners": {
     "ssl": {
       "default": {
         "ssl_options": {
           "keyfile": "{work:path}\\data\\key.pem",
           "certfile": "{work:path}\\data\\cert.pem",
           "cacertfile": null,
           "verify": "verify_peer",
           "versions": ["tlsv1.3", "tlsv1.2"],
           "fail_if_no_peer_cert": true
         }
       }
     },
     "tcp": {
       "default": {
         "enabled": false
       }
     },
     "ws": {
       "default": {
         "enabled": false
       }
     },
     "wss": {
       "default": {
         "enabled": false
       }
     }
  },
  "plugins": {
    "states": [{"name_vsn": "gg-1.0.0", "enable": true}],
    "install_dir": "plugins"
  }
}
```

authMode  
(オプション) ブローカーの認可プロバイダーを設定します。次のいずれかの値を指定できます。  
+ `enabled`– (デフォルト) Greengrass 認証および認可プロバイダーを使用します。
+ `bypass_on_failure`– Greengrass 認証プロバイダーを使用し、Greengrass が認証または認可を拒否する場合は、EMQX プロバイダーチェーン内の残りの認証プロバイダーを使用します。
+ `bypass` – Greengrass プロバイダーが無効になっています。認証と認可は EMQX プロバイダーチェーンによって処理されます。

`requiresPrivilege`  
(オプション) Linux コアデバイスでは、ルート権限または管理者権限なしで EMQX MQTT ブローカーを実行するように指定できます。このオプションを `false` に設定した場合、このコンポーネントを実行するシステムユーザーは、`docker` グループのメンバーである必要があります。  
デフォルト: `true`

`startupTimeoutSeconds`  
(オプション) EMQX MQTT ブローカーが起動する最大時間 (秒)。このタイムアウトを超えている場合、コンポーネントの状態が `BROKEN` に変わります。  
デフォルト: `90`

`ipcTimeoutSeconds`  
(オプション) Greengrass nucleus がプロセス間通信 (IPC) リクエストに応答するまでコンポーネントが待機する最大時間 (秒)。このコンポーネントがクライアントデバイスが認証されているかどうかを確認するときにタイムアウトエラーを報告する場合は、この数値を増やします。  
デフォルト: `5`

`crtLogLevel`  
(オプション) AWS 共通ランタイム (CRT) ライブラリのログレベル。  
デフォルトは EMQX MQTT ブローカーのログレベル (`emqx` の `log.level`)。

`restartIdentifier`  
(オプション) EMQX MQTT ブローカーを再起動するには、このオプションを設定します。この設定値が変更されると、このコンポーネントは MQTT ブローカーを再起動します。このオプションを使用して、クライアントデバイスを強制的に切断できます。

`dockerOptions`  
(オプション) Docker コマンドラインにパラメータを追加するには、Linux オペレーティングシステムでのみこのオプションを設定します。例えば、追加のポートをマッピングするには、`-p` Docker パラメータを使用します。  

```
"-p 1883:1883"
```

**Example 例: v1.x 設定ファイルを v2.x に更新する**  
次の例は、v1.x 設定ファイルをバージョン 2.x に更新するために必要な変更を示しています。  
バージョン 1.x の設定ファイル:  

```
{
    "emqx": {
        "listener.ssl.external": "443",
        "listener.ssl.external.max_connections": "1024000",
        "listener.ssl.external.max_conn_rate": "500",
        "listener.ssl.external.rate_limit": "50KB,5s",
        "listener.ssl.external.handshake_timeout": "15s",
        "log.level": "warning"
    },
    "mergeConfigurationFiles": {
        "etc/plugins/aws_greengrass_emqx_auth.conf": "auth_mode=enabled\n use_greengrass_managed_certificates=true\n"
    }
}
```
v2 と同等の設定ファイル:  

```
{
    "emqxConfig": {
        "listeners": {
            "ssl": {
                "default": {
                   "bind": "8883",
                   "max_connections": "1024000",
                   "max_conn_rate": "500",
                   "ssl_options": {
                        "handshake_timeout": "15s"
                   }
                }
            }
        },
        "log": {
            "console": {
              "enable": true,
              "level": "warning"
            }
        }
    },
    "authMode": "enabled"
}
```
`listener.ssl.external.rate_limit` 設定エントリに相当するものはありません。`use_greengrass_managed_certificates` 設定オプションは削除されました。

**Example 例: ブローカーに新しいポートを設定する**  
次の例では、MQTT ブローカーが動作するポートをデフォルトの 8883 からポート 1234 に変更します。Linux を使用している場合は、`dockerOptions` フィールドを含めてください。  

```
{
  "emqxConfig": {
    "listeners": {
      "ssl": {
        "default": {
          "bind": 1234
        }
      }
    }
  },
  "dockerOptions": "-p 1234:1234"
}
```

**Example 例: MQTT ブローカーのログレベルの調整**  
次の例では、MQTT ブローカーのログレベルを `debug` に変更しています。次のログレベルから選択できます。  
+ `debug`
+ `info`
+ `notice`
+ `warning`
+ `error`
+ `critical`
+ `alert`
+ `emergency`
デフォルトのログレベルは `warning` です。  

```
{
  "emqxConfig": {
    "log": {
      "console": {
         "level": "debug"
      }
    }
  }
}
```

**Example 例: EMQX ダッシュボードを有効にする**  
次の例では EMQX ダッシュボードを有効にして、ブローカーの監視と管理を行えるようにします。Linux を使用している場合は、`dockerOptions` フィールドを含めてください。  

```
{
  "emqxConfig": {
    "dashboard": {
      "listeners": {
        "http": {
          "bind": 18083
        }
      }
    }
  },
  "dockerOptions": "-p 18083:18083"
}
```

------
#### [ 1.0.0 - 1.2.2 ]

このコンポーネントには、コンポーネントのデプロイ時にカスタマイズできる次の設定パラメータが用意されています。

`emqx`  
(オプション) 使用する [EMQX MQTT ブローカー](https://www.emqx.io/docs/en/v4.4/configuration/configuration.html)設定。このコンポーネントで EMQX 設定オプションのサブセットを設定できます。  
このオブジェクトには、次の情報が含まれます。    
`listener.ssl.external`  
(オプション) MQTT ブローカーが動作するポート。  
<a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>別のポートを指定し、[MQTT ブリッジコンポーネント](mqtt-bridge-component.md)を使用して MQTT メッセージを他のブローカーにリレーする場合、MQTT ブリッジ v2.1.0 以降を使用する必要があります。MQTT ブローカーが動作するポートを使用するように設定します。  
<a name="mqtt-broker-configuration-ip-detector-requirement"></a>別のポートを指定し、[IP ディテクターコンポーネント](ip-detector-component.md)を使用して MQTT ブローカーエンドポイントを管理する場合、IP ディテクタ v2.1.0 以降を使用する必要があります。MQTT ブローカーが動作するポートを報告するように設定します。
デフォルト: `8883`  
`listener.ssl.external.max_connections`  
(オプション) MQTT ブローカーがサポートする同時接続の最大数。  
デフォルト: `1024000`  
`listener.ssl.external.max_conn_rate`  
(オプション) MQTT ブローカーが受信できる 1 秒あたりの新規接続の最大数。  
デフォルト: `500`  
`listener.ssl.external.rate_limit`  
(オプション) MQTT ブローカーへのすべての接続の帯域幅制限。帯域幅とその帯域幅の期間をカンマ (`,`) で区切って `bandwidth,duration` の形式で指定します。例えば、`50KB,5s` と指定して、MQTT ブローカーを 5 秒ごとに 50 キロバイト (KB) のデータに制限できます。  
`listener.ssl.external.handshake_timeout`  
(オプション) MQTT ブローカーが新しい接続の認証が終了するまで待機する時間。  
デフォルト: `15s`  
`mqtt.max_packet_size`  
(オプション) MQTT メッセージの最大サイズ。  
デフォルト: `268435455` (256 MB マイナス 1)  
`log.level`  
(オプション) MQTT ブローカーのログレベル。次のオプションから選択します。  
+ `debug`
+ `info`
+ `notice`
+ `warning`
+ `error`
+ `critical`
+ `alert`
+ `emergency`
デフォルトのログレベルは `warning` です。

`requiresPrivilege`  
(オプション) Linux コアデバイスでは、ルート権限または管理者権限なしで EMQX MQTT ブローカーを実行するように指定できます。このオプションを `false` に設定した場合、このコンポーネントを実行するシステムユーザーは、`docker` グループのメンバーである必要があります。  
デフォルト: `true`

`startupTimeoutSeconds`  
(オプション) EMQX MQTT ブローカーが起動する最大時間 (秒)。このタイムアウトを超えている場合、コンポーネントの状態が `BROKEN` に変わります。  
デフォルト: `90`

`ipcTimeoutSeconds`  
(オプション) Greengrass nucleus がプロセス間通信 (IPC) リクエストに応答するまでコンポーネントが待機する最大時間 (秒)。このコンポーネントがクライアントデバイスが認証されているかどうかを確認するときにタイムアウトエラーを報告する場合は、この数値を増やします。  
デフォルト: `5`

`crtLogLevel`  
(オプション) AWS 共通ランタイム (CRT) ライブラリのログレベル。  
デフォルトは EMQX MQTT ブローカーのログレベル (`emqx` の `log.level`)。

`restartIdentifier`  
(オプション) EMQX MQTT ブローカーを再起動するには、このオプションを設定します。この設定値が変更されると、このコンポーネントは MQTT ブローカーを再起動します。このオプションを使用して、クライアントデバイスを強制的に切断できます。

`dockerOptions`  
(オプション) Docker コマンドラインにパラメータを追加するには、Linux オペレーティングシステムでのみこのオプションを設定します。例えば、追加のポートをマッピングするには、`-p` Docker パラメータを使用します。  

```
"-p 1883:1883"
```

`mergeConfigurationFiles`  
(オプション) 指定した EMQX 設定ファイルのデフォルトに追加したり、デフォルトをオーバーライドしたりするには、このオプションを設定します。設定ファイルとその形式については、「*EMQX 4.0 ドキュメント*」の「[Configuration](https://www.emqx.io/docs/en/v4.4/configuration/configuration.html)」を参照してください。指定した値は、設定ファイルに付加されます。  
次の例では、`etc/emqx.conf` ファイルを更新します。  

```
"mergeConfigurationFiles": {
    "etc/emqx.conf": "broker.sys_interval=30s\nbroker.sys_heartbeat=10s"
},
```
EMQX によってサポートされている設定ファイルに加えて、Greengrass は、`etc/plugins/aws_greengrass_emqx_auth.conf` と呼ばれる EMQX 用の Greengrass 認証プラグインを設定するファイルをサポートしています。サポートされているオプションは `auth_mode` と `use_greengrass_managed_certificates` の 2 つです。別の認証プロバイダーを使用するには、`auth_mode` オプションを次のいずれかに設定します。  
+ `enabled`– (デフォルト) Greengrass 認証および認可プロバイダーを使用します。
+ `bypass_on_failure`– Greengrass 認証プロバイダーを使用し、Greengrass が認証または認可を拒否する場合は、EMQX プロバイダーチェーン内の残りの認証プロバイダーを使用します。
+ `bypass` – Greengrass プロバイダーが無効になっています。その後、認証と認可は EMQX プロバイダーチェーンによって処理されます。
`use_greengrass_managed_certificates` が `true` の場合、このオプションは Greengrass がブローカー TLS 証明書を管理することを示します。`false` の場合は、別のソースを通じて証明書を提供していることを示しています。  
次の例では、`etc/plugins/aws_greengrass_emqx_auth.conf` 設定ファイルのデフォルトを更新します。  

```
"mergeConfigurationFiles": {
    "etc/plugins/aws_greengrass_emqx_auth.conf": "auth_mode=enabled\n use_greengrass_managed_certificates=true\n"
  },
```
`aws.greengrass.clientdevices.mqtt.EMQX` は、セキュリティに配慮したオプションを設定することを許可します。これらには、TLS 設定、認証、認可プロバイダーが含まれます。推奨設定は、相互 TLS 認証と Greengrass Client Device Auth プロバイダーを使用するデフォルト設定です。

`replaceConfigurationFiles`  
(オプション) 指定した EMQX 設定ファイルを置き換えるには、このオプションを設定します。指定した値は、既存の設定ファイル全体を置き換えます。このセクションでは `etc/emqx.conf` ファイルを指定できません。`mergeConfigurationFile` を使用して `etc/emqx.conf` を変更する必要があります。

**Example 例: 設定マージの更新**  
次の設定例では、MQTT ブローカーをポート 443 で操作するように指定しています。  

```
{
  "emqx": {
    "listener.ssl.external": "443",
    "listener.ssl.external.max_connections": "1024000",
    "listener.ssl.external.max_conn_rate": "500",
    "listener.ssl.external.rate_limit": "50KB,5s",
    "listener.ssl.external.handshake_timeout": "15s",
    "log.level": "warning"
  },
  "requiresPrivilege": "true",
  "startupTimeoutSeconds": "90",
  "ipcTimeoutSeconds": "5"
}
```

------

## ローカルログファイル
<a name="mqtt-broker-emqx-component-log-file"></a>

このコンポーネントは次のログファイルを使用します。

------
#### [ Linux ]

```
{{/greengrass/v2}}/logs/aws.greengrass.clientdevices.mqtt.EMQX.log
```

------
#### [ Windows ]

```
{{C:\greengrass\v2}}\logs\aws.greengrass.clientdevices.mqtt.EMQX.log
```

------

**このコンポーネントのログを確認するには**
+ コアデバイスに次のコマンドを実行して、このコンポーネントのログファイルをリアルタイムに確認します。`{{/greengrass/v2}}` または {{C:\\greengrass\\v2}} を AWS IoT Greengrass ルートフォルダへのパスに置き換えます。

------
#### [ Linux ]

  ```
  sudo tail -f {{/greengrass/v2}}/logs/aws.greengrass.clientdevices.mqtt.EMQX.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content {{C:\greengrass\v2}}\logs\aws.greengrass.clientdevices.mqtt.EMQX.log -Tail 10 -Wait
  ```

------

## ライセンス
<a name="mqtt-broker-emqx-component-licenses"></a>

Windows オペレーティングシステムでは、このソフトウェアには、[マイクロソフト ソフトウェア ライセンス条項 - MICROSOFT VISUAL STUDIO COMMUNITY 2022](https://visualstudio.microsoft.com/license-terms/vs2022-ga-community) に基づいて配布されたコードが含まれています。このソフトウェアをダウンロードすると、このコードのライセンス条項に同意したことになります。

<a name="component-core-software-license"></a>このコンポーネントは、[Greengrass Core ソフトウェアライセンス契約](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf)に従ってリリースされています。

## 変更ログ
<a name="mqtt-broker-emqx-component-changelog"></a>

次の表は、コンポーネントの各バージョンにおける変更を示します。

------
#### [ v2.x ]


|  **バージョン**  |  **変更**  | 
| --- | --- | 
| 2.0.3 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
| 2.0.2 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
| 2.0.1 | [クライアントデバイス認証](client-device-auth-component.md)バージョン 2.5.0 リリース用に、バージョンが更新されました。 | 
| 2.0.0 | MQTT 5 ブローカー (EMQX) のこのバージョンでは、バージョン 1.x とは異なる設定パラメータが必要です。バージョン 1.x でデフォルト以外の設定を使用している場合は、2.x のコンポーネント設定を更新する必要があります。詳細については、「[設定](#mqtt-broker-emqx-component-configuration)」を参照してください。[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/greengrass/v2/developerguide/mqtt-broker-emqx-component.html) | 

------
#### [ v1.x ]


|  **バージョン**  |  **変更**  | 
| --- | --- | 
| 1.2.3 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
| 1.2.2 | [クライアントデバイス認証](client-device-auth-component.md)バージョン 2.4.0 リリース用に、バージョンが更新されました。 | 
| 1.2.1 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
| 1.2.0 | 証明書チェーンのサポートを追加しました。 | 
| 1.1.0 | <a name="changelog-emqx-1.1.0"></a>[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/greengrass/v2/developerguide/mqtt-broker-emqx-component.html) | 
| 1.0.1 | 一部の MQTT クライアントが接続に失敗する原因となる TLS ハンドシェイク中の問題を修正します。 | 
| 1.0.0 | 当初のバージョン | 

------