設定其他裝置 - AWS IoT Greengrass

AWS IoT Greengrass Version 1 於 2023 年 6 月 30 日進入延長使用壽命階段。如需詳細資訊,請參閱AWS IoT Greengrass V1 維護政策。在此日期之後, AWS IoT Greengrass V1 將不會發行提供功能、增強功能、錯誤修正或安全性修補程式的更新。在上運行的設備 AWS IoT Greengrass V1 不會中斷,並將繼續運行並連接到雲。我們強烈建議您移轉至 AWS IoT Greengrass Version 2,這會增加重要的新功能,並支援其他平台

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

設定其他裝置

請依照本主題中的步驟將 Raspberry Pi 以外的裝置設定為您的AWS IoT Greengrass核心。

提示

或者,如要使用能為您設定環境及安裝 AWS IoT Greengrass 核心軟體的指令碼,請參閱 快速入門:Greengrass 裝置安裝

如果您是初次使用AWS IoT Greengrass,我們建議您使用 Raspberry Pi 或 Amazon EC2 實體做為您的核心裝置,並依照設定步驟適用於您的設備。

如果您計劃使用 Yocto 專案建置自訂基於 Linux 的系統,則請您可以使用AWS IoT Greengrass比特烤食譜從meta-aws專案。這個配方還可以幫助您開發一個軟件平台,支持AWS用於嵌入式應用的邊緣軟件。Bitbake 版本會安裝、配置並自動運行AWS IoT Greengrass核心軟體在您的裝置上。

Yocto 專案

一個開源協作項目,可幫助您為嵌入式應用程序構建基於 Linux 的自定義系統,無論硬件架構如何。如需詳細資訊,請參閲 。Yocto 專案

meta-aws

同時AWS管理項目,提供 Yocto 食譜。您可以使用食譜來開發AWS邊緣軟件在基於 Linux 的系統中使用打開嵌入式和 Yocto 項目. 如需此社區支援功能的詳細資訊,請參meta-awsGitHub。

meta-aws-demos

同時AWS託管項目,其中包含meta-aws專案。如需整合流程的詳細資訊,請參meta-aws-demosGitHub。

若要使用不同的裝置或支援的平台,請遵循本主題中的步驟。

  1. 如果您的核心裝置是 NVIDIA Jetson 裝置,則請您必須先重新整理韌體與 JetPack 4.3 安裝程式。如果您是設定不同的裝置,請跳到步驟 2。

    注意

    所以此 JetPack 安裝程式版本是根據您的目標 CUDA 工具組版本而定。下列指示使用 JetPack 4.3 和 CUDA 工具組 10.0. 如需如何為裝置使用適合版本的相關資訊,請參閱 NVIDIA 文件中的如何安裝 Jetpack

    1. 在執行 Ubuntu 16.04 或更新版本的實體桌面上,使用 JetPack 4.3 安裝程序,如下載並安裝 JetPack(4.3)在 NVIDIA 文件中。

      依照安裝程式的指示在 Jetson 面板上安裝所有的套件和相依性,而 Jetson 面板必須使用 Micro-B 纜線連接到桌面。

    2. 在一般模式中重新啟動您的面板,並將顯示器連接到面板。

      注意

      當您使用 SSH 連線到 Jetson 面板時,請使用預設使用者名稱 (nvidia) 及預設密碼 (nvidia)。

  2. 執行以下命令建立使用者 ggc_user 和群組 ggc_group。您執行的命令可能不盡相同,取決於您核心裝置上安裝的分發。

    • 如果您的核心裝置執行 OpenWrt,請執行下列命令:

      opkg install shadow-useradd opkg install shadow-groupadd useradd --system ggc_user groupadd --system ggc_group
    • 否則,請執行下列命令:

      sudo adduser --system ggc_user sudo addgroup --system ggc_group
      注意

      如果在您系統中沒有可用的 addgroup 命令,請使用以下命令。

      sudo groupadd --system ggc_group
  3. 選用。安裝串流管理員需要的 Java 8 執行時間。本教學課程不會使用串流管理員,但是會使用預設啟用串流管理員的 Default Group creation (預設群組建立) 工作流程。部署群組之前,先使用下列命令在核心裝置上安裝 Java 8 執行時間,或停用串流管理員。單元 3 中提供了停用串流管理員的指示。

    • 針對 Debian 為基礎或 Ubuntu 為基礎的發行版本:

      sudo apt install openjdk-8-jdk
    • 針對 Red Hat 為基礎的發行版本:

      sudo yum install java-1.8.0-openjdk
  4. 要確保您具有所需的所有依賴 Greengrass 係,請從AWS IoT Greengrass範例存儲 GitHub。這些命令會解壓縮並執行相依性檢查程式指令碼。

    mkdir greengrass-dependency-checker-GGCv1.11.x cd greengrass-dependency-checker-GGCv1.11.x wget https://github.com/aws-samples/aws-greengrass-samples/raw/master/greengrass-dependency-checker-GGCv1.11.x.zip unzip greengrass-dependency-checker-GGCv1.11.x.zip cd greengrass-dependency-checker-GGCv1.11.x sudo ./check_ggc_dependencies | more
    注意

    check_ggc_dependencies 指令碼執行於支援 AWS IoT Greengrass 的平台,且需要特定的 Linux 系統命令。如需詳細資訊,請參閱相依性檢查程式的讀我檔案

  5. 依照相依性檢查程式輸出的指示,在您的裝置上安裝所有必要的相依性。對於遺失核心層級的相依性,您可能需要重新編譯您的核心。針對掛載 Linux 控制群組 (cgroups),您可以執行 cgroupfs-mount 指令碼。這可讓 AWS IoT Greengrass 設定適用於 Lambda 函數的記憶體限制。Croups 也需要執行AWS IoT Greengrass在默認的容器化模式。

    如果輸出沒有產生錯誤,AWS IoT Greengrass 應該可以成功地在您的裝置上執行。

    重要

    本教學需要 Python 3.7 執行時間來執行本機 Lambda 函數。啟用串流管理員時,串流管理員需要 Java 8 執行時間。如果 check_ggc_dependencies 指令碼產生了與這些遺漏執行時間事前準備有關的警告,請確認在您繼續前已安裝了這些項目。您可以忽略與其他遺漏選用執行時間事前準備有關的警告。

    針對 AWS IoT Greengrass 需求和相依性列表,請參閱支援平台和需求