Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

MQTT 5 ブローカー (EMQX)

フォーカスモード
MQTT 5 ブローカー (EMQX) - AWS IoT Greengrass

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

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

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

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

注記

クライアントデバイスは、Greengrass コアデバイスに接続し、処理するために MQTT メッセージとデータを送信するローカル IoT デバイスです。詳細については、「ローカル IoT デバイスとやり取りする」を参照してください。

バージョン

このコンポーネントには、次のバージョンがあります。

  • 2.0.x

  • 1.2.x

  • 1.1.x

  • 1.0.x

タイプ

このコンポーネントはジェネリックコンポーネント (aws.greengrass.generic) です。Greengrass nucleus は、コンポーネントのライフサイクルスクリプトを実行します。

詳細については、「コンポーネントタイプ」を参照してください。

オペレーティングシステム

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

  • リナックス

  • Windows

要件

このコンポーネントには次の要件があります。

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

    別のポートを指定し、MQTT ブリッジコンポーネントを使用して MQTT メッセージを他のブローカーにリレーする場合、MQTT ブリッジ v2.1.0 以降を使用する必要があります。MQTT ブローカーが動作するポートを使用するように設定します。

    別のポートを指定し、IP ディテクターコンポーネントを使用して MQTT ブローカーエンドポイントを管理する場合、IP ディテクタ v2.1.0 以降を使用する必要があります。MQTT ブローカーが動作するポートを報告するように設定します。

  • Linux コアデバイスでは、次のように Docker がコアデバイスにインストールおよび設定されています。

    • Docker Engine 1.9.1 以降が Greengrass コアにインストールされていいること。バージョン 20.10 は、 AWS IoT Greengrass Core ソフトウェアで動作することが検証された最新バージョンです。Docker コンテナを実行するコンポーネントをデプロイする前に、コアデバイスに直接、Docker をインストールしておく必要があります。

    • このコンポーネントをデプロイする前に、Docker デーモンがコアデバイス上で起動し、実行されています。

    • このコンポーネントを実行するシステムユーザーには、ルート権限または管理者権限が必要です。または、このコンポーネントを docker グループ内のシステムユーザーとして実行し、このコンポーネントの requiresPrivileges オプションを false に設定して特権なしで EQMX MQTT ブローカーを実行できます。

  • EMQX MQTT ブローカーコンポーネントは、VPC での実行がサポートされています。

  • EMQX MQTT ブローカーコンポーネントは armv7 プラットフォームではサポートされていません。

依存関係

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

2.0.2

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

依存関係 互換性のあるバージョン 依存関係タイプ
クライアントデバイス認証 >=2.2.0 <2.6.0 ソフト
2.0.1

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

依存関係 互換性のあるバージョン 依存関係タイプ
クライアントデバイス認証 >=2.2.0 <2.6.0 ハード
2.0.0

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

依存関係 互換性のあるバージョン 依存関係タイプ
クライアントデバイス認証 >=2.2.0 <2.5.0 ハード
1.2.2 – 1.2.3

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

依存関係 互換性のあるバージョン 依存関係タイプ
クライアントデバイス認証 >=2.2.0 <2.5.0 ハード
1.2.0 and 1.2.1

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

依存関係 互換性のあるバージョン 依存関係タイプ
クライアントデバイス認証 >=2.2.0 <2.4.0 ハード
1.0.0 and 1.1.0

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

依存関係 互換性のあるバージョン 依存関係タイプ
クライアントデバイス認証 >=2.2.0 <2.3.0 ハード

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

依存関係 互換性のあるバージョン 依存関係タイプ
クライアントデバイス認証 >=2.2.0 <2.6.0 ソフト

コンポーネントの依存関係の詳細については、「コンポーネント recipe のリファレンス」を参照してください。

設定

2.0.0 - 2.0.1

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

重要

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

emqxConfig

(オプション) 使用する EMQX MQTT ブローカー設定。このコンポーネントで EMQX 設定オプションを設定できます。

EMQX ブローカーを使用する場合、Greengrass ではデフォルト設定が使用されます。このフィールドを使用して変更しない限り、この設定が使用されます。

以下の設定を変更すると、EMQX Broker コンポーネントが再起動します。他の設定変更は、コンポーネントを再起動せずに適用されます。

  • emqxConfig/cluster

  • emqxConfig/node

  • emqxConfig/rpc

注記

