ストリームマネージャー - AWS IoT Greengrass

ストリームマネージャー

ストリームマネージャーコンポーネント (aws.greengrass.StreamManager) を使用すると、データストリームを処理して、Greengrass コアデバイスから AWS クラウド に転送できます。

カスタムコンポーネントでストリームマネージャーを設定して使用する方法の詳細については、「Greengrass コアデバイスでのデータストリームの管理」を参照してください。

バージョン

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

  • 2.1.x

  • 2.0.x

注記

ストリームマネージャーを使用してデータをクラウドにエクスポートする場合、ストリームマネージャーコンポーネントのバージョン 2.0.7 を v2.0.8 と v2.0.11 の間のバージョンにアップグレードすることはできません。ストリームマネージャーを初めてデプロイする場合、ストリームマネージャーコンポーネントの最新バージョンをデプロイすることを強くお勧めします。

タイプ

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

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

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

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

  • Linux

  • Windows

要件

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

エンドポイントおよびポート

このコンポーネントは、基本的な操作に必要なエンドポイントとポートに加えて、次のエンドポイントとポートにアウトバウンド要求を実行できる必要があります。詳細については、「プロキシまたはファイアウォールを介したデバイストラフィックを許可する」を参照してください。

エンドポイント ポート 必要 説明

iotanalytics.region.amazonaws.com

443 いいえ

AWS IoT Analytics にデータを公開する場合は必須です。

kinesis.region.amazonaws.com

443 いいえ

Kinesis Data Firehose にデータを公開する場合に必要です。

data.iotsitewise.region.amazonaws.com

443 いいえ

AWS IoT SiteWise にデータを公開する場合は必須です。

*.s3.amazonaws.com

443 いいえ

S3 バケットにデータを公開する場合に必要です。

* は、データを公開する各バケットの名前に置き換えることができます。

依存関係

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

2.1.2

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

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.0 <3.0.0 ソフト
トークン交換サービス >=0.0.0 ハード
2.1.1

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

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.0 <2.9.0 ソフト
トークン交換サービス >=0.0.0 ハード
2.1.0

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

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.0 <2.8.0 ソフト
トークン交換サービス >=0.0.0 ハード
2.0.15

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

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.0 <2.7.0 ソフト
トークン交換サービス >=0.0.0 ハード
2.0.13 and 2.0.14

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

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.0 <2.6.0 ソフト
トークン交換サービス >=0.0.0 ハード
2.0.11 and 2.0.12

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

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.0 <2.5.0 ソフト
トークン交換サービス >=0.0.0 ハード
2.0.10

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

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.0 <2.4.0 ソフト
トークン交換サービス >=0.0.0 ハード
2.0.9

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

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.0 <2.3.0 ソフト
トークン交換サービス >=0.0.0 ハード
2.0.8

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

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.0 <2.2.0 ソフト
トークン交換サービス >=0.0.0 ハード
2.0.7

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

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.0.3 <2.1.0 ソフト
トークン交換サービス >=0.0.0 ハード

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

構成

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

STREAM_MANAGER_STORE_ROOT_DIR

(オプション) ストリームを保存するために使用されるローカルディレクトリの絶対パス。この値は、スラッシュ (/data など) で開始する必要があります。

既存のフォルダを指定する必要があります。ストリームマネージャーコンポーネントを実行するシステムユーザーには、このフォルダに対する読み取りと書き込み許可が必要です。例えば、次のコマンドを実行して、ストリームマネージャーのルートフォルダとして指定するフォルダ /var/greengrass/streams を作成および設定できます。これらのコマンドは、デフォルトのシステムユーザーである ggc_user が、このフォルダを読み取りおよび書き込みできるようにします。

sudo mkdir /var/greengrass/streams sudo chown ggc_user /var/greengrass/streams sudo chmod 700 /var/greengrass/streams

デフォルト: /greengrass/v2/work/aws.greengrass.StreamManager

STREAM_MANAGER_SERVER_PORT

(オプション) ストリームマネージャーとの通信に使用するローカルポート番号。

0 を指定して、ランダムに利用可能なポートを利用できます。

デフォルト: 8088

STREAM_MANAGER_AUTHENTICATE_CLIENT

(オプション) クライアントがストリームマネージャーとやり取りする前に、クライアントの認証を必須にできます。ストリームマネージャー SDK は、クライアントとストリームマネージャー間の相互作用を制御します。このパラメータは、ストリームを操作するためにストリームマネージャー SDK を呼び出すことができるクライアントを決定します。詳細については、「ストリームマネージャークライアント認証」を参照してください。

true を指定した場合、ストリームマネージャー SDK では Greengrass コンポーネントのみをクライアントとして許可します。

false を指定した場合、ストリームマネージャー SDK では、コアデバイスのすべてのプロセスをクライアントにすることができます。

