正在設定AWS IoT Greengrass核心裝置 - AWS IoT Greengrass

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

正在設定AWS IoT Greengrass核心裝置

完成本節中的工作以安裝、設定和執行AWS IoT Greengrass核心軟體。

注意

本節說明的進階安裝與組態AWS IoT Greengrass核心軟體。如果您是第一次使用AWS IoT Greengrass V2,我們建議您先完成入門教學設置核心設備並探索以下功能:AWS IoT Greengrass。

支援平台和需求

在開始之前,請確定您符合下列需求,才能安裝並執行AWS IoT Greengrass核心軟體。

提示

您可以搜尋符合資格的裝置AWS IoT Greengrass V2在AWS合作夥伴裝置目

支援的平台

AWS IoT Greengrass正式支持運行以下平台的設備。具有未包含在此列表中的平台的設備可能可以使用,但是AWS IoT Greengrass僅在這些指定的平台上進行測試。

Linux

架構:

  • Armv7l

  • Armv8 (AArch64)

  • x86_64

Windows

架構:

  • x86_64

版本:

  • Windows 10

  • 視窗 11

  • Windows Server 2019

  • Windows Server 2022

注意

一些AWS IoT GreengrassWindows 裝置目前不支援功能。如需詳細資訊,請參閱 通過操作系統的 Greengrass 功能兼容性視窗裝置的功能注意事項

Linux 平台也可以運行AWS IoT Greengrass V2在碼頭容器中。如需詳細資訊,請參閱在 Docker 容器中執行AWS IoT Greengrass核心軟體

若要建置自訂 Linux 作業系統,您可以使用BitBake食譜AWS IoT Greengrass V2在meta-aws項目。該meta-aws項目提供了您可以用來構建的食譜AWS邊緣軟體功能嵌入式使用建置的系統OpenEmbedded和 Yocto 項目構建框架。該YOCTO 項目這是一個開放原始碼協同合作專案,可協助您為嵌入式應用程式建置自訂 Linux 系統,不論硬體架構為何。該BitBake食譜AWS IoT Greengrass V2安裝、設定並自動執行AWS IoT Greengrass裝置上的核心軟體。

裝置要求

裝置必須符合下列需求才能安裝並執行AWS IoT Greengrass核心軟體 v2.x 版

注意

您可以使用AWS IoT Device Tester為了AWS IoT Greengrass以驗證您的設備是否可以運行AWS IoT Greengrass核心軟件並與之溝通AWS 雲端。如需詳細資訊,請參閱AWS IoT Device Tester對於AWS IoT Greengrass V2 使用

Linux
  • 使用一個AWS 區域支持AWS IoT Greengrass V2。如需支援的區域清單,請參閱AWS IoT Greengrass V2端點和配額AWS 一般參考

  • 至少 256 MB 的可用磁碟空間AWS IoT Greengrass核心軟體。此需求不包括部署至核心裝置的元件。

  • 最少配置給 96 MB 記憶體AWS IoT Greengrass核心軟體。此需求不包括核心裝置上執行的元件。如需詳細資訊,請參閱使用 JVM 選項控制內存分配

  • Java 執行階段環境 (JRE) 版本 8 或更高版本。Java 必須在路徑設備上的環境變量。若要使用 Java 開發自訂元件,您必須安裝 Java 開發套件 (JDK)。我們建議您使用亞馬遜科雷托 11或者开发 JDK

  • GNU C 函式庫版本 2.25 或更高版本。

  • 您必須執行AWS IoT Greengrass核心軟件作為 root 用戶。使用sudo,例如。

  • 執行AWS IoT Greengrass核心軟體,例如root,必須具有執行權限sudo與任何用戶和任何組。該/etc/sudoers文件必須授予該用戶運行的權限sudo作為其他團體。中使用者的權限/etc/sudoers應該看起來像下面的例子。

    root ALL=(ALL:ALL) ALL
  • 核心裝置必須能夠對一組端點和連接埠執行輸出要求。如需詳細資訊,請參閱允許裝置流量透過 Proxy 或防火牆

  • /tmp目錄必須使用exec權限。

  • 下列所有命令介面命令:

    • ps -ax -o pid,ppid

    • sudo

    • sh

    • kill

    • cp

    • chmod

    • rm

    • ln

    • echo

    • exit

    • id

    • uname

    • grep

  • 您的設備可能還需要以下可選的 shell 命令:

    • (選擇性)systemctl。此指令用於設定AWS IoT Greengrass核心軟體即系統服務。

    • (選擇性)useradd,groupadd,以及usermod。這些命令用於設置ggc_user系統使用者和ggc_group系統群組。

    • (選擇性)mkfifo。這個命令是用來運行 Lambda 函數作為組件。

  • 若要設定元件程序的系統資源限制,您的裝置必須執行 Linux 核心 2.6.24 版或更新版本。

  • 若要執行 Lambda 函數,您的裝置必須符合其他需求。如需詳細資訊,請參閱拉姆達函數要求

