一般問題

什麼是 AWS Greengrass?

AWS Greengrass 是一種軟體,可讓您以安全的方式在連線裝置執行本機運算、簡訊、資料快取、同步操作及 ML 推論功能。使用 AWS Greengrass 時,連線的裝置可執行 AWS Lambda 函數、根據機器學習模型執行預測、保持裝置資料同步,即使沒有連接到網際網路也可以與其他裝置安全的通訊。

AWS Greengrass 將 AWS 無縫延伸到裝置,以便在本機上操作其產生的資料,同時繼續將雲端用於管理、分析和持久儲存。使用 Greengrass 時,您可以使用熟悉的語言和程式設計模型在雲端建立您的裝置軟體,然後將該軟體部署到裝置。您可以設計 AWS Greengrass 的程式以篩選裝置資料,且只將所需的資訊傳回雲端。

如需 AWS Greengrass 功能的詳細資訊,請按一下這裡

ML 推論是一項 AWS Greengrass 功能,可讓您使用雲端建置和訓練的模型,在 Greengrass 裝置的本機輕鬆執行機器學習推論。若要註冊 ML 推論預覽版,請按一下這裡

如何開始使用 Greengrass?

按一下這裡以查看 Greengrass 入門指南。您可以按這裡購買 Raspberry Pi,或查看下方的其他合格裝置清單以及一組詳細的技術相依性。

哪些 AWS 區域提供 AWS Greengrass 服務?

目前下列 AWS 區域提供 AWS Greengrass:

• 美國東部 (維吉尼亞北部)
• 美國西部 (奧勒岡)
• 歐洲 (法蘭克福)
• 亞太區域 (雪梨)
• 亞太區域 (東京)

只要您擁有上述其中一個 AWS 區域的存取權,無論在哪個地理位置都能使用 AWS Greengrass。

AWS Greengrass 軟體的主要元件有哪些?每個元件的作用是什麼?

AWS Greengrass 由三個軟體分發組成:AWS Greengrass Core、AWS IoT Device SDK 和 AWS Greengrass SDK。下圖是這三個軟體分發的比較。

AWS Greengrass 也可與 Amazon FreeRTOS 搭配運作。如需 Greengrass 與 Amazon FreeRTOS 的詳細資訊,請參閱常見問答集的「將 Greengrass 連接到 Amazon FreeRTOS 和其他裝置」部分。

  作用 執行位置
AWS Greengrass Core 提供本機服務 (運算、簡訊、狀態、安全性),以及與執行 AWS IoT Device SDK 的裝置在本機通訊。 執行 Linux 等一般用途作業系統的 CPU 裝置 (x86 或 ARM)
AWS IoT Device SDK 允許裝置在本機與 Greengrass Core 互動 幾乎任何支援 C++ 或 Python 2.7 的裝置。也包含在 Amazon FreeRTOS 中
AWS Greengrass SDK 允許 Lambda 函數與 Greengrass Core 內的本機服務互動 部署到 Greengrass Core 的 Lambda 函數內

AWS Greengrass 支援哪些 Lambda 開發語言?

Greengrass 支援以下列語言撰寫的 Lambda 函數:

  • Python 2.7
  • Node.JS 6.10
  • Java 8

哪些 Lambda 可以部署到 Greengrass?

使用 Python 2.7、Node.JS 6.10 或 Java 8 Lambda 執行時間的任何 Lambda 都可部署到 Greengrass Core。部署到 Greengrass 的 Lambda 必須與 Greengrass Core 軟體開發套件封裝在一起。此外,您也可以選擇將 AWS 開發套件新增到 Lambda 套件,以便輕鬆與 DynamoDB 等 AWS 服務互動。

請注意:當 Greengrass Core 處於離線模式時,Lambda 函數將無法使用部分 Lambda 依賴的雲端服務 (像是 DynamoDB),而且這些服務的 API 呼叫也會在離線模式失敗。此外,如果您將 Greengrass Core 開發套件和 AWS 開發套件放在同一個套件,Lambda 函數必須針對每個 Greengrass Core 開發套件和 AWS 開發套件使用適當的命名空間。

