

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在裝置上部署 Amazon Kinesis Video Streams Edge Agent AWS IoT Greengrass 元件
<a name="gs-deploy-edge"></a>

執行下列動作以在裝置上部署 Amazon Kinesis Video Streams Edge Agent AWS IoT Greengrass 元件：

**部署 元件**

1. 使用提供的連結下載 `tar` 檔案。

   如果您已完成 Amazon Kinesis Video Streams Edge Agent 興趣表單，請檢查您的電子郵件以取得下載連結。如果您尚未完成表單，請[在此處](https://pages.awscloud.com/GLOBAL-launch-DL-KVS-Edge-2023-learn.html)完成。

1. 驗證檢查總和。

1. 在裝置中解壓縮二進位檔和 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。

1. 建置相依性 jar。
**注意**  
kvs-edge-agent.tar.gz 隨附的 jar 沒有相依性。使用下列步驟來建置這些程式庫。

   導覽至包含 的`kvs-edge-agent`資料夾`pom.xml`。

   輸入 `mvn clean package`。

   這將產生 jar 檔案，其中包含 Amazon Kinesis Video Streams Edge Agent 在 所需的相依性`kvs-edge-agent/target/libs.jar`。

1. 將 libs.jar 放入包含元件成品的資料夾。

   輸入 `mv ./target/libs.jar ./KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/`。

1. 「選用」****。設定屬性。Amazon Kinesis Video Streams Edge Agent 在 模式中 AWS IoT Greengrass 接受下列環境變數：    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/kinesisvideostreams/latest/dg/gs-deploy-edge.html)

   開啟`kvs-edge-agent/KvsEdgeComponent/recipes/recipe.yaml`並修改執行指令碼，以新增任何上述環境變數。
**重要**  
請確定修改後的執行指令碼不包含任何**標籤**字元。 AWS IoT Greengrass 核心軟體將無法讀取配方。

1. 部署 Amazon Kinesis Video Streams Edge Agent AWS 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"
   ```

   如需詳細資訊，請參閱《 *AWS IoT Greengrass Version 2 開發人員指南*》中的下列章節：
   + [AWS IoT Greengrass CLI 命令](https://docs.aws.amazon.com//greengrass/v2/developerguide/gg-cli-reference.html)
   + [將 AWS IoT Greengrass 元件部署至裝置](https://docs.aws.amazon.com//greengrass/v2/developerguide/manage-deployments.html)

1. 使用 將組態傳送至應用程式 AWS CLI。

   1. 建立新的檔案 `example-edge-configuration.json`。

      將以下程式碼貼到檔案。這是每日上午 9：00：00 至下午 4：59：59 記錄的範例組態 （根據您 AWS IoT 裝置上的系統時間）。它也會每天從晚上 7：00：00 到晚上 9：59：59 上傳錄製的媒體。

      如需詳細資訊，請參閱[StartEdgeConfigurationUpdate](API_StartEdgeConfigurationUpdate.md)。

      ```
      {
          "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
              }
          }
      }
      ```

   1. 在 中輸入以下內容 AWS CLI ，將檔案傳送至 Amazon Kinesis Video Streams Edge Agent：

      ```
      aws kinesisvideo start-edge-configuration-update --cli-input-json "file://example-edge-configuration.json"
      ```

1. 針對 Amazon Kinesis Video Streams Edge Agent 的每個串流重複上述步驟。