什麼是 AWS IoT Greengrass? - AWS IoT Greengrass

若我們提供該指南英語版本的翻譯,在有任何牴觸的狀況下請以英文版本的指南為主。其透過機器翻譯提供翻譯。

什麼是 AWS IoT Greengrass?

AWS IoT Greengrass 是將雲端功能延伸至本機裝置的軟體。這能讓裝置收集與分析更接近資訊來源的資料、自主回應本機裝置,在本機網路上安全地互相通訊。本地設備還可以與 AWS IoT Core 並導出 IoT 數據到 AWS 雲。 AWS IoT Greengrass 開發人員可以使用 AWS Lambda 和預構建的功能 連接器 創建已部署到設備的無服務器應用程序,以便本地執行。

下圖顯示 AWS IoT Greengrass 的基本架構。

AWS IoT Greengrass 使客戶能夠建立 IoT 設備和應用程序邏輯。具體來說,AWS IoT Greengrass 提供在裝置上執行之應用程式邏輯的雲端型管理。本機部署的 Lambda 函數和連接器是由本機事件、來自雲端的訊息或其他來源觸發。

在 AWS IoT Greengrass 裝置中,在本機網路安全地進行通訊和與彼此交換訊息,且無須連接到雲端。AWS IoT Greengrass 提供可智慧型緩衝訊息的機發布/訂閱訊息管理員,如果當連結遺失時,可保留傳入雲端和傳出雲端的訊息。

AWS IoT Greengrass保護使用者資料:

  • 透過裝置的安全身分驗證和授權。

  • 在本機網路內安全的連線能力。

  • 本機裝置和雲端之間。

裝置安全登入資料在群組內作用,直到撤銷,即使當連接至雲端的連線中斷,裝置還可以繼續安全地在本機進行通訊。

AWS IoT Greengrass 提供安全、無線的 Lambda 功能更新。

AWS IoT Greengrass 包括:

  • 軟體分發

    • AWS IoT Greengrass 核心軟體

    • AWS IoT Greengrass Core SDK

  • 雲端服務

    • AWS IoT Greengrass API

  • 功能

    • Lambda 執行時間

    • 陰影實作

    • 訊息管理員

    • 群組管理

    • 探索服務

    • 無線更新代理程式

    • 串流管理員

    • 本機資源存取

    • 本機機器學習推論

    • 本機秘密管理員

    • 內建整合服務、通訊協定和軟體的連接器

AWS IoT Greengrass 核心軟體

AWS IoT Greengrass 核心軟體提供以下功能:

  • 連接器和 Lambda 函數的部署和本機執行操作。

  • 在本機處理資料串流並自動匯出至 AWS 雲端。

  • 使用受管訂閱時,裝置、連接器及 Lambda 函數之間在本機網路上的 MQTT 傳訊。

  • 使用受管訂閱時,AWS IoT 和裝置、連接器與 Lambda 函數之間的 MQTT 傳訊。

  • 使用裝置身份驗證和授權時,裝置與 AWS 雲端之間的安全連線。

  • 裝置的本機陰影同步。可將陰影設定為與 AWS 雲端同步。

  • 對本機裝置和磁碟區資源控制的存取。

  • 用於執行本機推論的雲端訓練機器學習模型部署。

  • 可讓裝置探索 Greengrass 核心裝置的自動 IP 地址偵測。

  • 新的或更新的群組組態的集中部署。下載組態資料之後,核心裝置會自動重新啟動。

  • 安全、無線 (OTA) 的使用者定義 Lambda 函數軟體更新。

  • 安全且經過加密的本機秘密儲存空間,且可藉由連接器和 Lambda 函數控制存取權。

AWS IoT Greengrass 核心 實例通過 AWS IoT Greengrass APIs 創建和更新 AWS IoT Greengrass 組定義存儲在雲中。

AWS IoT Greengrass 核心軟體版本

AWS IoT Greengrass 提供幾個安裝 AWS IoT Greengrass 核心軟體的選項,包括 tar.gz 下載檔案、快速啟動指令碼,以及支援 Debian 平台的 apt 安裝。如需更多詳細資訊,請參閱「安裝 AWS IoT Greengrass 核心軟體」。

以下標籤描述 AWS IoT Greengrass 核心軟體版本中的最新消息和變更項目。

GGC v1.11
1.11.0-當前版本

新功能:

  • Greengrass核心上的遙測代理收集本地遙測數據並將其發佈到 AWS 雲。要檢索遙測數據以供進一步處理,客戶可以創建 Amazon EventBridge 規則並訂閱目標。有關更多信息,請參閱 收集系統健康遙測數據自 AWS IoT Greengrass 核心 設備.

  • 本地HTTPAPI返回由啓動的本地工作進程的當前狀態的快照 AWS IoT Greengrass. 有關更多信息,請參閱 調用本地運行狀況檢查API.

  • 流管理器 自動將數據導出到 Amazon S3 和 AWS IoT SiteWise.

    流管理器參數 允許您更新現有流並暫停或恢復數據導出。

  • 支持運行Python3.8.x Lambda 功能。

  • 新的 ggDaemonPort 屬性 config.json 可以配置Greengrass核心IPC端口號。默認端口號爲8000。

    新的 systemComponentAuthTimeout 屬性 config.json 允許您配置Greengrass核心IPC身份驗證的超時時間。默認超時爲5000毫秒。

  • 增加最大數量 AWS IoT 設備數量 AWS IoT Greengrass 群組 200至2500。

    將每個組的最大訂閱數從1000增加到10000。

    如需詳細資訊,請參閱 AWS IoT Greengrass 端點和配額

錯誤修正與效能改進:

  • 一般優化,可降低Greengrass服務進程的內存利用率。

  • 新的運行時配置參數(mountAllBlockDevices)讓Greengrass在設置 OverlayFS。此功能解決了一個導致Greengrass部署失敗的問題,如果 /usr 不在 / 層級。

  • 修復了導致 AWS IoT Greengrass 核心 失敗,如果 /tmp 是符號鏈接。

  • 修復了讓Greengrass部署代理從 mlmodel_public 文件夾。

  • 一般效能改進與錯誤修正。

GGC v1.10
1.10.2間

錯誤修正與效能改進:

  • config.json 中新的 mqttOperationTimeout 屬性可讓您設定與 AWS IoT Core 的 MQTT 連線中發佈、訂閱和取消訂閱操作的逾時。

  • 一般效能改進與錯誤修正。

1.10.1

錯誤修正與效能改進:

  • 串流管理員對檔案資料損毀更有彈性。

  • 使用 Linux 核心 5.1 及更新版本,修正在裝置上造成 sysfs 掛載失敗的問題。

  • 一般效能改進與錯誤修正。

1.10.0

新功能:

  • 可通過硬件安全集成配置無線(OTA)更新 OpenSSL 1.1.

  • 一般效能改進與錯誤修正。

GGC v1.9
1.9.4

錯誤修正與效能改進:

  • 一般效能改進與錯誤修正。

1.9.3