本機資源存取

什麼是 Greengrass 本機資源?

「本機資源」是指 Greengrass 主機上實際存在的匯流排和週邊設備,或 Greengrass 主機作業系統上的檔案系統磁碟區。例如,要透過 Modbus/CANBUS 與連接的裝置通訊,Greengrass Lambda 函數需要存取裝置上的序列連接埠。本機資源定義在 Greengrass 群組範圍,Greengrass 群組內的所有 Lambda 都可使用定義的本機資源。

何時會存取本機資源?

Greengrass 本機資源允許您的 Lambda 函數與感應器和傳動器等硬體以安全的方式互動。例如,Lambda 函數可從裝置的攝影機讀取影片串流,或傳送命令和控制到 GPIO。

本機資源存取功能是否免費?

此功能是 Greengrass 的一部分,Greengrass 客戶使用無須額外付費。

ML 推論

什麼是 Greengrass ML 推論?

我們在 re:Invent 2017 針對本機機器學習 (ML) 推論宣布了一項 Greengrass 的新功能,它可更快速輕鬆地在 Greengrass 裝置上部署和執行機器學習模型。開發人員現在可以將雲端訓練的機器學習模型以資源形式新增到 Greengrass 群組、將它們部署到目標裝置,以及套用到本機產生的資料用於本機推論。此功能包含與 Amazon SageMaker 整合以找出 SageMaker 訓練模型、新的 Greengrass「機器學習」資源類型用於宣告雲端訓練模型並部署到 Greengrass 裝置,以及適用於 NVIDIA Jetson、Intel Atom E3900 和 Raspberry Pi 裝置的預先建置 MXNet (ML 架構)。新的 Greengrass 機器學習推論功能以預覽版形式提供給有興趣的客戶。

如何存取 Greengrass ML 推論?

按一下這裡進一步了解 Greengrass ML 推論並註冊預覽版。

協定界面卡

如何使用 OPC-UA 協定搭配 AWS Greengrass?

Greengrass 現在支援 OPC-UA,這是一個用於工業通訊的熱門資訊交換標準。當 Greengrass 支援 OPC-UA 之後,您即可輕鬆地從工業設備導入和處理訊息,然後根據您定義的商業規則將它們交付到其他裝置或雲端。我們的 OPC-UA 實作非常安全,它支援以憑證為基礎的身份驗證。它採用知名的開放原始碼實作,且可完全自訂以符合您的特殊使用案例。

我是否可以使用自有 OPC-UA 協定實作或實作不同的協定?

是,Greengrass 可讓您使用與此相同的架構使用自有 OPC-UA 實作,也可實作您自己的自訂、傳統及專有簡訊協定支援。 

如何使用 Greengrass 實作替代協定?

因為在 Greengrass Core 上執行的 Lambda 函數可以存取網路資源,所以您可以使用 Lambda 對 TCP-IP 上實作的任何協定實作支援。此外,您也可以利用 Greengrass 本機資源存取,對需要存取硬體界面卡/驅動程式的協定實作支援。

無線 (OTA) 更新

什麼是 Greengrass 無線 (OTA) 更新?

AWS 每隔一段時間就會發布 Greengrass Core 軟體的更新版本,以提供下列好處:

  • 介紹全新或改良的功能
  • 錯誤修正
  • 提升安全性

有了 Greengrass 無線更新 (OTA),客戶無須手動下載和重新安裝 Greengrass Core 軟體就可以得到這些好處。

是否一定要使用 Greengrass OTA 更新?

否。您永遠可以選擇手動下載和安裝更新,或是遵循其他軟體部署程序。

如何收到新版 Greengrass Core 推出的通知?

當新版 Greengrass Core 推出時,我們將在 AWS Greengrass 軟體開發人員論壇上宣布。您可以在這裡找到該論壇的連結。

Greengrass Core 平台相容性

什麼是 AWS Greengrass Core 裝置?需要什麼樣的最低硬體規格?