aws.greengrass.clientdevices.mqtt.EMQX は、セキュリティに配慮したオプションを設定することを許可します。これらには、TLS 設定、認証、認可プロバイダーが含まれます。相互 TLS 認証と Greengrass クライアントデバイス認証プロバイダーを使用するデフォルト設定を推奨します。

例: デフォルト設定

次の例は、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 ブローカーのログレベル (emqxlog.level)。

restartIdentifier

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

dockerOptions

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

"-p 1883:1883"
例: 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", "handshake_timeout": "15s" } } }, "log": { "console": { "enable": true, "level": "warning" } } }, "authMode": "enabled" }

listener.ssl.external.rate_limit 設定エントリに相当するものはありません。use_greengrass_managed_certificates 設定オプションは削除されました。

例: ブローカーに新しいポートを設定する

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

{ "emqxConfig": { "listeners": { "ssl": { "default": { "bind": 1234 } } } }, "dockerOptions": "-p 1234:1234" }
例: MQTT ブローカーのログレベルの調整

次の例では、MQTT ブローカーのログレベルを debug に変更しています。次のログレベルから選択できます。

  • debug

  • info

  • notice

  • warning

  • error

  • critical

  • alert

  • emergency

デフォルトのログレベルは warning です。

{ "emqxConfig": { "log": { "console": { "level": "debug" } } } }
例: EMQX ダッシュボードを有効にする

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

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

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

emqx

(オプション) 使用する EMQX MQTT ブローカー設定。このコンポーネントで EMQX 設定オプションのサブセットを設定できます。

このオブジェクトには、次の情報が含まれます。

listener.ssl.external

(オプション) MQTT ブローカーが動作するポート。

注記

別のポートを指定し、MQTT ブリッジコンポーネントを使用して MQTT メッセージを他のブローカーにリレーする場合、MQTT ブリッジ v2.1.0 以降を使用する必要があります。MQTT ブローカーが動作するポートを使用するように設定します。

別のポートを指定し、IP ディテクターコンポーネントを使用して 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 ブローカーのログレベル (emqxlog.level)。

restartIdentifier

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

dockerOptions

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

"-p 1883:1883"
mergeConfigurationFiles

(オプション) 指定した EMQX 設定ファイルのデフォルトに追加したり、デフォルトをオーバーライドしたりするには、このオプションを設定します。設定ファイルとその形式については、EMQX 4.0 ドキュメントの「Configuration」(設定) を参照してください。指定した値は、設定ファイルに付加されます。

次の例では、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_modeuse_greengrass_managed_certificates の 2 つです。別の認証プロバイダーを使用するには、auth_mode オプションを次のいずれかに設定します。

  • enabled– (デフォルト) Greengrass 認証および認可プロバイダーを使用します。

  • bypass_on_failure– Greengrass 認証プロバイダーを使用し、Greengrass が認証または認可を拒否する場合は、EMQX プロバイダーチェーン内の残りの認証プロバイダーを使用します。

  • bypass – Greengrass プロバイダーが無効になっています。その後、認証と認可は EMQX プロバイダーチェーンによって処理されます。

use_greengrass_managed_certificatestrue の場合、このオプションは 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 を変更する必要があります。

例: 設定マージの更新

次の設定例では、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" }

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

重要

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

emqxConfig

(オプション) 使用する EMQX MQTT ブローカー設定。このコンポーネントで EMQX 設定オプションを設定できます。

EMQX ブローカーを使用する場合、Greengrass ではデフォルト設定が使用されます。このフィールドを使用して変更しない限り、この設定が使用されます。

以下の設定を変更すると、EMQX Broker コンポーネントが再起動します。他の設定変更は、コンポーネントを再起動せずに適用されます。

  • emqxConfig/cluster

  • emqxConfig/node

  • emqxConfig/rpc

注記

aws.greengrass.clientdevices.mqtt.EMQX は、セキュリティに配慮したオプションを設定することを許可します。これらには、TLS 設定、認証、認可プロバイダーが含まれます。相互 TLS 認証と Greengrass クライアントデバイス認証プロバイダーを使用するデフォルト設定を推奨します。

例: デフォルト設定

次の例は、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 ブローカーのログレベル (emqxlog.level)。

restartIdentifier

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

dockerOptions

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

"-p 1883:1883"
例: 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", "handshake_timeout": "15s" } } }, "log": { "console": { "enable": true, "level": "warning" } } }, "authMode": "enabled" }

