Amazon Kinesis Video Streams Edge エージェントを構築する - Amazon Kinesis Video Streams

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

Amazon Kinesis Video Streams Edge エージェントを構築する

Amazon Kinesis Video Streams Edge エージェントを構築する
  1. 提供されたリンクを使用して tar ファイルをダウンロードします。

    Amazon Kinesis Video Streams Edge Agent のインタレストフォームに記入した場合は、ダウンロードリンクの E メールを確認してください。フォームを完了していない場合は、ここで入力します。

  2. チェックサムを確認します。

  3. デバイス内のバイナリと jar を抽出します。

    型: tar -xvf kvs-edge-agent.tar.gz

    抽出後、フォルダ構造は次のようになります。

    kvs-edge-agent/LICENSE kvs-edge-agent/THIRD-PARTY-LICENSES kvs-edge-agent/pom.xml kvs-edge-agent/KvsEdgeComponent kvs-edge-agent/KvsEdgeComponent/recipes kvs-edge-agent/KvsEdgeComponent/recipes/recipe.yaml kvs-edge-agent/KvsEdgeComponent/artifacts kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/edge_log_config kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/kvs-edge-agent.jar kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/libgstkvssink.so kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/libIngestorPipelineJNI.so kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/lib kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/lib/libcproducer.so kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/lib/libKinesisVideoProducer.so
    注記

    リリースフォルダ名は、最新のバイナリリリース番号を反映するように設定する必要があります。たとえば、1.0.0 リリースでは、フォルダ名は 1.0.0 に設定されます。

  4. 依存関係 jar を構築します。

    注記

    に含まれている jar には依存関係kvs-edge-agent.tar.gzがありません。これらのライブラリを構築するには、次のステップを使用します。

    を含むkvs-edge-agentフォルダに移動しますpom.xml

    タイプ mvn clean package

    これにより、Amazon Kinesis Video Streams Edge Agent が で必要とする依存関係を含む jar ファイルが生成されますkvs-edge-agent/target/libs.jar

  5. コンポーネントのアーティファクトを含むフォルダlibs.jarに を配置します。

    タイプ mv ./target/libs.jar ./KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/

  6. 前のステップの値を使用して環境変数を設定します。次の表に、変数の説明を示します。

    環境変数名 必要 説明

    AWS_REGION

    はい

    使用されるリージョン。

    例: us-west-2

    AWS_IOT_CA_CERT

    はい

    TLS を介してバックエンドサービスとの信頼を確立するために使用される CA 証明書へのファイルパス。

    : /file/path/to/AmazonRootCA1.pem

    AWS_IOT_CORE_CERT

    はい

    X.509 証明書へのファイルパス。

    : /file/path/to/certificateID-certificate.pem.crt

    AWS_IOT_CORE_CREDENTIAL_ENDPOINT

    はい

    AWS アカウントのAWS IoT Core 認証情報エンドポイントプロバイダーエンドポイント。

    : credential-account-specific-prefix.credentials.iot.aws-region.amazonaws.com

    AWS_IOT_CORE_DATA_ATS_ENDPOINT

    はい

    アカウントの AWS AWS IoT Core データプレーンエンドポイント

    : data-account-specific-prefix.iot.aws-region.amazonaws.com

    AWS_IOT_CORE_PRIVATE_KEY

    はい

    パブリック/プライベートキーペアで使用されるプライベートキーへのファイルパス。詳細については、「 でのキー管理 AWS IoT」を参照してください。

    : /file/path/to/certificateID-private.pem.key

    AWS_IOT_CORE_ROLE_ALIAS

    はい

    接続時に使用する IAM AWS ロールを指すロールエイリアスの名前 AWS IoT Core。

    : kvs-edge-role-alias

    AWS_IOT_CORE_THING_NAME

    はい

    アプリケーションが実行されている AWS IoT モノの名前。

    : my-edge-device-thing

    GST_PLUGIN_PATH

    はい

    gstkvssink およびIngestorPipelineJNIプラットフォーム依存ライブラリを含むフォルダを指すファイルパス。GStreamer がこれらのプラグインをロードできるようにします。詳細については、「GStreamer 要素をダウンロード、構築、設定する」を参照してください。

    : /download-location/kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/

    LD_LIBRARY_PATH

    はい

    cproducer およびKinesisVideoProducerプラットフォーム依存ライブラリを含むディレクトリを指すファイルパス。

    : /download-location/kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/lib/

    AWS_KVS_EDGE_CLOUDWATCH_ENABLED

    いいえ

    Amazon Kinesis Video Streams Edge Agent がジョブのヘルスメトリクスを投稿するかどうかを決定します Amazon CloudWatch。

    使用できる値: TRUE/FALSE (大文字と小文字は区別されません)。指定FALSEしない場合、デフォルトは になります。

    例: FALSE

    AWS_KVS_EDGE_LOG_LEVEL

    いいえ

    Amazon Kinesis Video Streams Edge Agent 出力のログ記録のレベル。

    使用できる値:

    • VOFF

    • すべて

    • 致命的

    • ERROR

    • WARN

    • INFO、デフォルト、指定されていない場合

    • DEBUG

    • TRACE

    : INFO

    AWS_KVS_EDGE_LOG_MAX_FILE_SIZE

    いいえ

    ログファイルがこのサイズに達すると、ロールオーバーが発生します。

    • 最小: 0

    • 最大: 10,000

    • デフォルト: 指定されていない場合は 20

    • 単位: メガバイト (MB)

    例: 5

    AWS_KVS_EDGE_LOG_OUTPUT_DIRECTORY

    いいえ

    Amazon Kinesis Video Streams Edge Agent ログが出力されるディレクトリを指すファイルパス。指定しない場合、デフォルト./logは になります。

    : /file/path/

    AWS_KVS_EDGE_LOG_ROLLOVER_COUNT

    いいえ

    削除する前に保持するロールオーバーログの数。

    • 最小: 1

    • 最大: 100

    • デフォルト: 指定されていない場合は 10

    例: 20

    AWS_KVS_EDGE_RECORDING_DIRECTORY

    いいえ

    ディレクトリに記録されたメディアを指すファイルパスが書き込まれます。指定しない場合、デフォルトは現在のディレクトリになります。

    : /file/path/

    GST_DEBUG

    いいえ

    出力する GStreamer ログのレベルを指定します。詳細については、GStreamer ドキュメントを参照してください。

    例: 0

    GST_DEBUG_FILE

    いいえ

    GStreamer デバッグログの出力ファイルを指定します。設定されていない場合、デバッグログは標準エラーに出力されます。詳細については、GStreamer ドキュメントを参照してください。

    : /tmp/gstreamer-logging.log

  7. GStreamer キャッシュをクリアします。タイプ:

    rm ~/.cache/gstreamer-1.0/registry.your-os-architecture.bin

    詳細については、GStreamer レジストリドキュメントを参照してください。

  8. Java コマンドを準備して実行します。Amazon Kinesis Video Streams Edge エージェントは、次の引数を受け入れます。

    Java プロパティ名 必要 説明

    java.library.path

    いいえ

    gstkvssinkIngestorPipelineJNI依存ライブラリを含むフォルダを指すファイルパス。指定しない場合、Amazon Kinesis Video Streams Edge Agent は現在のディレクトリでそれらを検索します。

    重要

    これらのファイルを見つけることができない場合Amazon Kinesis Video Streams Edge エージェントは正しく機能しません。

    : /file/path/

    これらを設定するには、jar -Djava-property-name=value の実行に使用される java コマンドに を追加します。

    例:

    java -Djava.library.path=/download-location/kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion \ --add-opens java.base/jdk.internal.misc=ALL-UNNAMED \ -Dio.netty.tryReflectionSetAccessible=true \ -cp kvs-edge-agent.jar:libs.jar \ com.amazonaws.kinesisvideo.edge.controller.ControllerApp
    重要

    上記の java コマンドを と同じディレクトリから実行します/download-location/kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion

  9. を使用して設定をアプリケーションに送信します AWS CLI。

    1. 新しいファイル を作成しますexample-edge-configuration.json

      ファイルに次のコードを貼り付けます。これは、毎日午前 9:00:00 から午後 4:59:59 まで ( AWS IoT デバイスのシステム時間に応じて) を記録するサンプル設定です。また、記録されたメディアを毎日午後 7:00:00 から午後 9:59:59 にアップロードします。

      詳細については、「StartEdgeConfigurationUpdate」を参照してください。

      { "StreamARN": "arn:aws:kinesisvideo:your-region:your-account-id:stream/your-stream/0123456789012", "EdgeConfig": { "HubDeviceArn": "arn:aws:iot:your-region:your-account-id:thing/kvs-edge-agent-demo", "RecorderConfig": { "MediaSourceConfig": { "MediaUriSecretArn": "arn:aws:secretsmanager:your-region:your-account-id:secret:your-secret-dRbHJQ", "MediaUriType": "RTSP_URI" }, "ScheduleConfig": { "ScheduleExpression": "0 0 9,10,11,12,13,14,15,16 ? * * *", "DurationInSeconds": 3599 } }, "UploaderConfig": { "ScheduleConfig": { "ScheduleExpression": "0 0 19,20,21 ? * * *", "DurationInSeconds": 3599 } }, "DeletionConfig": { "EdgeRetentionInHours": 15, "LocalSizeConfig": { "MaxLocalMediaSizeInMB": 2800, "StrategyOnFullSize": "DELETE_OLDEST_MEDIA" }, "DeleteAfterUpload": true } } }
    2. Amazon Kinesis Video Streams Edge エージェントにファイルを送信するには、 に次のように入力します AWS CLI。

      aws kinesisvideo start-edge-configuration-update --cli-input-json "file://example-edge-configuration.json"
  10. Amazon Kinesis Video Streams Edge Agent のストリームごとに前のステップを繰り返します。