容器化筆記本 - AWS IoT Analytics

AWS IoT Analytics 不再提供給新客戶。的現有客戶 AWS IoT Analytics 可以繼續正常使用服務。進一步了解

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

容器化筆記本

本節包含如何使用 Jupyter 筆記本建置 Docker 容器的相關資訊。如果您重複使用第三方建置的筆記本,有安全風險:包含的容器可以使用您的使用者許可來執行任意程式碼。此外,筆記本產生的 HTML 可以顯示在 AWS IoT Analytics 主控台中,在顯示 HTML 的電腦上提供潛在的攻擊向量。在使用任何第三方筆記本之前,請確定您信任其撰寫者。

執行進階分析功能的一個選項是使用 Jupyter 筆記本。Jupyter Notebook 提供強大的資料科學工具,可執行機器學習和一系列統計分析。如需詳細資訊,請參閱筆記本範本。(請注意,我們目前不支援 JupyterLab 內的容器化。) 您可以將 Jupyter Notebook 和程式庫封裝到容器,該容器會在您定義的差異時段 AWS IoT Analytics 內收到新批次的資料時,定期執行。您可以排程使用容器的分析任務,以及在指定時段內擷取的新分段資料,然後存放任務的輸出以供未來排程的分析。

如果您在 2018 年 8 月 23 日之後使用 AWS IoT Analytics 主控台建立 SageMaker AI 執行個體,則容器化擴充功能的安裝已自動為您完成,您可以開始建立容器化映像。否則,請遵循本節中列出的步驟,在 SageMaker AI 執行個體上啟用筆記本容器化。接下來,您將修改 SageMaker AI 執行角色,以允許您將容器映像上傳至 Amazon EC2,並安裝容器化延伸。

啟用非透過 AWS IoT Analytics 主控台建立之筆記本執行個體的容器化

我們建議您透過 AWS IoT Analytics 主控台建立新的 SageMaker AI 執行個體,而不是遵循這些步驟。新的執行個體自動支援容器化。

如果您在啟用容器化後重新啟動 SageMaker AI 執行個體,如下所示,則不需要重新新增 IAM 角色和政策,但必須重新安裝延伸模組,如最終步驟所示。

  1. 若要授予筆記本執行個體對 Amazon ECS 的存取權,請在 SageMaker AI 頁面上選取您的 SageMaker AI 執行個體:

    將筆記本容器化 AWS IoT Analytics。
  2. IAM 角色 ARN 下,選擇 SageMaker AI 執行角色。

    將筆記本容器化 AWS IoT Analytics。
  3. 選擇 Attach Policy (連接政策),然後定義並連接 Permissions (許可)中所顯示的政策。如果尚未連接AmazonSageMakerFullAccess政策,也請連接它。

    將筆記本容器化 AWS IoT Analytics。

您還必須從 Amazon S3 下載容器化程式碼,並將其安裝在筆記本執行個體上,第一個步驟是存取 SageMaker AI 執行個體的終端機。

  1. 在 Jupyter 中,選擇新增

    將筆記本容器化 AWS IoT Analytics。
  2. 在出現的功能表中,選擇終端機

    將筆記本容器化 AWS IoT Analytics。
  3. 在終端機內,輸入以下命令來下載程式碼,將其解壓縮並進行安裝。請注意,這些命令會刪除您筆記本在此 SageMaker AI 執行個體上執行的任何程序。

    將筆記本容器化 AWS IoT Analytics。
    cd /tmp aws s3 cp s3://iotanalytics-notebook-containers/iota_notebook_containers.zip /tmp unzip iota_notebook_containers.zip cd iota_notebook_containers chmod u+x install.sh ./install.sh

    等待一兩分鐘以進行驗證和安裝延伸。

更新您的筆記本容器化擴充功能

如果您在 2018 年 8 月 23 日之後透過 AWS IoT Analytics 主控台建立 SageMaker AI 執行個體,則容器化擴充功能會自動安裝。您可以從 SageMaker AI Console 重新啟動執行個體來更新延伸模組。如果您手動安裝擴充功能,則可以重新執行在啟用未透過 AWS IoT Analytics 主控台建立的筆記本執行個體容器化中列出的終端機命令來更新擴充功能。

建立容器化映像

在本章節中,我們示範容器化 筆記本所需的步驟。若要開始,請移至您的 Jupyter 筆記本,使用容器化核心建立筆記本。

  1. 在您的 Jupyter 筆記本中,選擇 New (新增),然後從下拉式清單選擇您想要的核心類型。(核心類型應以「容器化」開頭,並以您原本選擇的任何核心結尾。 例如,如果您只想要純 Python 3.0 環境,例如 "conda_python3",請選擇 "Containerized conda_python3")。

    在 中更新您的筆記本容器化擴充功能 AWS IoT Analytics。
  2. 在您完成筆記本上的工作並想要將其容器化後,請選擇容器化

    在 中更新您的筆記本容器化擴充功能 AWS IoT Analytics。
  3. 輸入容器化筆記本的名稱。您也可以選擇輸入描述。

    在 中更新您的筆記本容器化擴充功能 AWS IoT Analytics。
  4. 指定您的筆記本應叫用的 Input Variables (輸入變數) (參數)。您可以選擇自動從您的筆記本偵測到的輸入變數,或定義自訂變數。(請注意,如果您有之前已執行的筆記本,則只會偵測到輸入變數)。對於每個輸入變數選擇類型。您也可以輸入輸入變數的選用描述。

    在 中更新您的筆記本容器化擴充功能 AWS IoT Analytics。
  5. 選擇應上傳從筆記本建立之映像的 Amazon ECR 儲存庫。

    在 中更新您的筆記本容器化擴充功能 AWS IoT Analytics。
  6. 選擇容器化以開始程序。

    您會看到摘要您輸入的概觀。請注意,在您開始程序之後,就無法取消它。程序最長可能持續一小時。

    在 中更新您的筆記本容器化擴充功能 AWS IoT Analytics。
  7. 下一頁顯示進度。

    在 中更新您的筆記本容器化擴充功能 AWS IoT Analytics。
  8. 如果您不小心關閉瀏覽器,您可以從 主控台的 AWS IoT Analytics 筆記本區段監控容器化程序的狀態。

  9. 程序完成後,容器化映像會存放在 Amazon ECR 上以供使用。

    在 中更新您的筆記本容器化擴充功能 AWS IoT Analytics。