新功能:

  • 支持Armv6l. AWS IoT Greengrass 核心軟件v1.9.3 or later 可安裝在Raspbian分佈的Arv6l架構上(例如,樹莓派零位設備)。

  • 帶有 ALPN 的連接埠 443 OTA 更新。對 MQTT 流量使用連接埠 443 的 Greengrass 核心現在支援無線 (OTA) 軟體更新。AWS IoT Greengrass 會使用應用程式層通訊協定網路 (ALPN) TLS 延伸來啟用這些連線。如需詳細資訊,請參閱 AWS IoT Greengrass 核心軟體的 OTA 更新連線至連接埠 443 或透過網路代理

錯誤修正與效能改進:

  • 已修正由 1.9.0 版引進,導致 Python 2.7 Lambda 函數無法傳送二進位承載給其他 Lambda 函數的錯誤。

  • 一般效能改進與錯誤修正。

1.9.2

新功能:

  • 支持 OpenWrt。 AWS IoT Greengrass 可在上安裝核心軟件v1.9.2或更高版本 OpenWrt 分佈與Armv8(Aarch64)和Armv7l架構。目前, OpenWrt 不支持ML推斷。

1.9.1

錯誤修正與效能改進:

  • 修正存在於 1.9.0 版,從 cloud 寫出,標題中包含萬用字元之訊息的錯誤。

1.9.0

新功能:

  • 支援 Python 3.7 和 Node.js 8.10 Lambda 執行時間。使用 Python 3.7 和 Node.js 8.10 執行時間的 Lambda 函數現在可以在 AWS IoT Greengrass 核心 上執行。(AWS IoT Greengrass 繼續支援 Python 2.7 和 Node.js 6.10 執行時間。)

  • 最佳化的 MQTT 連線。Greengrass 核心建立更少與 AWS IoT Core 的連線。這個變更可對根據連線數目的費用降低操作成本。

  • 本機 MQTT 伺服器的 Elliptic Curve (EC) 金鑰。除了 RSA 金鑰之外,本機 MQTT 伺服器還支援 EC 金鑰。(MQTT服務器證書具有SHA-256RSA簽名,無論密鑰類型如何。)有關更多信息,請參閱 AWS IoT Greengrass 核心安全性主體.

錯誤修正與效能改進:

  • 一般效能改進與錯誤修正。

Deprecated versions
1.8.4

已修正陰影同步和裝置憑證管理員重新連線的問題。

一般效能改進與錯誤修正。

1.8.3

一般效能改進與錯誤修正。

1.8.2

一般效能改進與錯誤修正。

1.8.1

一般效能改進與錯誤修正。

1.8.0

新功能:

  • 群組中 Lambda 函數的可設定預設存取身分。這項群組層級設定會決定用於執行 Lambda 函數的預設許可。您可以設定使用者 ID、群組 ID 或兩者。個別的 Lambda 函數可以覆寫其群組的預設存取身分。如需更多詳細資訊,請參閱「在群組中設定 Lambda 函數的預設存取身分」。

  • 透過連接埠 443 的 HTTPS 流量。HTTPS 通訊可設定為透過連接埠 443 傳送,而非預設的連接埠 8443。這可補強針對應用程式層通訊協定網路 (ALPN) TLS 延伸的 AWS IoT Greengrass 支援,並允許所有 Greengrass 訊息流量 (包括 MQTT 和 HTTPS 兩者) 使用連接埠 443。如需更多詳細資訊,請參閱「連線至連接埠 443 或透過網路代理」。

  • 可預測的命名客戶 IDs 爲 AWS IoT 連接。此變更可支援 AWS IoT Device Defender 和 AWS IoT 生命週期事件,因此您會收到連線、中斷連線、訂閱和取消訂閱事件的通知。可預測的命名也使圍繞連接創建邏輯變得更容易 IDs (例如,創建 訂閱策略 基於證書屬性的模板)。如需更多詳細資訊,請參閱「客戶 IDs 用於MQTT連接 AWS IoT」。

錯誤修正與效能改進:

  • 已修正陰影同步和裝置憑證管理員重新連線的問題。

  • 一般效能改進與錯誤修正。

1.7.1

新功能:

  • Greengrass 連接器可提供與本機基礎設施、裝置通訊協定、AWS 和其他雲端服務的內建整合。如需更多詳細資訊,請參閱「使用 Greengrass 連接器來整合服務和通訊協定」。

  • AWS IoT Greengrass 可將 AWS Secrets Manager 擴展到核心裝置,這讓您的密碼、字符和其他秘密可供連接器和 Lambda 函數使用。私密是在傳輸和靜態時加密。如需更多詳細資訊,請參閱「將私密部署至 AWS IoT Greengrass 核心」。

  • 支援信任安全選項的硬體根。如需更多詳細資訊,請參閱「硬體安全整合」。

  • 隔離和許可設定,其可讓 Lambda 函數在沒有 Greengrass 容器的情況下執行,並使用所指定使用者和群組的許可。如需更多詳細資訊,請參閱「使用群組特定組態控制 Greengrass Lambda 函數執行」。

  • 您可以運行 AWS IoT Greengrass 在Docker容器中(在Windows上, macOS、或Linux),方法是將Greengrass組配置爲在無容器化的情況下運行。如需更多詳細資訊,請參閱「在 Docker 容器中執行 AWS IoT Greengrass」。

  • 運用應用程式層通訊協定交涉 (ALPN) 或透過網路代理的連線,在連接埠 443 上使用 MQTT 簡訊。如需更多詳細資訊,請參閱「連線至連接埠 443 或透過網路代理」。

  • SageMaker Neo 深度學習執行時間,其支援已經過 SageMaker Neo 深度學習編譯器最佳化的機器學習模型。如需 Neo 深度學習執行時間的資訊,請參閱 適用於 ML 推論的執行時間和程式庫

  • 支援 Raspberry Pi 核心裝置上的 Raspbian Stretch (2018-06-27)。

錯誤修正與效能改進:

  • 一般效能改進與錯誤修正。

此外,這個版本還提供以下功能:

  • AWS IoT Device Tester for AWS IoT Greengrass,您可以使用它來確認您的 CPU 架構、核心組態和驅動程式是否適合 AWS IoT Greengrass。如需更多詳細資訊,請參閱「使用 AWS IoT Device Tester for AWS IoT Greengrass」。

  • AWS IoT Greengrass 核心軟體、AWS IoT Greengrass Core SDK 和 AWS IoT Greengrass Machine Learning 軟體開發套件 套件可透過 Amazon CloudFront 下載。如需更多詳細資訊,請參閱「AWS IoT Greengrass 下載」。

1.6.1

