

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

# 設定 AWS IoT Greengrass 核心裝置
<a name="setting-up"></a>

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

**注意**  
本節說明 AWS IoT Greengrass Core 軟體的進階安裝和組態。這些步驟不適用於 nucleus lite。如果您是第一次使用 AWS IoT Greengrass V2，我們建議您先完成[入門教學](getting-started.md)課程，以設定核心裝置並探索 的功能 AWS IoT Greengrass。



**Topics**
+ [支援平台](#supported-platforms)
+ [裝置要求](#device-requirements)
+ [Lambda 函數需求](#greengrass-v2-lambda-requirements)
+ [設定 AWS 帳戶](#set-up-aws-account)
+ [安裝 AWS IoT Greengrass Core 軟體](install-greengrass-core-v2.md)
+ [執行 AWS IoT Greengrass 核心軟體](run-greengrass-core-v2.md)
+ [在 Docker 容器中執行 AWS IoT Greengrass 核心軟體](run-greengrass-docker.md)
+ [設定 AWS IoT Greengrass 核心軟體](configure-greengrass-core-v2.md)
+ [更新 AWS IoT Greengrass 核心軟體 (OTA)](update-greengrass-core-v2.md)
+ [解除安裝 AWS IoT Greengrass Core 軟體](uninstall-greengrass-core-v2.md)

## 支援平台
<a name="supported-platforms"></a>
+ [Greengrass 核支援的平台](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-component.html)
+ [Greengrass nucleus lite 支援的平台](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)

## 裝置要求
<a name="device-requirements"></a>
+ [Greengrass 核設備需求](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-component.html)
+ [Greengrass nucleus lite 裝置需求](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)

## Lambda 函數需求
<a name="greengrass-v2-lambda-requirements"></a>

**重要**  
Greengrass Lambda 函數目前不支援 Greengrass nucleus lite。

您的裝置必須符合下列要求，才能執行 Lambda 函數：
+ 以 Linux 為基礎的作業系統。
+ 您的裝置必須具有 `mkfifo` shell 命令。
+ 您的裝置必須執行 Lambda 函數所需的程式設計語言程式庫。您必須在裝置上安裝所需的程式庫，並將其新增至`PATH`環境變數。Greengrass 支援所有 Lambda 支援的 Python、Node.js 和 Java 執行時間版本。Greengrass 不會對已取代的 Lambda 執行時間版本套用任何其他限制。如需 Lambda 執行時間 AWS IoT Greengrass 支援的詳細資訊，請參閱 [執行 AWS Lambda 函數](run-lambda-functions.md)。
+ 若要執行容器化 Lambda 函數，您的裝置必須符合下列要求：
  + Linux 核心版本 4.4 或更新版本。
  + 核心必須支援 [cgroups](https://en.wikipedia.org/wiki/Cgroups) v1，而且您必須啟用並掛載下列 cgroups：
    + 的*記憶體* cgroup AWS IoT Greengrass ，用於設定容器化 Lambda 函數的記憶體限制。
    + 容器化 Lambda 函數*的裝置* cgroup 可存取系統裝置或磁碟區。

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

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

    ```
    cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
    ```
**提示**  
在 Raspberry Pi 上，編輯 `/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 for AWS IoT Greengrass V2](device-tester-for-greengrass-ug.md)。

## 設定 AWS 帳戶
<a name="set-up-aws-account"></a>