listener.ssl.external.rate_limit 設定エントリに相当するものはありません。use_greengrass_managed_certificates 設定オプションは削除されました。

例: ブローカーに新しいポートを設定する

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

{ "emqxConfig": { "listeners": { "ssl": { "default": { "bind": 1234 } } } }, "dockerOptions": "-p 1234:1234" }
例: MQTT ブローカーのログレベルの調整

次の例では、MQTT ブローカーのログレベルを debug に変更しています。次のログレベルから選択できます。

  • debug

  • info

  • notice

  • warning

  • error

  • critical

  • alert

  • emergency

デフォルトのログレベルは warning です。

{ "emqxConfig": { "log": { "console": { "level": "debug" } } } }
例: EMQX ダッシュボードを有効にする

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

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

ローカルログファイル

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

Linux
/greengrass/v2/logs/aws.greengrass.clientdevices.mqtt.EMQX.log
Windows
C:\greengrass\v2\logs\aws.greengrass.clientdevices.mqtt.EMQX.log
/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
    sudo tail -f /greengrass/v2/logs/aws.greengrass.clientdevices.mqtt.EMQX.log

ライセンス

Windows オペレーティングシステムでは、このソフトウェアには、マイクロソフト ソフトウェア ライセンス条項 - MICROSOFT VISUAL STUDIO COMMUNITY 2022 に基づいて配布されたコードが含まれています。このソフトウェアをダウンロードすると、このコードのライセンス条項に同意したことになります。

このコンポーネントは、Greengrass Core ソフトウェアライセンス契約に従ってリリースされています。

変更ログ

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

v2.x

バージョン

変更

2.0.2

バグ修正と機能向上
  • クライアントデバイスの認証コンポーネントの準備が整う前に EMQX が起動する問題を修正しました。

2.0.1

クライアントデバイス認証バージョン 2.5.0 リリース用に、バージョンが更新されました。

2.0.0

MQTT 5 ブローカー (EMQX) のこのバージョンでは、バージョン 1.x とは異なる設定パラメータが必要です。バージョン 1.x でデフォルト以外の設定を使用している場合は、2.x のコンポーネント設定を更新する必要があります。詳細については、「設定」を参照してください。

新機能
  • MQTT ブローカーを EMQX 5.1.1 にアップグレードしました。

  • コンポーネントを再起動せずにブローカーの設定を変更できるようになりました。

更新
  • emqxmergeConfigurationFilesreplaceConfigurationFiles 設定フィールドに代わる、 emqxConfig 設定フィールドが新たに加わりました。

v1.x

バージョン

変更

1.2.3

バグ修正と機能向上
  • クライアントを切断して再認証することで以前に認証した後に、クライアントが EMQX と対話できなくなる問題を修正しました。

1.2.2

クライアントデバイス認証バージョン 2.4.0 リリース用に、バージョンが更新されました。

1.2.1

バグ修正と機能向上
  • Visual C++ 再配布可能パッケージがまだ存在しない場合に Windows 上でコンポーネントが起動しない問題を修正します。

  • EMQX をバージョン 4.4.14 に更新します。

1.2.0

証明書チェーンのサポートを追加しました。

1.1.0

新機能
  • ブローカーオプションやプラグインを含む EMQX 設定のサポートを追加します。

バグ修正と機能向上
  • EMQX をバージョン 4.4.9 に更新します。

1.0.1

一部の MQTT クライアントが接続に失敗する原因となる TLS ハンドシェイク中の問題を修正します。

1.0.0

当初のバージョン

バージョン

変更

2.0.2

バグ修正と機能向上
  • クライアントデバイスの認証コンポーネントの準備が整う前に EMQX が起動する問題を修正しました。

2.0.1

クライアントデバイス認証バージョン 2.5.0 リリース用に、バージョンが更新されました。

2.0.0

MQTT 5 ブローカー (EMQX) のこのバージョンでは、バージョン 1.x とは異なる設定パラメータが必要です。バージョン 1.x でデフォルト以外の設定を使用している場合は、2.x のコンポーネント設定を更新する必要があります。詳細については、「設定」を参照してください。

新機能
  • MQTT ブローカーを EMQX 5.1.1 にアップグレードしました。

  • コンポーネントを再起動せずにブローカーの設定を変更できるようになりました。

更新
  • emqxmergeConfigurationFilesreplaceConfigurationFiles 設定フィールドに代わる、 emqxConfig 設定フィールドが新たに加わりました。

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.