新功能:

  • Lambda 可執行檔 在 Greengrass 核心執行二進位程式碼。在 C 和 C++使用新 適用於 C 的 AWS IoT Greengrass Core 開發套件 撰寫 Lambda 可執行檔。如需更多詳細資訊,請參閱「Lambda 可執行檔」。

  • 選用本機儲存訊息快取可以在重新啟動持續。您可以設定佇列待處理的 MQTT 訊息之儲存設定。如需更多詳細資訊,請參閱「雲端目標的 MQTT 訊息佇列」。

  • 當核心中斷連線時,可設定重新連線重試時間間隔的最大值。如需詳細資訊,請參閱 AWS IoT Greengrass 核心組態檔案 中的 mqttMaxConnectionRetryInterval 屬性。

  • 本機資源存取 host/proc 目錄。如需更多詳細資訊,請參閱「使用 Lambda 函數和連接器存取本機資源」。

  • 可設定的寫入目錄。AWS IoT Greengrass 核心軟體可以部署到唯讀和讀寫的位置。如需更多詳細資訊,請參閱「設定 AWS IoT Greengrass 的寫入目錄」。

錯誤修正與效能改進:

  • 在 Greengrass 核心中以及裝置與核心間執行發佈訊息的改善。

  • 減少處理使用者定義 LambdaLambda 函數產生的記錄所需運算資源。

1.5.0

新功能:

  • AWS IoT Greengrass 機器學習 (ML) 推論通常可使用。您可以在本機 AWS IoT Greengrass 裝置上使用在雲端建構和訓練的模型來執行 ML 推導。如需更多詳細資訊,請參閱「執行機器學習推論」。

  • Greengrass Lambda 函數現在支援二進位資料做為輸入乘載,除了 JSON 之外。若要使用此功能,您必須升級到 AWS IoT Greengrass 核心軟體開發套件版本 1.1.0,您可從 AWS IoT Greengrass Core SDK 下載 頁面下載此套件。

錯誤修正與效能改進:

  • 降低整體的記憶體足跡。

  • 傳送訊息至雲端的效能提升。

  • 下載代理程式的穩定性改善、裝置憑證管理員 、和 OTA 更新代理程式。

  • 次要錯誤修正。

1.3.0

新功能:

1.1.0

新功能:

  • 可以藉由刪除 Lambda 函數、訂閱或組態重設部署 AWS IoT Greengrass 群組。如需更多詳細資訊,請參閱「重設部署」。

  • 支援 Node.js 6.10 和 Java 8 Lambda 執行時間,除了 Python 2.7 之外。

若要從舊版的 AWS IoT Greengrass 核心 執行遷移:

  • /greengrass/configuration/certs 資料夾複製憑證至 /greengrass/certs

  • 複製 /greengrass/configuration/config.json/greengrass/config/config.json.

  • 執行 /greengrass/ggc/core/greengrassd,而不是 /greengrass/greengrassd

  • 部署群組到新的核心。

1.0.0

初始版本

AWS IoT Greengrass 群組

Greengrass 群組是設定和元件的集合,例如 Greengrass 核心、裝置和訂閱。群組可用來定義互動的範圍。例如,群組可能代表大樓的其中一個樓層、一輛卡車,或整個礦場。下圖顯示可組成 Greengrass 群組的元件。

在上圖中:

A: 綠色草羣定義

群組設定和元件的相關資訊。

B: 綠草羣設置

其中包括:

C: Greengrass 核心

代表 Greengrass 核心的 AWS IoT 物件 (裝置)。如需更多詳細資訊,請參閱「設定 AWS IoT Greengrass 核心」。

D:Lambda 函數定義

在本機核心上執行的 Lambda 函數清單,以及相關聯的組態資料。如需更多詳細資訊,請參閱「在 AWS IoT Greengrass 核心執行 Lambda 函數」。

E: 訂閱定義

可讓通訊使用 MQTT 訊息的訂閱清單。訂閱定義:

  • 訊息來源和訊息目標。這些可以是裝置、Lambda 函數、連接器、AWS IoT Core 和本機陰影服務。

  • 用來篩選訊息的主題 (或主旨)。

如需更多詳細資訊,請參閱「MQTT 簡訊工作流程中的受管訂閱」。

單位: 連接器定義

在本機核心上執行的連接器清單,以及相關聯的組態資料。如需更多詳細資訊,請參閱「使用 Greengrass 連接器來整合服務和通訊協定」。

單位:G: 設備定義

包含屬於 Greengrass 群組的 AWS IoT 物件 (裝置) 清單,以及相關的組態資料。如需更多詳細資訊,請參閱「AWS IoT Greengrass 的裝置」。

上: 資源定義

Greengrass 核心上本機資源、機器學習資源和私密資源的清單,以及相關聯的組態資料。如需詳細資訊,請參閱 使用 Lambda 函數和連接器存取本機資源執行機器學習推論將私密部署至 AWS IoT Greengrass 核心

部署時,會將 Greengrass 群組定義、Lambda 函數、連接器、資源和訂閱表格複製到核心裝置。如需更多詳細資訊,請參閱「將 AWS IoT Greengrass 群組部署至 AWS IoT Greengrass 核心」。

AWS IoT Greengrass 的裝置

Greengrass 群組可以包含兩種 AWS IoT 裝置類型:

Greengrass 核心

Greengrass 核心是一種執行 AWS IoT Greengrass 核心軟體的裝置,允許它直接與 AWS IoT Core 和 AWS IoT Greengrass 服務進行通訊。核心有自己的憑證,用於驗證 AWS IoT Core。它具有裝置陰影並在 AWS IoT Core 登錄中具有一個項目。Greengrass 核心會執行本機 Lambda 執行時間、部署代理程式和 IP 地址追蹤器,將 IP 地址資訊傳送至 AWS IoT Greengrass 服務,以允許 Greengrass 裝置自動探索其群組和核心連線資訊。如需更多詳細資訊,請參閱「設定 AWS IoT Greengrass 核心」。

注意

Greengrass 群組必須包含恰好一個核心。

連線至 Greengrass 核心的裝置

連線的裝置 (也稱為 Greengrass 裝置) 也有自己的裝置憑證用於 AWS IoT Core 身份驗證、裝置陰影,並在 AWS IoT Core 登錄中具有一個項目。Greengrass設備可以運行 FreeRTOS 或使用 AWS IoT 設備SDK AWS IoT Greengrass 發現API 獲取發現信息,用於連接和驗證同一Greengrass組中的core。 若要了解如何使用 AWS IoT 主控台 建立和設定 AWS IoT Greengrass 的裝置,請參閱模塊4: 在中與設備交互 AWS IoT Greengrass 組。或者,舉例說明如何使用 AWS CLI 創建和配置設備 AWS IoT Greengrass,請參閱 創建設備定義AWS CLI Command Reference.

在 Greengrass 群組中,您可以建立訂閱以允許裝置透過 MQTT 與 Lambda 函數、連接器和群組中的其他裝置,以及 AWS IoT Core 或本機影子服務進行通訊。MQTT 訊息透過核心路由。如果核心裝置中斷雲端連線,裝置可以繼續透過區域網路通訊。裝置的大小各不相同,包含較小型的微型控制器裝置到大型設備。目前,Greengrass組最多可包含2500臺設備。一個裝置最多可為 10 個群組的成員。

注意

