本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建置 Amazon Kinesis Video Streams Edge Agent
建置 Amazon Kinesis Video Streams Edge Agent
-
使用提供給您的連結下載
tar
檔案。如果您已完成 Amazon Kinesis Video Streams Edge Agent 興趣表單,請檢查您的電子郵件以取得下載連結。如果您尚未完成表單,請在此處完成
。 -
驗證總和檢查碼。
-
擷取裝置中的二進位檔案和 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。
-
建置相依性 jar。
注意
隨附的 jar
kvs-edge-agent.tar.gz
沒有相依性。使用下列步驟建置這些程式庫。導覽至包含 的
kvs-edge-agent
資料夾pom.xml
。輸入
mvn clean package
。這會產生 jar 檔案,其中包含 Amazon Kinesis Video Streams Edge Agent 在 所需的相依性
kvs-edge-agent/target/libs.jar
。 -
將
libs.jar
放入包含元件成品的資料夾。輸入
mv ./target/libs.jar ./KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/
。EdgeAgentVersion
/ -
使用先前步驟的值設定環境變數。下表提供變數的說明。
環境變數名稱 必要 描述 AWS_REGION
是
使用的 區域。
範例:us-west-2
AWS_IOT_CA_CERT
是
透過 建立對後端服務的信任的 CA 憑證檔案路徑TLS。
範例:
/
file
/path
/to
/AmazonRootCA1.pemAWS_IOT_CORE_CERT
是
X.509 憑證的檔案路徑。
範例:
/
file
/path
/to
/certificateID-certificate
.pem.crtAWS_IOT_CORE_CREDENTIAL_ENDPOINT
是
AWS 您帳戶的AWS IoT Core 憑證端點提供者端點。
範例:
credential-account-specific-prefix
.credentials.iot.aws-region
.amazonaws.com.rproxy.goskope.comAWS_IOT_CORE_DATA_ATS_ENDPOINT
是
您 AWS 帳戶AWS IoT Core 的資料平面端點。
範例:
data-account-specific-prefix
.iot.aws-region
.amazonaws.com.rproxy.goskope.comAWS_IOT_CORE_PRIVATE_KEY
是
公有/私有金鑰對中使用的私有金鑰檔案路徑。如需詳細資訊,請參閱 中的金鑰管理 AWS IoT。
範例:
/
file
/path
/to
/certificateID-private
.pem.keyAWS_IOT_CORE_ROLE_ALIAS
是
連線到 時, AWS IAM指向要使用之角色的角色別名名稱 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 輸出的層級。
接受的值:
-
OFF
-
ALL
-
FATAL
-
ERROR
-
WARN
-
INFO,預設,如果未提供
-
DEBUG
-
TRACE
範例:
INFO
AWS_KVS_EDGE_LOG_MAX_FILE_SIZE
否
一旦日誌檔案達到此大小,就會發生輪換。
-
最小值:0
-
最大值:10000
-
預設:20,如果未提供
-
單位:MB (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 -
-
清除GStreamer快取。類型:
rm ~/.cache/gstreamer-1.0/registry.
your-os-architecture
.bin如需詳細資訊,請參閱 GStreamer 登錄檔文件
。 -
準備並執行 java 命令。Amazon Kinesis Video Streams Edge Agent 接受下列引數:
Java 屬性名稱 必要 描述 java.library.path
否
檔案路徑指向包含
gstkvssink
和IngestorPipelineJNI
相依程式庫的資料夾。如果未提供,Amazon Kinesis Video Streams Edge 代理程式將在目前的目錄中搜尋它們。重要
如果找不到這些檔案,Amazon Kinesis Video Streams Edge Agent 將無法正常運作。
範例:
/
file
/path
/若要設定這些命令,請
-D
新增至用來執行 jar 的 java 命令。java-property-name
=value
例如:
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
-
使用 將組態傳送至應用程式 AWS CLI。
-
建立新的檔案
。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 } } } -
若要將檔案傳送至 Amazon Kinesis Video Streams Edge Agent,請在 中輸入下列內容 AWS CLI:
aws kinesisvideo start-edge-configuration-update --cli-input-json "file://
example-edge-configuration
.json"
-
-
針對 Amazon Kinesis Video Streams Edge Agent 的每個串流重複上述步驟。