デフォルト: true

STREAM_MANAGER_EXPORTER_MAX_BANDWIDTH

(オプション) ストリームマネージャーがデータのエクスポートに使用できる平均最大帯域幅 (KB/s) 。

デフォルト: 無制限

STREAM_MANAGER_THREAD_POOL_SIZE

(オプション) ストリームマネージャーがデータのエクスポートに使用できるアクティブなスレッドの最大数。

最適なサイズは、ハードウェア、ストリームボリューム、予定されているエクスポートストリームの数によって異なります。エクスポート速度が遅い場合は、この設定を調整して、ハードウェアとビジネスケースに最適なサイズを見つけることができます。コアデバイスハードウェアの CPU とメモリは、制限要因です。開始するには、この値をデバイスのプロセッサコアの数と同じ値に設定してみてください。

ハードウェアがサポートできるサイズよりも大きいサイズを設定しないように注意してください。各ストリームはハードウェアリソースを消費するため、制約のあるデバイス上ではエクスポートストリームの数を制限する必要があります。

デフォルト: 5 スレッド

STREAM_MANAGER_EXPORTER_S3_DESTINATION_MULTIPART_UPLOAD_MIN_PART_SIZE_BYTES

(オプション) Amazon S3 にマルチパートアップロードのパートの最小サイズ (バイト単位)。ストリームマネージャーはこの設定と入力ファイルのサイズを基に、マルチパート PUT リクエストのデータをバッチ処理する方法を決定します。

注記

ストリームマネージャーは、ストリーム sizeThresholdForMultipartUploadBytes プロパティを使用して、Amazon S3 にシングルまたはマルチパートのアップロードとしてエクスポートするかどうかを決定します。AWS IoT Greengrass コンポーネントは、Amazon S3 にエクスポートするストリームを作成するときに、このしきい値を設定できます。

デフォルト: 5242880 (5 MB)。これも最小値です。

LOG_LEVEL

(オプション) コンポーネントのログレベル。こちらにレベル順に一覧表示されているログレベルから選択します。

  • TRACE

  • DEBUG

  • INFO

  • WARN

  • ERROR

デフォルト: INFO

JVM_ARGS

(オプション) 起動時にストリームマネージャーに渡すカスタム Java 仮想マシン引数。複数の引数はスペースで区切ります。

このパラメータは、JVM で使用されるデフォルト設定を上書きする必要がある場合にのみ使用します。例えば、大量のストリームをエクスポートする場合は、デフォルトのヒープサイズを大きくする必要があります。

例: 設定マージの更新

次の設定例では、デフォルト以外のポートを使用するように指定しています。

{ "STREAM_MANAGER_SERVER_PORT": "18088" }

ローカルログファイル

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

Linux
/greengrass/v2/logs/aws.greengrass.StreamManager.log
Windows
C:\greengrass\v2\logs\aws.greengrass.StreamManager.log
このコンポーネントのログを確認するには
  • コアデバイスに次のコマンドを実行して、このコンポーネントのログファイルをリアルタイムに確認します。/greengrass/v2 または C:\greengrass\v2 を AWS IoT Greengrass ルートフォルダへのパスに置き換えてください。

    Linux
    sudo tail -f /greengrass/v2/logs/aws.greengrass.StreamManager.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\aws.greengrass.StreamManager.log -Tail 10 -Wait

変更ログ

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

バージョン

変更

2.1.2

バグ修正と機能向上

英語以外の言語を使用する Windows OS における問題を修正しました。

Greengrass nucleus バージョン 2.9.0 のリリース用にバージョンが更新されました。

2.1.1

Greengrass nucleus バージョン 2.8.0 のリリース用にバージョンが更新されました。

2.1.0

新機能

2.0.15

Greengrass nucleus バージョン 2.6.0 のリリース用にバージョンが更新されました。

2.0.14

このバージョンには、バグ修正と機能向上が含まれています。

2.0.13

Greengrass nucleus バージョン 2.5.0 のリリース用にバージョンが更新されました。

2.0.12
バグ修正と機能向上

ストリームマネージャー v2.0.7 を v2.0.8 と v2.0.11 の間のバージョンにアップグレードできない問題を修正しました。ストリームマネージャーを使用してデータをクラウドにエクスポートする場合、v2.0.12 にアップグレードできるようになりました。

2.0.11

Greengrass nucleus バージョン 2.4.0 のリリース用にバージョンが更新されました。

2.0.10

Greengrass nucleus バージョン 2.3.0 のリリース用にバージョンが更新されました。

2.0.9

Greengrass nucleus バージョン 2.2.0 のリリース用にバージョンが更新されました。

2.0.8

Greengrass nucleus バージョン 2.1.0 のリリース用にバージョンが更新されました。

2.0.7

当初のバージョン