第 6 步:在设备上部署 Amazon Kinesis Video Streams Edge Ag Amazon IoT Greengrass ent 组件 - Amazon Kinesis Video Streams
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

第 6 步:在设备上部署 Amazon Kinesis Video Streams Edge Ag Amazon IoT Greengrass ent 组件

在设备上部署 Amazon Kinesis Video Streams 边缘 Amazon IoT Greengrass 代理组件
  1. 使用提供的链接下载tar文件。

    如果你填写了 Amazon Kinesis Video Streams Edge Agent 意向表,请查看电子邮件中的下载链接。如果您尚未填写表格,请在此处填写。

  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。

    注意

    kvs-edge-agent.tar.gz 中包含的 jar 没有依赖关系。使用以下步骤来构建这些库。

    导航到包含kvs-edge-agent的文件夹pom.xml

    键入 mvn clean package

    这将生成一个 jar 文件,其中包含亚马逊 Kinesis Video Streams Edge Agent 所需的kvs-edge-agent/target/libs.jar依赖项。

  5. 将 libs.jar 放入包含组件构件的文件夹中。

    键入 mv ./target/libs.jar ./KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/

  6. 可选。配置属性。Amazon Kinesis Video Streams Edge Agent Amazon IoT Greengrass 在模式下接受以下环境变量:

    环境变量名 必需 描述

    AWS_REGION

    使用的区域。

    示例:us-west -2

    Amazon IoT Greengrass 核心软件会自动为您设置此值。有关更多信息,请参阅《 Amazon IoT Greengrass Version 2 开发人员指南》中的组件环境变量参考主题。

    GST_PLUGIN_PATH

    指向包含gstkvssinkIngestorPipelineJNI依赖于平台的库的文件夹的文件路径。这让 GStreamer 可以加载这些插件。有关更多信息,请参阅下载、构建和配置 gStreamer 元素

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

    LD_LIBRARY_PATH

    指向包含cproducerKinesisVideoProducer依赖于平台的库的目录的文件路径。

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

    AWS_KVS_EDGE_CLOUDWATCH_ENABLED

    确定 Amazon Kinesis Video Streams Video Streams Edge Agent 是否会将作业运行状况指标 Amazon CloudWatch发布到上。

    可接受的值:TRUE/FALSE(不区分大小写)。FALSE如果未提供,则默认为。

    示例:

    AWS_KVS_EDGE_LOG_LEVEL

    亚马逊 Kinesis Video Streams Video Streams Edge Agent 输出的记录级别。

    可接受的值:

    • 关闭

    • ALL

    • 致命

    • 错误

    • 警告

    • 信息,默认(如果未提供)

    • 调试

    • 跟踪

    示例INFO

    AWS_KVS_EDGE_LOG_MAX_FILE_SIZE

    一旦日志文件达到此大小,就会发生翻转。

    • 最小:1

    • 最大值:100

    • 默认值: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/

    GREENGRASS_ROOT_DIRECTORY

    Amazon IoT Greengrass 根目录的文件路径。

    /greengrass/v2/如果未提供,则默认为。

    示例/file/path/

    GST_DEBUG

    指定要输出的 GStreamer 日志的级别。有关更多信息,请参阅 gStreamer 文档。

    示例:0

    GST_DEBUG_FILE

    指定 GStreamer 调试日志的输出文件。如果未设置,则调试日志将输出为标准错误。有关更多信息,请参阅 gStreamer 文档。

    示例/tmp/gstreamer-logging.log

    打开kvs-edge-agent/KvsEdgeComponent/recipes/recipe.yaml并修改运行脚本以添加上述任何环境变量。

    重要

    确保修改后的运行脚本不包含任何制符。 Amazon IoT Greengrass 核心软件将无法读取食谱。

  7. 部署 Amazon Kinesis Video Streams 边缘 Amazon IoT Greengrass 代理组件。

    类型:

    sudo /greengrass/v2/bin/greengrass-cli deployment create \ --recipeDir <download location>/kvs-edge-agent/KvsEdgeComponent/recipes/ \ --artifactDir <download location>/kvs-edge-agent/KvsEdgeComponent/artifacts/ \ --merge "aws.kinesisvideo.KvsEdgeComponent=EdgeAgentVersion"

    有关更多信息,请参阅《Amazon IoT Greengrass Version 2 开发人员指南》中的以下章节:

  8. 使用向应用程序发送配置 Amazon CLI。

    1. 创建一个新文件,example-edge-configuration.json

      将以下代码粘贴到该文件中。这是一个配置示例,每天从上午 9:00:00 到下午 4:59:59(根据设备上的系统时间)进行记录。 Amazon 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 CLI 到 Amazon Kinesis Video Streams Edge Agent:

      aws kinesisvideo start-edge-configuration-update --cli-input-json "file://example-edge-configuration.json"
  9. 对亚马逊 Kinesis Video Streams Edge Agent 的每个直播重复上一个步骤。