AWS Greengrass Core 軟體在中樞、閘道或其他裝置上執行,可自動與雲端同步和互動。Greengrass Core 的設計是為了在配備一般用途處理器的裝置上執行,這種處理器足已執行一般用途的作業系統,如 Linux。Greengrass 需要至少 1 GHz 的運算 (ARM 或 X86)、128 MB 的 RAM,以及根據使用案例滿足所需作業系統、訊息輸送量及 AWS Lambda 函數的其他資源。Greengrass Core 可在各種裝置上執行,範圍包括從 Raspberry Pi 到伺服器層級的設備。

哪些 CPU 架構和作業系統與 AWS Greengrass Core 相容?

以下作業系統和 CPU 架構與 Greengrass Core 相容:

  • 架構:ARMv7l;作業系統:Linux;分發:Raspian
  • 架構:x86_64;作業系統:Linux;分發:Amazon Linux
  • 架構:x86_64;作業系統:Linux;分發:Ubuntu 14.04 – 16.04
  • 架構:ARMv8 (AArch64);作業系統:Linux;分發:Ubuntu 14.04 – 16.04

哪些裝置與 AWS Greengrass Core 相容?如何快速開始使用?

Greengrass Core 與大部分符合以下技術要求的裝置相容。如果您要快速開始使用,可以向我們的合作夥伴購買下列其中一種裝置:

以 Greengrass Core 1.0.0 版本 (2016 年 6 月 7 日推出) 進行測試

以 Greengrass Core 1.1.0 版本 (2017 年 9 月 20 日推出) 進行測試

以 Greengrass Core 1.3.0 版本 (2017 年 11 月 29 日推出) 進行測試

是否能以低於 1 GHz 的硬體執行 Greengrass?

AWS Greengrass Core 軟體已由我們的合作夥伴在下列裝置上進行測試:

執行 Greengrass Core 需要哪些詳細的技術相依性?

AWS Greengrass Core 的設計是在符合最低硬體需求裝置上的各式各樣 CPU 架構和作業系統上執行。以下是執行 Greengrass Core 所需的相依性。

1. 需要軟體套件和組態

  • SQLite – 版本 3 或更新版本
  • Glibc library – 版本 2.14
  • Linux Kernel:雖然有數個核心版本可與 Greengrass 搭配運作,但為了達到最佳的安全性和效能,建議您盡可能使用包含 Greengrass 所需核心組態的最新版 Linux Kernel
  • bash
  • System Trust Store
  • boto3 (最新版本)
  • botocore (最新版本)
  • OpenSSL – 1.0.2 或更新版本
  • 如果執行 Python Lambda,需要:Python – 2.7 或更新版本
  • 如果執行 Java Lambda,需要:Java 8
  • 如果執行 Node.js Lambda,需要:Node.js 6.10

2. Kernel 組態

  • 金鑰保留:CONFIG_KEYS
  • Mqueue:CONFIG_POSIX_MQUEUE
  • Overlay FS:CONFIG_OVERLAY_FS
  • Seccomp Arch Filter:CONFIG_HAVE_ARCH_SECCOMP_FILTER
  • Seccomp Filter:CONFIG_SECCOMP_FILTER
  • Seccomp:CONFIG_SECCOMP

3. Kernel 命名空間組態 – 建立 Kernel 時必須啟用這些組態:

  • IPC 隔離:CONFIG_IPC_NS
  • UTS 隔離:CONFIG_UTS_NS
  • 使用者隔離:CONFIG_USER_NS
  • PID 隔離:CONFIG_PID_NS

4. Kernel Cgroup 組態 – 建立 Kernel 時必須啟用這些組態:

  • 啟用 cgroups:CONFIG_CGROUPS
  • 啟用記憶體 cgroup:CONFIG_MEMCG
  • 啟用裝置 cgroup:CONFIG_CGROUP_DEVICE

 

將 Greengrass 連接到 Amazon FreeRTOS 和其他裝置

如何從本機裝置連接到 AWS Greengrass Core?