Windows
  • 使用一個AWS 區域支持AWS IoT Greengrass V2。如需支援的區域清單,請參閱AWS IoT Greengrass V2端點和配額AWS 一般參考

  • 至少 256 MB 的可用磁碟空間AWS IoT Greengrass核心軟體。此需求不包括部署至核心裝置的元件。

  • 最少 160 MB 記憶體配置給AWS IoT Greengrass核心軟體。此需求不包括核心裝置上執行的元件。如需詳細資訊,請參閱使用 JVM 選項控制內存分配

  • Java 執行階段環境 (JRE) 版本 8 或更高版本。Java 必須在路徑設備上的系統變數。若要使用 Java 開發自訂元件,您必須安裝 Java 開發套件 (JDK)。我們推薦亞馬遜科雷托 11或者开发 JDK

    注意

    若要使用的版本 2.5.0格林格拉斯核,您必須使用 64 位元版本的 Java 執行階段環境 (JRE)。格林格拉斯核 2.5.1 版本支持 32 位和 64 位元的 JRE。

  • 安裝AWS IoT Greengrass核心軟體必須是系統管理員。

  • 您必須安裝AWS IoT Greengrass核心軟體即系統服務。指定--setup-system-service true當您安裝軟體時。

  • 每個執行元件程序的使用者都必須存在於LocalSystem帳戶,而且使用者的名稱和密碼必須位於認證管理員執行個體中LocalSystem帳戶。您可以依照指示設定此使用者安裝AWS IoT Greengrass核心軟體

  • 核心裝置必須能夠對一組端點和連接埠執行輸出要求。如需詳細資訊,請參閱允許裝置流量透過 Proxy 或防火牆

拉姆達函數要求

您的裝置必須符合下列需求才能執行 Lambda 函數:

  • 以 Linux 為基礎的作業系統。

  • 您的設備必須具有mkfifo外殼命令。

  • 您的裝置必須執行 Lambda 函數所需的程式設計語言程式庫。您必須在設備上安裝所需的庫,並將其添加到PATH環境變數。格雷格拉斯支持所有支持的 Python,Node.js 和 Java 運行時的版本。Greengrass 不會對已淘汰的 Lambda 執行階段版本套用任何其他限制。有關更多信息AWS IoT Greengrass對 Lambda 執行階段的支援,請參閱執行AWS Lambda功能

  • 若要執行容器化 Lambda 函數,您的裝置必須符合下列需求:

    • Linux 核心版本 4.4 或更新版本。

    • 核心必須支援C 組v1,並且您必須啟用並掛載下列 cgroup:

      • 記憶體C 群組AWS IoT Greengrass以設定容器化 Lambda 函數的記憶體限制。

      • 裝置cgroup 用於容器化 Lambda 函數,以存取系統裝置或磁碟區。

      該AWS IoT Greengrass核心軟體不支援 cgroup v2。

      若要符合此需求,請使用下列 Linux 核心參數啟動裝置。

      cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
      提示

      在樹莓派上,編輯/boot/cmdline.txt用於設置設備內核參數的文件。

    • 您必須在設備上啟用以下 Linux 內核配置:

      • 命名空間:

        • CONFIG_IPC_NS

        • CONFIG_UTS_NS

        • CONFIG_USER_NS

        • CONFIG_PID_NS

      • Cgroups:

        • CONFIG_CGROUP_DEVICE

        • CONFIG_CGROUPS

        • CONFIG_MEMCG

      • 其他:

        • CONFIG_POSIX_MQUEUE

        • CONFIG_OVERLAY_FS

        • CONFIG_HAVE_ARCH_SECCOMP_FILTER

        • CONFIG_SECCOMP_FILTER

        • CONFIG_KEYS

        • CONFIG_SECCOMP

        • CONFIG_SHMEM

      提示

      請查看您 Linux 發行版的文件,以瞭解如何驗證和設定 Linux 核心參數。您也可以使用AWS IoT Device Tester為了AWS IoT Greengrass確認您的裝置是否符合這些需求。如需詳細資訊,請參閱AWS IoT Device Tester對於AWS IoT Greengrass V2 使用

視窗裝置的功能注意事項

一些AWS IoT GreengrassWindows 裝置目前不支援功能。檢閱功能差異,以確認 Windows 裝置是否符合您的需求。如需詳細資訊,請參閱通過操作系統的 Greengrass 功能兼容性

設置一個AWS 帳戶

如果您還沒有 AWS 帳戶,請完成下列步驟建立新帳戶。

註冊 AWS 帳戶
  1. 開啟 https://portal.aws.amazon.com/billing/signup

  2. 請遵循線上指示進行。

    部分註冊程序需接收來電,並在電話鍵盤輸入驗證碼。

    註冊 AWS 帳戶 時,會建立 AWS 帳戶根使用者。根使用者有權存取該帳戶中的所有 AWS 服務 和資源。作為安全最佳實務,將管理存取權指派給管理使用者,並且僅使用根使用者來執行需要根使用者存取權的任務

若要建立管理員使用者,請選擇下列其中一個選項。

選擇一種管理管理員的方式 若要 By 您也可以
在 IAM Identity Center

(建議)

使用短期憑證存取 AWS。

這與安全性最佳實務一致。有關最佳實務的資訊,請參閱 IAM 使用者指南中的 IAM 安全最佳實務

請遵循 AWS IAM Identity Center 使用者指南入門中的說明。 請參閱 AWS Command Line Interface 使用者指南中的設定 AWS CLI 以使用 AWS IAM Identity Center 設定程式設計存取。
在 IAM 中

(不建議使用)

使用長期憑證存取 AWS。 請遵循 IAM 使用者指南建立您的第一個 IAM 管理員使用者和使用者群組的說明。 請參閱 IAM 使用者指南中的管理 IAM 使用者的存取金鑰,設定程式設計存取。