OPC-UA 是一個用於工業通訊的資訊交換標準。若要在 Greengrass 核心上實作 OPC-UA 的支援,您可以使用 IoT SiteWise 連接器。此連接器可將產業裝置資料從 OPC-UA 伺服器傳送至 AWS IoT SiteWise 中的資產屬性。

下表顯示這些裝置所相關的類型。

AWS IoT Greengrass 核心 裝置將憑證儲存在兩個位置:

  • 核心設備證書 /greengrass-root/certs。通常,核心設備證書 hash.cert.pem (例如, 86c84488a5.cert.pem)。當核心連接到 AWS IoT Core 和 AWS IoT Greengrass 服務時,AWS IoT 用戶端會使用此憑證進行相互驗證。

  • 中的MQTT服務器證書 /greengrass-root/ggc/var/state/server。MQTT服務器證書已命名 server.crt。此證書用於本地MQTT服務器(位於Greengrass核心上)和Greengrass設備之間的相互身份驗證。

    注意

    greengrass-root 代表 AWS IoT Greengrass 核心軟體在裝置上安裝所在的路徑。通常,這是 /greengrass 目錄。

SDKs

下列AWS提供的 SDKs 用於處理 AWS IoT Greengrass:

AWS 開發套件

請使用 AWS 開發套件來建立可以與任何 AWS 服務互動的應用程式,包括 Amazon S3、Amazon DynamoDB、AWS IoT、AWS IoT Greengrass 等。在 AWS IoT Greengrass 的內容中,您可以在已部署的 Lambda 函數中使用 AWS 開發套件,直接呼叫任何 AWS 服務。如需更多詳細資訊,請參閱「AWS SDKs」。

注意

Greengrass的特定操作可在 AWS SDKs 也可在 AWS IoT Greengrass API(原料藥)AWS CLI.

AWS IoT 裝置軟體開發套件

的 AWS IoT 設備SDK幫助設備連接到 AWS IoT Core 和 AWS IoT Greengrass. 有關更多信息,請參閱 AWS IoT 設備 SDKsAWS IoT 開發人員指南.

設備可以使用任何 AWS IoT 設備SDKv2平臺,用於發現Greengrass核心的連接信息。連接信息包括:

  • 的 IDs 設備所屬的Greengrass組。

  • 每組中Greengrass核心的IP地址。這些也被稱爲 核心端點.

  • 組CA證書,設備使用它與核心進行相互身份驗證。如需更多詳細資訊,請參閱「裝置連線工作流程」。

注意

在的v1中 AWS IoT 設備 SDKs只有C++和Python平臺提供內置發現支持。

AWS IoT Greengrass Core SDK

AWS IoT Greengrass 核心軟體開發套件可讓 Lambda 函數與 Greengrass 核心互動、向 AWS IoT 發佈訊息、與本機陰影服務互動、呼叫其他已部署的 Lambda 函數,以及存取秘密資源。此軟體開發套件由 AWS IoT Greengrass 核心上執行的 Lambda 函數使用。如需更多詳細資訊,請參閱「AWS IoT Greengrass Core SDK」。

AWS IoT Greengrass Machine Learning 軟體開發套件

AWS IoT Greengrass Machine Learning 軟體開發套件可讓 Lambda 函數使用部署到 Greengrass 核心做為機器學習資源的機器學習模型。此軟體開發套件由 AWS IoT Greengrass 核心上執行且與本端推論服務互動的 Lambda 函數使用。如需更多詳細資訊,請參閱「AWS IoT Greengrass Machine Learning 軟體開發套件」。

支援平台和需求

以下索引標籤列出支援的平台,以及 AWS IoT Greengrass 核心軟體的需求。

注意

您可以從 AWS IoT Greengrass Core 軟體下載 下載 AWS IoT Greengrass 核心軟體。

GGC v1.11

