下載並設定 Edge Manager - Amazon SageMaker

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

下載並設定 Edge Manager

Edge Manager 代理程式是 Edge 裝置的推論引擎。使用代理程式對載入 Edge 裝置的模型進行預測。代理程式也會收集模型指標,並以特定間隔擷取資料。

在本節中,您將使用代理程式設定您的裝置。若要這麼做,請先將發行成品複製並從本機發行儲存貯體簽署根憑證到您的機器。解壓縮版本成品後,將其上傳至 Amazon S3。接下來,定義並儲存代理程式的組態檔。提供了一個範本供您複製並貼上。最後,將發行成品,組態檔案和憑證複製到您的裝置。

  1. 下載 SageMaker Edge Manager 代理程式。

    代理程式會以二進位格式發行,以支援作業系統。此範例會在使用 Linux 作業系統且具有ARM64架構的 Jetson Nano 上執行推論。如需支援裝置使用的作業系統和架構有哪些的詳細資訊,請參閱支援的裝置、晶片架構和系統

    從 us-west-2 區域中的 SageMaker Edge Manager 發行儲存貯體擷取最新版本的二進位檔案。

    !aws s3 ls s3://sagemaker-edge-release-store-us-west-2-linux-armv8/Releases/ | sort -r

    這將傳回按其版本排序的發行成品。

    PRE 1.20210512.96da6cc/ PRE 1.20210305.a4bc999/ PRE 1.20201218.81f481f/ PRE 1.20201207.02d0e97/

    版本採用下列格式:<MAJOR_VERSION>.<YYYY-MM-DD>.<SHA-7>。它由三個元件組成:

    • <MAJOR_VERSION>:發行版本。目前設定給 1 的發行版本。

    • <YYYY-MM-DD>:成品發行的時間戳記。

    • <SHA-7>:建立版本所使用的儲存庫遞交 ID。

    在本機或直接將壓縮TAR檔案複製到您的裝置。下列範例示範如何在此文件發行時複製最新版本的成品。

    !aws s3 cp s3://sagemaker-edge-release-store-us-west-2-linux-x64/Releases/1.20201218.81f481f/1.20201218.81f481f.tgz ./

    取得成品後,請解壓縮壓縮TAR的檔案。下列 會解壓縮 TAR 檔案,並將其存放在名為 的目錄中agent_demo

    !mkdir agent_demo !tar -xvzf 1.20201218.81f481f.tgz -C ./agent_demo

    將代理程式版本成品上傳至您的 Amazon S3 儲存貯體。下列程式碼範例會複製 agent_demo 內的內容,並將其上傳到 Amazon S3 儲存貯體內名為 agent_demo 的目錄:

    !aws s3 cp --recursive ./agent_demo s3://{bucket}/agent_demo

    您還需要來自發行儲存貯體的簽署根憑證:

    !aws s3 cp s3://sagemaker-edge-release-store-us-west-2-linux-x64/Certificates/us-west-2/us-west-2.pem ./

    將簽署的根憑證上傳至您的 Amazon S3 儲存貯體:

    !aws s3 cp us-west-2.pem s3://{bucket}/authorization-files/
  2. 定義 SageMaker Edge Manager 代理程式組態檔案。

    首先,定義代理程式組態檔案,如下所示:

    sagemaker_edge_config = { "sagemaker_edge_core_device_name": "device_name", "sagemaker_edge_core_device_fleet_name": "device_fleet_name", "sagemaker_edge_core_capture_data_buffer_size": 30, "sagemaker_edge_core_capture_data_push_period_seconds": 4, "sagemaker_edge_core_folder_prefix": "demo_capture", "sagemaker_edge_core_region": "us-west-2", "sagemaker_edge_core_root_certs_path": "/agent_demo/certificates", "sagemaker_edge_provider_aws_ca_cert_file": "/agent_demo/iot-credentials/AmazonRootCA1.pem", "sagemaker_edge_provider_aws_cert_file": "/agent_demo/iot-credentials/device.pem.crt", "sagemaker_edge_provider_aws_cert_pk_file": "/agent_demo/iot-credentials/private.pem.key", "sagemaker_edge_provider_aws_iot_cred_endpoint": "endpoint", "sagemaker_edge_provider_provider": "Aws", "sagemaker_edge_provider_s3_bucket_name": bucket, "sagemaker_edge_core_capture_data_destination": "Cloud" }

    取代以下項目:

    • "device_name" 使用您的裝置名稱 (此字串儲存在前一步名為 device_name 的變量中)。

    • "device_fleet_name" 使用您的裝置機群 (此字串儲存在前一步名為 device_fleet_name 的變量中)

    • "endpoint" 與憑證提供者 AWS 的帳戶特定端點 (此字串存放在名為 的變數的先前步驟中endpoint)。

    接下來,將其儲存為JSON檔案:

    edge_config_file = open("sagemaker_edge_config.json", "w") json.dump(sagemaker_edge_config, edge_config_file, indent = 6) edge_config_file.close()

    將組態檔案上傳至 Amazon S3 中的儲存貯體:

    !aws s3 cp sagemaker_edge_config.json s3://{bucket}/
  3. 將發行成品,組態檔案和憑證複製到您的裝置。

    在 Edge 裝置本身上執行以下指示。

    注意

    您必須先在 AWS CLI 邊緣裝置上安裝 Python AWS SDK for Python (Boto3)、 和 。

    在您的裝置上開啟終端機。建立資料夾以儲存發行成品、您的憑證和組態檔案。

    mkdir agent_demo cd agent_demo

    將您儲存在 Amazon S3 儲存貯體的發行成品內容複製到您的裝置:

    # Copy release artifacts aws s3 cp s3://<bucket-name>/agent_demo/ ./ --recursive

    (發行成品的內容儲存在上一步名為 agent_demo 的目錄中)。分別使用 Amazon S3 儲存貯體的名稱和發行成品的檔案路徑來取代 <bucket-name>agent_demo

    前往 /bin 目錄並使二進位文件成為可執行檔:

    cd bin chmod +x sagemaker_edge_agent_binary chmod +x sagemaker_edge_agent_client_example cd agent_demo

    建立目錄來存放您的 AWS IoT 憑證,並將您的憑證從 Amazon S3 儲存貯體複製到您的邊緣裝置 (使用您在變數 中定義的相同 bucket

    mkdir iot-credentials cd iot-credentials aws s3 cp s3://<bucket-name>/authorization-files/AmazonRootCA1.pem ./ aws s3 cp s3://<bucket-name>/authorization-files/device.pem.crt ./ aws s3 cp s3://<bucket-name>/authorization-files/private.pem.key ./ cd ../

    建立一個目錄來儲存您的模型簽署根憑證:

    mkdir certificates cd certificates aws s3 cp s3://<bucket-name>/authorization-files/us-west-2.pem ./ cd agent_demo

    將組態檔案複製到您的裝置:

    #Download config file from S3 aws s3 cp s3://<bucket-name>/sagemaker_edge_config.json ./ cd agent_demo

    您在 Edge 裝置上的 agent_demo 目錄看起來與下列項目相似:

    ├──agent_demo | ├── bin | ├── sagemaker_edge_agent_binary | └── sagemaker_edge_agent_client_example | ├── sagemaker_edge_config.json | ├── certificates | └──us-west-2.pem | ├── iot-credentials | ├── AmazonRootCA1.pem | ├── device.pem.crt | └── private.pem.key | ├── docs | ├── api | └── examples | ├── ATTRIBUTIONS.txt | ├── LICENSE.txt | └── RELEASE_NOTES.md