步驟 10:(選用) 以原生程序執行 Amazon Kinesis Video Streams 邊緣代理程式 - Amazon Kinesis Video Streams

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

步驟 10:(選用) 以原生程序執行 Amazon Kinesis Video Streams 邊緣代理程式

將 Amazon Kinesis Video Streams 邊緣代理程式設定為系統服務。

systemd是 Linux 設備上的系統和服務管理器。 systemd這是管理程序的建議方式,因為如果應用程式發生錯誤或執行應用程式的裝置中斷電力,它會重新啟動 Amazon Kinesis Video Streams Edge 代理程式。

請執行下列操作:

以原生程序的形式執行 Amazon Kinesis Video Streams 邊緣代理程式
  1. 在中建立新檔案/etc/systemd/system並命名aws.kinesisvideo.edge-runtime-agent.service

    粘貼以下內容:

    [Unit] Description=AWS Kinesis Video Streams edge agent After=network.target StartLimitBurst=3 StartLimitInterval=30 [Service] Type=simple Restart=on-failure RestartSec=10 WorkingDirectory=/download-location/kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion Environment="GST_PLUGIN_PATH=/download-location/kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion" Environment="LD_LIBRARY_PATH=/download-location/kvs-edge-agent/KvsEdgeComponent/artifacts/aws.kinesisvideo.KvsEdgeComponent/EdgeAgentVersion/lib" ... Environment="AWS_IOT_CORE_DATA_ATS_ENDPOINT=data-account-specific-prefix.iot.aws-region.amazonaws.com" ExecStart=/usr/lib/jvm/java-11-amazon-corretto/bin/java --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 [Install] WantedBy=multi-user.target

    如需systemd服務組態檔接受之參數的詳細資訊,請參閱文件

    注意

    ...位置新增必要的環境變數,如中所指定步驟 8:建置並執行 Amazon Kinesis Video Streams 邊緣代理程式

  2. 重新載入服務檔案以包含新服務。

    輸入 sudo systemctl daemon-reload

  3. 啟動 服務。

    輸入 sudo systemctl start aws.kinesisvideo.edge-runtime-agent.service

  4. 檢查 Amazon Kinesis Video Streams 邊緣代理程式服務的狀態,以確認服務正在執行。

    輸入 sudo systemctl status aws.kinesisvideo.edge-runtime-agent.service

    以下是您將看到的輸出範例。

    aws.kinesisvideo.edge-runtime-agent.service - AWS Kinesis Video Streams edge agent Loaded: loaded (/etc/systemd/system/aws.kinesisvideo.edge-runtime-agent.service; disabled; vendor preset: enabled) Active: active (running) since Thu 2023-06-08 19:15:02 UTC; 6s ago Main PID: 506483 (java) Tasks: 23 (limit: 9518) Memory: 77.5M CPU: 4.214s CGroup: /system.slice/aws.kinesisvideo.edge-runtime-agent.service └─506483 /usr/lib/jvm/java-11-amazon-corretto/bin/java -cp kvs-edge-agent.jar:libs.jar com.amazonaws.kinesisvideo.edge.controller.ControllerApp
  5. 檢查日誌是否有任何錯誤。

    輸入 journalctl -e -u aws.kinesisvideo.edge-runtime-agent.service

  6. 輸入要使systemctl --help用的管理流程的完整選項清單systemctl

    以下是管理 Amazon Kinesis Video Streams 邊緣代理程式的一些常用命令:

    • 若要重新啟動,請鍵入sudo systemctl restart aws.kinesisvideo.edge-runtime-agent.service

    • 若要停止,請鍵入sudo systemctl stop aws.kinesisvideo.edge-runtime-agent.service

    • 要在每次設備重新啟動時自動啟動,請鍵入sudo systemctl enable aws.kinesisvideo.edge-runtime-agent.service