使用 Amazon FreeRTOS 或 AWS IoT Device SDK 可從本機裝置連接到 AWS Greengrass Core。透過 C++ 和 Python 2.7,可在 AWS IoT Device 上使用 AWS Greengrass 探索。如需詳細資訊,請參閱 AWS Greengrass 使用者指南。您可以在 Amazon FreeRTOS 原始程式碼中使用 Greengrass Discovery 程式庫,以尋找和連接 AWS Greengrass Core 裝置。如需詳細資訊,請參閱 Amazon FreeRTOS 使用者指南

哪些語言透過 AWS IoT Device SDK 支援 Greengrass?

透過 C++ 和 Python 2.7,可在 AWS IoT Device 上使用 AWS Greengrass 探索。如需詳細資訊,請參閱 AWS Greengrass 使用者指南

什麼是 Amazon FreeRTOS?

Amazon FreeRTOS (a:FreeRTOS) 是一個作業系統,讓微型控制器邊緣裝置易於進行程式設計、部署、安全保護和維護。Amazon FreeRTOS 採用 FreeRTOS 核心,這是適用於微型控制器的熱門開放原始碼作業系統,其中包括的軟體程式庫可安全輕鬆地將本機裝置連接到雲端,而且可從遠端更新。Amazon FreeRTOS 主控台可讓您毫不費力地選擇和下載與您的使用案例相關的軟體元件。Amazon FreeRTOS Qualification Program 讓您確信所選的微型控制器可對 Amazon FreeRTOS 特性和功能提供完整的支援。Amazon FreeRTOS 利用對資料加密和金鑰管理的支援,協助保護微型控制器裝置的安全。而且,Amazon FreeRTOS 裝置連接到 AWS Greengrass Core 裝置,可輕鬆地將多個 Amazon FreeRTOS 裝置連接在一個 Greengrass 群組中。按一下這裡進一步了解有關 Amazon FreeRTOS 的資訊。

Amazon FreeRTOS 是否可與 AWS Greengrass 搭配使用?

是。Amazon FreeRTOS 裝置可直接連接到雲端或 Greengrass。Amazon FreeRTOS 不需要使用 AWS Greengrass。Amazon FreeRTOS 在 IoT 端點上執行,在 IoT 拓撲中通常負責「感應」和「行動」。

AWS Greengrass 與 Amazon FreeRTOS 之間的差異為何?

AWS Greengrass 是一種軟體,可讓您以安全的方式在連線裝置執行本機運算、簡訊、資料快取、同步和 ML 推論功能。使用 AWS Greengrass 時,連線的裝置可執行 AWS Lambda 函數、保持裝置資料同步,即使沒有連接到網際網路也可以與其他裝置安全的通訊。使用 AWS Lambda,Greengrass 可確保您的 IoT 裝置能夠快速回應本機事件、使用在 Greengrass Core 上執行的 Lambda 函數與本機資源互動、透過不穩定的連線進行操作、透過無線更新保持最新狀態,以及盡量減少將 IoT 資料傳輸到雲端的成本。

Amazon FreeRTOS 是適用於邊緣裝置上操作之微型控制器的作業系統,通常不支援可執行 AWS Greengrass 晶片組。這些微型控制器裝置廣泛運用在各種 IoT 端點,例如運動追蹤器、心律調節器、電錶、汽車傳動系統以及感應器網路。Amazon FreeRTOS 裝置無法執行 Greengrass Core,但是可以在 Greengrass Core 上觸發執行 Lambda 函數。

兩種裝置上的硬體需求和作業系統並不相同。

  Amazon FreeRTOS AWS Greengrass
軟體 作業系統,在微型控制器上執行 Linux 裝置的執行時間和 Greengrass 感知裝置的 SDK
硬體需求 > 64 KB RAM > 128 MB RAM
類別 嵌入系統、IoT 端點 邊緣裝置、本機閘道
使用案例 微型控制器裝置 工業自動化系統、無線路由器、智慧型手機

進一步了解 AWS Greengrass 定價

瀏覽定價頁面
準備好開始使用了嗎?
註冊
還有其他問題嗎?
聯絡我們