翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
レガシーサブスクリプションルーター
レガシーサブスクリプションルータ (aws.greengrass.LegacySubscriptionRouter
) は、Greengrass コアデバイスのサブスクリプションを管理します。サブスクリプションは AWS IoT Greengrass V1 の機能で、Lambda 関数がコアデバイスの MQTT メッセージングに使用できるトピックを定義するものです。詳細については、「AWS IoT Greengrass V1 デベロッパーガイド」の「MQTT メッセージングワークフローにおけるマネージドサブスクリプション」を参照してください。
このコンポーネントを使用して、AWS IoT Greengrass Core SDK を使用するコネクタコンポーネントと Lambda 関数コンポーネントのサブスクリプションを有効にできます。
レガシーサブスクリプションルーターコンポーネントは、Lambda 関数が AWS IoT Greengrass Core SDK の publish()
関数を使用する場合にのみ必要です。AWS IoT Device SDK V2 でプロセス間通信 (IPC) インターフェイスを使用するように Lambda 関数コードを更新する場合、レガシーサブスクリプションルーターコンポーネントをデプロイする必要はありません。詳細については、次のプロセス間通信サービスを参照してください。
バージョン
このコンポーネントには、次のバージョンがあります。
タイプ
このコンポーネントはジェネリックコンポーネント (aws.greengrass.generic
) です。Greengrass nucleus は、コンポーネントのライフサイクルスクリプトを実行します。
詳細については、「コンポーネントタイプ」を参照してください。
オペレーティングシステム
このコンポーネントは、Linux コアデバイスにのみインストールできます。
要件
このコンポーネントには次の要件があります。
依存関係
コンポーネントをデプロイするとき、AWS IoT Greengrass はそれと互換性のあるバージョンの依存関係もデプロイします。つまり、コンポーネントを正常にデプロイするには、コンポーネントとその依存関係のすべての要件を満たす必要があります。このセクションでは、このコンポーネントのリリースされたバージョンの依存関係と、各依存関係に対するコンポーネントのバージョンを定義するセマンティックバージョン制約をリスト表示しています。コンポーネントの各バージョンの依存関係は、AWS IoT Greengrass コンソールでも確認できます。コンポーネントの詳細ページで [Dependencies] (依存関係) リストを確認します。
- 2.1.11
-
次の表に、このコンポーネントのバージョン 2.1.11 の依存関係を示します。
- 2.1.10
-
次の表に、このコンポーネントのバージョン 2.1.10 の依存関係を示します。
- 2.1.9
-
次の表に、このコンポーネントのバージョン 2.1.9 の依存関係を示します。
- 2.1.8
-
次の表に、このコンポーネントのバージョン 2.1.8 に関する依存関係を示します。
- 2.1.7
-
次の表に、このコンポーネントのバージョン 2.1.7 に関する依存関係を示します。
- 2.1.6
-
次の表に、このコンポーネントのバージョン 2.1.6 の依存関係を示します。
- 2.1.5
-
次の表に、このコンポーネントのバージョン 2.1.5 の依存関係を示します。
- 2.1.4
-
次の表に、このコンポーネントのバージョン 2.1.4 の依存関係を示します。
- 2.1.3
-
次の表に、このコンポーネントのバージョン 2.1.3 の依存関係を示します。
- 2.1.2
-
次の表に、このコンポーネントのバージョン 2.1.2 の依存関係を示します。
- 2.1.1
-
次の表に、このコンポーネントのバージョン 2.1.1 の依存関係を示します。
- 2.1.0
-
次の表に、このコンポーネントのバージョン 2.1.0 の依存関係を示します。
- 2.0.3
-
次の表に、このコンポーネントのバージョン 2.0.3 の依存関係を示します。
コンポーネントの依存関係の詳細については、「コンポーネント recipe のリファレンス」を参照してください。
構成
このコンポーネントには、コンポーネントのデプロイ時にカスタマイズできる次の設定パラメータが用意されています。
- v2.1.x
-
subscriptions
-
(オプション) コアデバイスで有効にするサブスクリプション。これはオブジェクトで、各キーは一意の ID であり、各値はそのコネクタのサブスクリプションを定義するオブジェクトです。V1 コネクタコンポーネントまたは AWS IoT Greengrass Core SDK を使用する Lambda 関数をデプロイするときは、サブスクリプションを設定する必要があります。
各サブスクリプションオブジェクトには、次の情報が含まれます:
id
-
このサブスクリプションの一意の ID。この ID は、このサブスクリプションオブジェクトのキーと一致する必要があります。
source
-
AWS IoT Greengrass Core SDKを 使用して、subject
で指定したトピックに関する MQTT メッセージの発行を行う Lambda 関数です。次のいずれかを指定します。
V1 コネクタコンポーネントのサブスクリプションをデプロイするには、コンポーネントの名前またはコネクタコンポーネントの Lambda 関数の ARN を指定します。
subject
-
ソースとターゲットがメッセージを発行および受信できる MQTT トピックまたはトピックフィルター。この値は +
および #
トピックのワイルドカードをサポートしています。
target
-
subject
で指定したトピックに関する MQTT メッセージを受信するターゲット。サブスクリプションは、source
関数が AWS IoT Core またはコアデバイスの Lambda 関数に MQTT メッセージを発行することを指定します。次のいずれかを指定します。
-
cloud
。source
関数は MQTT メッセージを AWS IoT Core に発行します。
-
コアデバイスでの Lambda 関数コンポーネントの名前。component:com.example.HelloWorldLambda
などの component:
プレフィックスを付けてコンポーネント名を指定します。
-
コアデバイスの Lambda 関数の Amazon リソースネーム (ARN)。
Lambda 関数のバージョンが変更された場合は、関数の新しいバージョンでサブスクリプションを設定する必要があります。これを怠ると、バージョンがサブスクリプションと一致しないうちは、このコンポーネントはメッセージをルーティングしません。
インポートする関数のバージョンが含まれた Amazon リソースネーム (ARN) を指定する必要があります。$LATEST
のようなバージョンエイリアスは使用できません。
デフォルト: サブスクリプションなし
例 設定更新の例 (AWS IoT Core に対するサブスクリプションの定義)
以下の例は、com.example.HelloWorldLambda
Lambda 関数コンポーネントが AWS IoT Core に hello/world
トピックに関する MQTT メッセージを公開することを指定します。
{
"subscriptions": {
"Greengrass_HelloWorld_to_cloud": {
"id": "Greengrass_HelloWorld_to_cloud",
"source": "component:com.example.HelloWorldLambda",
"subject": "hello/world",
"target": "cloud"
}
}
}
例 設定更新の例 (別の Lambda 関数に対するサブスクリプションの定義)
以下の例は、com.example.HelloWorldLambda
Lambda 関数コンポーネントが com.example.MessageRelay
Lambda 関数コンポーネントに hello/world
トピックに関する MQTT メッセージを公開することを指定します。
{
"subscriptions": {
"Greengrass_HelloWorld_to_MessageRelay": {
"id": "Greengrass_HelloWorld_to_MessageRelay",
"source": "component:com.example.HelloWorldLambda",
"subject": "hello/world",
"target": "component:com.example.MessageRelay"
}
}
}
- v2.0.x
-
subscriptions
-
(オプション) コアデバイスで有効にするサブスクリプション。これはオブジェクトで、各キーは一意の ID であり、各値はそのコネクタのサブスクリプションを定義するオブジェクトです。V1 コネクタコンポーネントまたは AWS IoT Greengrass Core SDK を使用する Lambda 関数をデプロイするときは、サブスクリプションを設定する必要があります。
各サブスクリプションオブジェクトには、次の情報が含まれます:
id
-
このサブスクリプションの一意の ID。この ID は、このサブスクリプションオブジェクトのキーと一致する必要があります。
source
-
AWS IoT Greengrass Core SDKを 使用して、subject
で指定したトピックに関する MQTT メッセージの発行を行う Lambda 関数です。次を指定します:
V1 コネクタコンポーネントのサブスクリプションをデプロイするには、コネクタコンポーネントの Lambda 関数の ARN を指定します。
subject
-
ソースとターゲットがメッセージを発行および受信できる MQTT トピックまたはトピックフィルター。この値は +
および #
トピックのワイルドカードをサポートしています。
target
-
subject
で指定したトピックに関する MQTT メッセージを受信するターゲット。サブスクリプションは、source
関数が AWS IoT Core またはコアデバイスの Lambda 関数に MQTT メッセージを発行することを指定します。次のいずれかを指定します。
デフォルト: サブスクリプションなし
例 設定更新の例 (AWS IoT Core に対するサブスクリプションの定義)
以下の例は、Greengrass_HelloWorld
関数が AWS IoT Core に hello/world
トピックに関する MQTT メッセージを公開することを指定します。
"subscriptions": {
"Greengrass_HelloWorld_to_cloud": {
"id": "Greengrass_HelloWorld_to_cloud",
"source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:5",
"subject": "hello/world",
"target": "cloud"
}
}
例 設定更新の例 (別の Lambda 関数に対するサブスクリプションの定義)
以下の例は、Greengrass_HelloWorld
関数が Greengrass_MessageRelay
に hello/world
トピックに関する MQTT メッセージを公開することを指定します。
"subscriptions": {
"Greengrass_HelloWorld_to_MessageRelay": {
"id": "Greengrass_HelloWorld_to_MessageRelay",
"source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:5",
"subject": "hello/world",
"target": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_MessageRelay:5"
}
}
ローカルログファイル
このコンポーネントはログを出力しません。
変更ログ
次の表は、コンポーネントの各バージョンにおける変更を示します。
バージョン
|
変更
|
2.1.11
|
Greengrass nucleus バージョン 2.12.0 リリース用にバージョンが更新されました。 |
2.1.10
|
Greengrass nucleus バージョン 2.11.0 のリリース用にバージョンが更新されました。 |
2.1.9
|
Greengrass nucleus バージョン 2.10.0 のリリース用にバージョンが更新されました。 |
2.1.8
|
Greengrass nucleus バージョン 2.9.0 のリリース用にバージョンが更新されました。 |
2.1.7
|
Greengrass nucleus バージョン 2.8.0 のリリース用にバージョンが更新されました。 |
2.1.6
|
Greengrass nucleus バージョン 2.7.0 のリリース用にバージョンが更新されました。
|
2.1.5
|
Greengrass nucleus バージョン 2.6.0 のリリース用にバージョンが更新されました。
|
2.1.4
|
Greengrass nucleus バージョン 2.5.0 のリリース用にバージョンが更新されました。
|
2.1.3
|
Greengrass nucleus バージョン 2.4.0 のリリース用にバージョンが更新されました。
|
2.1.2
|
Greengrass nucleus バージョン 2.3.0 のリリース用にバージョンが更新されました。
|
2.1.1
|
Greengrass nucleus バージョン 2.2.0 のリリース用にバージョンが更新されました。
|
2.1.0
|
|
2.0.3
|
当初のバージョン
|