支援的平台:

  • 架構: Armv7l

    • 操作系統: Linux;分發: RaspbianBuster,2019-07-10(RaspbianBuster,)。 AWS IoT Greengrass 可能與樹莓派的其他發行版配合使用,但我們建議您使用Raspbian,因爲它是官方支持的發行版.

    • 操作系統: Linux;分發: OpenWrt

  • 架構: Armv8 (AArch64)

  • 架構: Armv6l

  • 架構:x86_64

    • 操作系統: Linux;分發: AmazonLinux(amzn2-ami-hvm-2.0.20190313-x86_64-gp2),Ubuntu18.04(亞馬遜Linux(amzn2-ami-hvm-2.0.-x86_64-gp2)

  • 窗戶, macOS、和Linux平臺可以運行 AWS IoT Greengrass 在Docker容器中。如需更多詳細資訊,請參閱「在 Docker 容器中執行 AWS IoT Greengrass」。

要求:

  • AWS IoT Greengrass 核心軟體可用的最小 128 MB 磁碟空間。如果您使用 OTA 更新代理程式,則最小為 400 MB.

  • 最少要配置 128 MB RAM 給 AWS IoT Greengrass 核心軟體。啟用串流管理員時,至少要用 198 MB RAM。

    注意

    如果您使用 AWS IoT 主控台 上的 Default Group creation (預設群組建立) 來建立 Greengrass 群組,依預設會啟用串流管理員。

  • Linux 核心版本:

    • 需要 Linux 核心 4.4 版或更新版本,才能支援在具有容器的情況下執行 AWS IoT Greengrass。

    • 需要 Linux 核心 3.17 版或更新版本,才能支援在沒有容器的情況下執行 AWS IoT Greengrass。在此組態中 , Greengrass 群組的預設 Lambda 函數容器化必須設定為 No container (無容器)。如需說明,請參閱在群組中設定 Lambda 函數的預設容器化

  • GNU C 程式庫 (glibc) 2.14 版或更新版本。OpenWrt 分配需要 muslC庫 版本1.1.16或更高版本。

  • 必須在此裝置上呈現 /var/run 目錄。

  • /dev/stdin/dev/stdout/dev/stderr 檔案必須可用。

  • 必須在裝置上啟用硬連結和軟連結保護。否則,只能在不安全模式下使用 -i 旗標執行 AWS IoT Greengrass。

  • 必須在此裝置啟用下列的 Linux 核心組態:

    • 命名空間:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      核心必須支援 cgroups。以下是使用容器執行 AWS IoT Greengrass 時適用的要求:

      • 記憶體 cgroup 必須啟用和掛載,以允許 AWS IoT Greengrass 為 Lambda 函數設定記憶體限制。

      • 裝置 cgroup 必須啟用和掛載,如果當具有本機資源存取的 Lambda 函數用於在 AWS IoT Greengrass 核心 裝置上開啟檔案。

    • 其他:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • Amazon S3 的跟憑證和 AWS IoT 必須呈現在系統信任存放區。

  • 除了基本的 AWS IoT Greengrass 核心軟體記憶體需求之外,串流管理員還需要 Java 8 執行時間和至少 70 MB RAM。使用 AWS IoT 主控台 上的 Default Group creation (預設群組建立) 選項時,依預設會啟用串流管理員。流管理器在上不受支持 OpenWrt 分配。

  • 支援您要在本機執行的 Lambda 函數所需 AWS Lambda runtime 的程式庫。必要的程式庫必須安裝在核心上,並新增到 PATH 環境變數。多個程式庫可以安裝在同一個核心上。

    • 蟒蛇紋 版本3.8,適用於使用Python3.8Runtime的功能。

    • Python 3.7 版 (若為使用 Python 3.7 執行時間的函數)。

    • Python 2.7 版 (若為使用 Python 2.7 執行時間的函數)。

    • Node.js 12.x 版 (若為使用 Node.js 12.x 執行時間的函數)。

    • Java 第 8 版或更新版本 (若為使用 Java 執行時間的函數)。

      注意

      在上運行Java OpenWrt 發行未得到官方支持。但是,如果您的 OpenWrt 構建具有Java支持,您可能能夠運行 Lambda 函數在Java中編寫, OpenWrt 設備。

      如需 Lambda 執行時間的 AWS IoT Greengrass 支援的詳細資訊,請參閱 在 AWS IoT Greengrass 核心執行 Lambda 函數

  • 以下shell命令(不是 BusyBox 變體)是 空中(OTA)更新代理:

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

    • /bin/bash

GGC v1.10

支援的平台:

  • 架構: Armv7l

    • 操作系統: Linux;分發: RaspbianBuster,2019-07-10(RaspbianBuster,)。 AWS IoT Greengrass 可能與樹莓派的其他發行版配合使用,但我們建議您使用Raspbian,因爲它是官方支持的發行版.

    • 操作系統: Linux;分發: OpenWrt

  • 架構: Armv8 (AArch64)

  • 架構: Armv6l

  • 架構:x86_64

    • 操作系統: Linux;分發: AmazonLinux(amzn2-ami-hvm-2.0.20190313-x86_64-gp2),Ubuntu18.04(亞馬遜Linux(amzn2-ami-hvm-2.0.-x86_64-gp2)

  • 窗戶, macOS、和Linux平臺可以運行 AWS IoT Greengrass 在Docker容器中。如需更多詳細資訊,請參閱「在 Docker 容器中執行 AWS IoT Greengrass」。

要求:

  • AWS IoT Greengrass 核心軟體可用的最小 128 MB 磁碟空間。如果您使用 OTA 更新代理程式,則最小為 400 MB.

  • 最少要配置 128 MB RAM 給 AWS IoT Greengrass 核心軟體。啟用串流管理員時,至少要用 198 MB RAM。

    注意

    如果您使用 AWS IoT 主控台 上的 Default Group creation (預設群組建立) 來建立 Greengrass 群組,依預設會啟用串流管理員。

  • Linux 核心版本:

    • 需要 Linux 核心 4.4 版或更新版本,才能支援在具有容器的情況下執行 AWS IoT Greengrass。

    • 需要 Linux 核心 3.17 版或更新版本,才能支援在沒有容器的情況下執行 AWS IoT Greengrass。在此組態中 , Greengrass 群組的預設 Lambda 函數容器化必須設定為 No container (無容器)。如需說明,請參閱在群組中設定 Lambda 函數的預設容器化

  • GNU C 程式庫 (glibc) 2.14 版或更新版本。OpenWrt 分配需要 muslC庫 版本1.1.16或更高版本。

  • 必須在此裝置上呈現 /var/run 目錄。

  • /dev/stdin/dev/stdout/dev/stderr 檔案必須可用。

  • 必須在裝置上啟用硬連結和軟連結保護。否則,只能在不安全模式下使用 -i 旗標執行 AWS IoT Greengrass。

  • 必須在此裝置啟用下列的 Linux 核心組態:

    • 命名空間:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      核心必須支援 cgroups。以下是使用容器執行 AWS IoT Greengrass 時適用的要求:

      • 記憶體 cgroup 必須啟用和掛載,以允許 AWS IoT Greengrass 為 Lambda 函數設定記憶體限制。

      • 裝置 cgroup 必須啟用和掛載,如果當具有本機資源存取的 Lambda 函數用於在 AWS IoT Greengrass 核心 裝置上開啟檔案。

    • 其他:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • Amazon S3 的跟憑證和 AWS IoT 必須呈現在系統信任存放區。

  • 除了基本的 AWS IoT Greengrass 核心軟體記憶體需求之外,串流管理員還需要 Java 8 執行時間和至少 70 MB RAM。使用 AWS IoT 主控台 上的 Default Group creation (預設群組建立) 選項時,依預設會啟用串流管理員。流管理器在上不受支持 OpenWrt 分配。

  • 支援您要在本機執行的 Lambda 函數所需 AWS Lambda runtime 的程式庫。必要的程式庫必須安裝在核心上,並新增到 PATH 環境變數。多個程式庫可以安裝在同一個核心上。

    • Python 3.7 版 (若為使用 Python 3.7 執行時間的函數)。

    • Python 2.7 版 (若為使用 Python 2.7 執行時間的函數)。

    • Node.js 12.x 版 (若為使用 Node.js 12.x 執行時間的函數)。

    • Java 第 8 版或更新版本 (若為使用 Java 執行時間的函數)。

      注意

      在上運行Java OpenWrt 發行未得到官方支持。但是,如果您的 OpenWrt 構建具有Java支持,您可能能夠運行 Lambda 函數在Java中編寫, OpenWrt 設備。

      如需 Lambda 執行時間的 AWS IoT Greengrass 支援的詳細資訊,請參閱 在 AWS IoT Greengrass 核心執行 Lambda 函數

  • 以下shell命令(不是 BusyBox 變體)是 空中(OTA)更新代理:

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

    • /bin/bash

GGC v1.9

支援的平台:

  • 架構: Armv7l

    • 操作系統: Linux;分發: RaspbianBuster,2019-07-10(RaspbianBuster,)。 AWS IoT Greengrass 可能與樹莓派的其他發行版配合使用,但我們建議您使用Raspbian,因爲它是官方支持的發行版.

    • 操作系統: Linux;分發: OpenWrt

  • 架構: Armv8 (AArch64)

  • 架構: Armv6l

  • 架構:x86_64

    • 操作系統: Linux;分發: AmazonLinux(amzn2-ami-hvm-2.0.20190313-x86_64-gp2),Ubuntu18.04(亞馬遜Linux(amzn2-ami-hvm-2.0.-x86_64-gp2)

  • 窗戶, macOS、和Linux平臺可以運行 AWS IoT Greengrass 在Docker容器中。如需更多詳細資訊,請參閱「在 Docker 容器中執行 AWS IoT Greengrass」。

要求:

  • AWS IoT Greengrass 核心軟體可用的最小 128 MB 磁碟空間。如果您使用 OTA 更新代理程式,則最小為 400 MB.

  • 最少要配置 128 MB RAM 給 AWS IoT Greengrass 核心軟體。

  • Linux 核心版本:

    • 需要 Linux 核心 4.4 版或更新版本,才能支援在具有容器的情況下執行 AWS IoT Greengrass。

    • 需要 Linux 核心 3.17 版或更新版本,才能支援在沒有容器的情況下執行 AWS IoT Greengrass。在此組態中 , Greengrass 群組的預設 Lambda 函數容器化必須設定為 No container (無容器)。如需說明,請參閱在群組中設定 Lambda 函數的預設容器化

  • GNU C 程式庫 (glibc) 2.14 版或更新版本。OpenWrt 分配需要 muslC庫 版本1.1.16或更高版本。

  • 必須在此裝置上呈現 /var/run 目錄。

  • /dev/stdin/dev/stdout/dev/stderr 檔案必須可用。

  • 必須在裝置上啟用硬連結和軟連結保護。否則,只能在不安全模式下使用 -i 旗標執行 AWS IoT Greengrass。

  • 必須在此裝置啟用下列的 Linux 核心組態:

    • 命名空間:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      核心必須支援 cgroups。以下是使用容器執行 AWS IoT Greengrass 時適用的要求:

      • 記憶體 cgroup 必須啟用和掛載,以允許 AWS IoT Greengrass 為 Lambda 函數設定記憶體限制。

      • 裝置 cgroup 必須啟用和掛載,如果當具有本機資源存取的 Lambda 函數用於在 AWS IoT Greengrass 核心 裝置上開啟檔案。

    • 其他:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • Amazon S3 的跟憑證和 AWS IoT 必須呈現在系統信任存放區。

  • 支援您要在本機執行的 Lambda 函數所需 AWS Lambda runtime 的程式庫。必要的程式庫必須安裝在核心上,並新增到 PATH 環境變數。多個程式庫可以安裝在同一個核心上。

    • Python 2.7 版 (若為使用 Python 2.7 執行時間的函數)。

    • Python 3.7 版 (若為使用 Python 3.7 執行時間的函數)。

    • Node.js 6.10 版或更新版本 (若為使用 Node.js 6.10 執行時間的函數)。

    • Node.js 8.10 版或更新版本 (若為使用 Node.js 8.10 執行時間的函數)。

    • Java 第 8 版或更新版本 (若為使用 Java 執行時間的函數)。

      注意

      在上運行Java OpenWrt 發行未得到官方支持。但是,如果您的 OpenWrt 構建具有Java支持,您可能能夠運行 Lambda 函數在Java中編寫, OpenWrt 設備。

      如需 Lambda 執行時間的 AWS IoT Greengrass 支援的詳細資訊,請參閱 在 AWS IoT Greengrass 核心執行 Lambda 函數

  • 以下shell命令(不是 BusyBox 變體)是 空中(OTA)更新代理:

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

GGC v1.8
  • 支援的平台:

    • 架構: Armv7l;總生存期: Linux;分發: Raspbian Stretch, 2018-06-29。其他版本可能使用 AWS IoT Greengrass,但我們建議您這樣做,因爲它是官方支持的分發。

    • 架構:x86_64;操作系統: Linux;分發: AmazonLinux(amzn-ami-hvm-2016.09.1.20170119-x86_64-ebs),Ubuntu14.04(亞馬遜Linux(amzn-ami-hvm-2016.09.1.-x86_64-ebs) – 16.04(美國)

    • 架構: Armv8(Aarch64);操作系統: Linux;分發: Arch Linux

    • 窗戶, macOS、和Linux平臺可以運行 AWS IoT Greengrass 在Docker容器中。如需更多詳細資訊,請參閱「在 Docker 容器中執行 AWS IoT Greengrass」。

    • Linux 平台可以使用 Greengrass Snap (可以透過 Snapcraft 取得) 來執行功能有限的 AWS IoT Greengrass 版本。​ 如需更多詳細資訊,請參閱「AWS IoT Greengrass Snap 軟體」。

  • 下列是必要項目:

    • AWS IoT Greengrass 核心軟體可用的最小 128 MB 磁碟空間。如果您使用 OTA 更新代理程式,則最小為 400 MB.

    • 最少要配置 128 MB RAM 給 AWS IoT Greengrass 核心軟體。

    • Linux 核心版本:

      • 需要 Linux 核心 4.4 版或更新版本,才能支援在具有容器的情況下執行 AWS IoT Greengrass。

      • 需要 Linux 核心 3.17 版或更新版本,才能支援在沒有容器的情況下執行 AWS IoT Greengrass。在此組態中 , Greengrass 群組的預設 Lambda 函數容器化必須設定為 No container (無容器)。如需說明,請參閱在群組中設定 Lambda 函數的預設容器化

    • GNU C 程式庫 (glibc) 2.14 版或更新版本。

    • 必須在此裝置上呈現 /var/run 目錄。

    • /dev/stdin/dev/stdout/dev/stderr 檔案必須可用。

    • 必須在裝置上啟用硬連結和軟連結保護。否則,只能在不安全模式下使用 -i 旗標執行 AWS IoT Greengrass。

    • 必須在此裝置啟用下列的 Linux 核心組態:

      • 命名空間:

        • CONFIG_IPC_NS

        • CONFIG_UTS_NS

        • CONFIG_USER_NS

        • CONFIG_PID_NS

      • Cgroups:

        • CONFIG_CGROUP_DEVICE

        • CONFIG_CGROUPS

        • CONFIG_MEMCG

        核心必須支援 cgroups。以下是使用容器執行 AWS IoT Greengrass 時適用的要求:

        • 記憶體 cgroup 必須啟用和掛載,以允許 AWS IoT Greengrass 為 Lambda 函數設定記憶體限制。

        • 裝置 cgroup 必須啟用和掛載,如果當具有本機資源存取的 Lambda 函數用於在 AWS IoT Greengrass 核心 裝置上開啟檔案。

      • 其他:

        • CONFIG_POSIX_MQUEUE

        • CONFIG_OVERLAY_FS

        • CONFIG_HAVE_ARCH_SECCOMP_FILTER

        • CONFIG_SECCOMP_FILTER

        • CONFIG_KEYS

        • CONFIG_SECCOMP

        • CONFIG_SHMEM

    • Amazon S3 的跟憑證和 AWS IoT 必須呈現在系統信任存放區。

  • 下列項目是必要條件:

    • 支援您要在本機執行的 Lambda 函數所需 AWS Lambda runtime 的程式庫。必要的程式庫必須安裝在核心上,並新增到 PATH 環境變數。多個程式庫可以安裝在同一個核心上。

      • Python 2.7 版 (若為使用 Python 2.7 執行時間的函數)。

      • Node.js 6.10 版或更新版本 (若為使用 Node.js 6.10 執行時間的函數)。

      • Java 第 8 版或更新版本 (若為使用 Java 執行時間的函數)。

    • 以下shell命令(不是 BusyBox 變體)是 空中(OTA)更新代理:

      • wget

      • realpath

      • tar

      • readlink

      • basename

      • dirname

      • pidof

      • df

      • grep

      • umount

      • mv

      • gzip

      • mkdir

      • rm

      • ln

      • cut

      • cat

有關 AWS IoT Greengrass 配額(限制),請參閱 服務配額Amazon Web Services 一般參考.

如需定價資訊,請參閱 AWS IoT Greengrass 定價AWS IoT Core 定價

AWS IoT Greengrass 下載

您可以使用以下資訊來尋找及下載與 AWS IoT Greengrass 搭配使用的軟體。

AWS IoT Greengrass 核心軟體

AWS IoT Greengrass 核心軟體將 AWS 功能擴展到 AWS IoT Greengrass 核心 裝置,讓本機裝置可以在本機操作其產生的資料。

v1.11
1.11.0-當前版本

新功能:

  • Greengrass核心上的遙測代理收集本地遙測數據並將其發佈到 AWS 雲。要檢索遙測數據以供進一步處理,客戶可以創建 Amazon EventBridge 規則並訂閱目標。有關更多信息,請參閱 收集系統健康遙測數據自 AWS IoT Greengrass 核心 設備.

  • 本地HTTPAPI返回由啓動的本地工作進程的當前狀態的快照 AWS IoT Greengrass. 有關更多信息,請參閱 調用本地運行狀況檢查API.

  • 流管理器 自動將數據導出到 Amazon S3 和 AWS IoT SiteWise.

    流管理器參數 允許您更新現有流並暫停或恢復數據導出。

  • 支持運行Python3.8.x Lambda 功能。

  • 新的 ggDaemonPort 屬性 config.json 可以配置Greengrass核心IPC端口號。默認端口號爲8000。

    新的 systemComponentAuthTimeout 屬性 config.json 允許您配置Greengrass核心IPC身份驗證的超時時間。默認超時爲5000毫秒。

  • 增加最大數量 AWS IoT 設備數量 AWS IoT Greengrass 群組 200至2500。

    將每個組的最大訂閱數從1000增加到10000。

    如需詳細資訊,請參閱 AWS IoT Greengrass 端點和配額

錯誤修正與效能改進:

  • 一般優化,可降低Greengrass服務進程的內存利用率。

  • 新的運行時配置參數(mountAllBlockDevices)讓Greengrass在設置 OverlayFS。此功能解決了一個導致Greengrass部署失敗的問題,如果 /usr 不在 / 層級。

  • 修復了導致 AWS IoT Greengrass 核心 失敗,如果 /tmp 是符號鏈接。

  • 修復了讓Greengrass部署代理從 mlmodel_public 文件夾。

  • 一般效能改進與錯誤修正。

若要在核心裝置上安裝 AWS IoT Greengrass 核心軟體,請下載您的架構、發佈和作業系統 (OS) 適用的套件,然後遵循入門指南中的步驟。

提示

AWS IoT Greengrass 也提供安裝 AWS IoT Greengrass 核心軟體的其他選項。例如,您可以使用 Greengrass 裝置設定來設定環境,並安裝最新版本的 AWS IoT Greengrass 核心軟體。或者,在支援的 Debian 平台上,您可以使用 APT 套件管理器 來安裝或升級 AWS IoT Greengrass 核心軟體。如需更多詳細資訊,請參閱「安裝 AWS IoT Greengrass 核心軟體」。

架構

發佈

作業系統

連結

Armv8 (AArch64)

Arch Linux

Linux

下載

Armv8 (AArch64)

OpenWrt

Linux

下載

Armv7l

Raspbian

Linux

下載

Armv7l

OpenWrt

Linux

下載

Armv6l

Raspbian

Linux

下載

x86_64

Linux

Linux

下載

v1.10
1.10.2間

錯誤修正與效能改進:

  • config.json 中新的 mqttOperationTimeout 屬性可讓您設定與 AWS IoT Core 的 MQTT 連線中發佈、訂閱和取消訂閱操作的逾時。

  • 一般效能改進與錯誤修正。

1.10.1

錯誤修正與效能改進:

  • 串流管理員對檔案資料損毀更有彈性。

  • 使用 Linux 核心 5.1 及更新版本,修正在裝置上造成 sysfs 掛載失敗的問題。

  • 一般效能改進與錯誤修正。

1.10.0

新功能:

  • 可通過硬件安全集成配置無線(OTA)更新 OpenSSL 1.1.

  • 一般效能改進與錯誤修正。

若要在核心裝置上安裝 AWS IoT Greengrass 核心軟體,請下載您的架構、發佈和作業系統 (OS) 適用的套件,然後遵循入門指南中的步驟。

架構

發佈

作業系統

連結

Armv8 (AArch64)

Arch Linux

Linux

下載

Armv8 (AArch64)

OpenWrt

Linux

下載

Armv7l

Raspbian

Linux

下載

Armv7l

OpenWrt

Linux

下載

Armv6l

Raspbian

Linux

下載

x86_64

Linux

Linux

下載

v1.9

v1.9 中的新功能:

  • 支援 Python 3.7 和 Node.js 8.10 Lambda 執行時間。使用 Python 3.7 和 Node.js 8.10 執行時間的 Lambda 函數現在可以在 AWS IoT Greengrass 核心 上執行。(AWS IoT Greengrass 繼續支援 Python 2.7 和 Node.js 6.10 執行時間。)

  • 最佳化的 MQTT 連線。Greengrass 核心建立更少與 AWS IoT Core 的連線。這個變更可對根據連線數目的費用降低操作成本。

  • 本機 MQTT 伺服器的 Elliptic Curve (EC) 金鑰。除了 RSA 金鑰之外,本機 MQTT 伺服器還支援 EC 金鑰。(MQTT服務器證書具有SHA-256RSA簽名,無論密鑰類型如何。)有關更多信息,請參閱 AWS IoT Greengrass 核心安全性主體.

  • 支持 OpenWrt。 AWS IoT Greengrass 可在上安裝核心軟件v1.9.2或更高版本 OpenWrt 分佈與Armv8(Aarch64)和Armv7l架構。目前, OpenWrt 不支持ML推斷。

  • 支持Armv6l. AWS IoT Greengrass 核心軟件v1.9.3 or later 可安裝在Raspbian分佈的Arv6l架構上(例如,樹莓派零位設備)。

  • 帶有 ALPN 的連接埠 443 OTA 更新。對 MQTT 流量使用連接埠 443 的 Greengrass 核心現在支援無線 (OTA) 軟體更新。AWS IoT Greengrass 會使用應用程式層通訊協定網路 (ALPN) TLS 延伸來啟用這些連線。如需詳細資訊,請參閱 AWS IoT Greengrass 核心軟體的 OTA 更新連線至連接埠 443 或透過網路代理

若要在核心裝置上安裝 AWS IoT Greengrass 核心軟體,請下載您的架構、發佈和作業系統 (OS) 適用的套件,然後遵循入門指南中的步驟。

架構

發佈

作業系統

連結

Armv8 (AArch64)

Arch Linux

Linux

下載

Armv8 (AArch64)

OpenWrt

Linux

下載

Armv7l

Raspbian

Linux

下載

Armv7l

OpenWrt

Linux

下載

Armv6l

Raspbian

Linux

下載

x86_64

Linux

Linux

下載

v1.8
  • 新功能:

    • 群組中 Lambda 函數的可設定預設存取身分。這項群組層級設定會決定用於執行 Lambda 函數的預設許可。您可以設定使用者 ID、群組 ID 或兩者。個別的 Lambda 函數可以覆寫其群組的預設存取身分。如需更多詳細資訊,請參閱「在群組中設定 Lambda 函數的預設存取身分」。

    • 透過連接埠 443 的 HTTPS 流量。HTTPS 通訊可設定為透過連接埠 443 傳送,而非預設的連接埠 8443。這可補強針對應用程式層通訊協定網路 (ALPN) TLS 延伸的 AWS IoT Greengrass 支援,並允許所有 Greengrass 訊息流量 (包括 MQTT 和 HTTPS 兩者) 使用連接埠 443。如需更多詳細資訊,請參閱「連線至連接埠 443 或透過網路代理」。

    • 可預測的命名客戶 IDs 爲 AWS IoT 連接。此變更可支援 AWS IoT Device Defender 和 AWS IoT 生命週期事件,因此您會收到連線、中斷連線、訂閱和取消訂閱事件的通知。可預測的命名也使圍繞連接創建邏輯變得更容易 IDs (例如,創建 訂閱策略 基於證書屬性的模板)。如需更多詳細資訊,請參閱「客戶 IDs 用於MQTT連接 AWS IoT」。

    錯誤修正與效能改進:

    • 已修正陰影同步和裝置憑證管理員重新連線的問題。

    • 一般效能改進與錯誤修正。

若要在核心裝置上安裝 AWS IoT Greengrass 核心軟體,請下載您的架構、發佈和作業系統 (OS) 適用的套件,然後遵循入門指南中的步驟。

架構

發佈

作業系統

連結

Armv8 (AArch64)

Ubuntu 14.04 - 16.04

Linux

下載

Armv7l

Raspbian

Linux

下載

x86_64

Linux

Linux

下載

下載此軟體,即表示您同意 Greengrass 核心軟體授權合約之規定。

如需有關在您的裝置上安裝 AWS IoT Greengrass 核心軟體的資訊,請參閱安裝 AWS IoT Greengrass 核心軟體

 

AWS IoT Greengrass Snap 軟體

AWS IoT Greengrass Snap 軟體目前僅適用於 AWS IoT Greengrass 核心 1.8 版。

的 AWS IoT Greengrass sap軟件下載使您可以運行 AWS IoT Greengrass 在Linux雲、桌面和 IoT 環境。這些套件或 Snap 包含 AWS IoT Greengrass 核心軟體及其相依性。您可以在 Linux 環境下載這些套件並依現狀使用。

AWS IoT Greengrass Snap 可讓您在 Linux 環境中執行功能有限的 AWS IoT Greengrass 版本。目前不支援 Java、Node.js 和原生 Lambda 函數。也不支援機器學習推論、連接器和非容器化 Lambda 函數。

如需更多詳細資訊,請參閱「AWS IoT Greengrass Snap 入門」。

 

AWS IoT Greengrass Docker 軟體

AWS 提供 Dockerfile 和 Docker 映像檔,讓您更輕鬆執行 Docker 容器中的 AWS IoT Greengrass。

Dockerfile

Dockerfile 包含用於建立自訂 AWS IoT Greengrass 容器映像的原始程式碼。您可以修改映像,以在不同平台架構上執行或減少映像大小。如需指示,請參閱 README 檔案。

下載您的目標 AWS IoT Greengrass 核心軟體版本。

v1.11.0
v1.10.2
v1.9.4
v1.8.1

 

Docker 影像

Docker鏡像具有 AWS IoT Greengrass 安裝在AmazonLinux2(x86_64)和AlpineLinux(x86_64,Armv7l或 AArch64)基礎圖像。您可以使用預先建立的映像來開始試驗 AWS IoT Greengrass。

Docker Hub 或 Amazon Elastic Container Registry (Amazon ECR) 下載預先建立的映像。

注意

如需說明如何從 Amazon ECR 下載和執行預先建立映像的步驟,請參閱在 Docker 容器中執行 AWS IoT Greengrass

latest 標籤代表安裝在 Amazon Linux 2 基本映像上的 AWS IoT Greengrass 核心軟體和相依性的最新穩定版本。若要尋找所有可用的映像,請檢查 Docker Hub 上的 Tags (標籤) 頁面。

注意

依預設,alpine-aarch64alpine-armv7l 映像只能在以 Arm 為基礎的主機上執行。若要在 x86 主機上執行這些映像,您可以安裝 QEMU 並在主機上安裝 QEMU 程式庫。例如:

docker run --rm --privileged multiarch/qemu-user-static --reset -p yes

 

AWS IoT Greengrass Core SDK

Lambda 函數使用 AWS IoT Greengrass Core SDK 在本機與 AWS IoT Greengrass 核心 互動。這使得部署的 Lambda 函數能夠:

  • 與 AWS IoT Core 交換 MQTT 訊息。

  • 與連接器、裝置及 Greengrass 群組中的其他 Lambda 函數交換 MQTT 訊息。

  • 與本機陰影服務互動。

  • 叫用其他本機 Lambda 函數。

  • 存取私密資源

  • 串流管理員交動。

下載 AWS IoT Greengrass Core SDK 您的語言或平臺 GitHub.

如需更多詳細資訊,請參閱「AWS IoT Greengrass Core SDK」。

 

支援的 Machine Learning 執行時間和程式庫

若要在 Greengrass 核心上執行推論,您必須為 ML 模型類型安裝機器學習執行階段或程式庫。

AWS IoT Greengrass 支援下列 ML 模型類型。請使用這些連結來尋找有關如何為您的模型類型和裝置平台安裝執行階段或程式庫的資訊。

機器學習範例

AWS IoT Greengrass 提供可與支援的 ML 執行階段和程式庫搭配使用的範例。這些範例是依據 Greengrass 核心軟體授權合約所發行的。

Deep learning runtime (DLR)

下載適用於您裝置平台的範例:

如需使用 DLR 範例的教學課程,請參閱 如何使用 AWS 管理主控台設定最佳化的機器學習推論

MXNet

下載適用於您裝置平台的範例:

對於使用 MXNet 樣品,參見 如何設定使用 機器學習推論AWS 管理主控台.

TensorFlow

下載適用於您裝置平台的 Tensorflow 範例。此範例適用於 Raspberry Pi、NVIDIA Jetson TX2 與 Intel Atom。

 

AWS IoT Greengrass 機器學習軟體開發套件軟體

AWS IoT Greengrass Machine Learning 軟體開發套件 可讓您撰寫的 Lambda 函數使用本機機器學習模型,並將資料傳送至 ML 意見回饋 連接器以進行上傳和發佈。

v1.1.0
v1.0.0

我們希望傾聽您的意見

我們誠摯歡迎您提供意見回饋。若要與我們聯絡,請前往 AWS IoT Greengrass 論壇