選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

使用 AWS IoT 機群佈建安裝 AWS IoT Greengrass 核心軟體

焦點模式
使用 AWS IoT 機群佈建安裝 AWS IoT Greengrass 核心軟體 - AWS IoT Greengrass

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

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

此功能適用於 Greengrass 核元件的 v2.4.0 和更新版本。

透過 AWS IoT 機群佈建,您可以設定 AWS IoT ,在首次連線至 時,產生並安全地將 X.509 裝置憑證和私有金鑰交付至您的裝置 AWS IoT 。 AWS IoT 提供由 Amazon 根憑證授權機構 (CA) 簽署的用戶端憑證。您也可以設定 AWS IoT 來指定您使用機群佈建佈建的 Greengrass 核心裝置的物件群組、物件類型和許可。您可以定義佈建範本,以定義 AWS IoT 佈建每個裝置的方式。佈建範本指定佈建時要為裝置建立的物件、政策和憑證資源。如需詳細資訊,請參閱《 AWS IoT Core 開發人員指南》中的佈建範本

AWS IoT Greengrass 提供機 AWS IoT 群佈建外掛程式,您可以使用機 AWS IoT 群佈建建立 AWS 的資源來安裝 AWS IoT Greengrass Core 軟體。機群佈建外掛程式會依宣告使用佈建。裝置使用佈建宣告憑證和私有金鑰,以取得可用於一般操作的唯一 X.509 裝置憑證和私有金鑰。您可以在製造期間將宣告憑證和私有金鑰內嵌到每個裝置中,以便您的客戶稍後可以在每個裝置上線時啟用裝置。您可以針對多個裝置使用相同的宣告憑證和私有金鑰。如需詳細資訊,請參閱《 AWS IoT Core 開發人員指南》中的依宣告佈建

注意

機群佈建外掛程式目前不支援在硬體安全模組 (HSM) 中儲存私有金鑰和憑證檔案。若要使用 HSM,請使用手動佈建安裝 AWS IoT Greengrass Core 軟體

若要使用機 AWS IoT 群佈建安裝 AWS IoT Greengrass 核心軟體,您必須在 中設定 資源 AWS 帳戶 ,以 AWS IoT 使用 來佈建 Greengrass 核心裝置。這些資源包括佈建範本、宣告憑證和權杖交換 IAM 角色。建立這些資源之後,您可以重複使用這些資源,在機群中佈建多個核心裝置。如需詳細資訊,請參閱設定 Greengrass 核心裝置的 AWS IoT 機群佈建

重要

下載 AWS IoT Greengrass Core 軟體之前,請檢查您的核心裝置是否符合安裝和執行 AWS IoT Greengrass Core 軟體 v2.0 的要求

先決條件

若要使用機 AWS IoT 群佈建安裝 AWS IoT Greengrass 核心軟體,您必須先為 Greengrass 核心裝置設定 AWS IoT 機群佈建。完成這些步驟一次後,您可以使用機群佈建,在任何數量的裝置上安裝 AWS IoT Greengrass Core 軟體。

擷取 AWS IoT 端點

取得 的 AWS IoT 端點 AWS 帳戶,並儲存它們以供稍後使用。您的裝置使用這些端點來連線 AWS IoT。請執行下列操作:

  1. 取得 AWS IoT 的資料端點 AWS 帳戶。

    aws iot describe-endpoint --endpoint-type iot:Data-ATS

    如果請求成功,回應看起來與下列範例類似。

    { "endpointAddress": "device-data-prefix-ats.iot.us-west-2.amazonaws.com" }
  2. 取得 的 AWS IoT 登入資料端點 AWS 帳戶。

    aws iot describe-endpoint --endpoint-type iot:CredentialProvider

    如果請求成功,回應看起來與下列範例類似。

    { "endpointAddress": "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" }

下載憑證至裝置

裝置使用宣告憑證和私有金鑰來驗證其佈建 AWS 資源和取得 X.509 裝置憑證的請求。您可以在製造期間將宣告憑證和私有金鑰嵌入裝置,或在安裝期間將憑證和金鑰複製到裝置。在本節中,您將宣告憑證和私有金鑰複製到裝置。您也可以下載 Amazon 根憑證授權機構 (CA) 憑證到裝置。

重要

佈建宣告私有金鑰應隨時受到保護,包括在 Greengrass 核心裝置上。我們建議您使用 Amazon CloudWatch 指標和日誌來監控是否有濫用跡象,例如未經授權使用宣告憑證佈建裝置。如果您偵測到誤用,請停用佈建宣告憑證,使其無法用於裝置佈建。如需詳細資訊,請參閱《 AWS IoT Core 開發人員指南》中的監控 AWS IoT

為了協助您更妥善地管理在 中自行註冊的裝置數量, AWS 帳戶您可以在建立機群佈建範本時指定預先佈建掛鉤。預先佈建勾點是驗證裝置在註冊期間提供的範本參數的 AWS Lambda 函數。例如,您可以建立預先佈建掛鉤,檢查資料庫的裝置 ID,以確認裝置具有佈建的許可。如需詳細資訊,請參閱《 AWS IoT Core 開發人員指南》中的預先佈建掛鉤。

將宣告憑證下載至裝置
  1. 將宣告憑證和私有金鑰複製到裝置。如果在開發電腦和裝置上啟用 SSH 和 SCP,您可以使用開發電腦上的 scp命令來傳輸宣告憑證和私有金鑰。下列範例命令claim-certs會將開發電腦上名為 的資料夾傳輸至裝置。將 device-ip-address 取代為您裝置的 IP 地址。

    scp -r claim-certs/ device-ip-address:~
  2. 在裝置上建立 Greengrass 根資料夾。您稍後將安裝 AWS IoT Greengrass Core 軟體到此資料夾。

    注意

    Windows 的路徑長度限制為 260 個字元。如果您使用的是 Windows,請使用根資料夾,例如 C:\greengrass\v2D:\greengrass\v2 ,將 Greengrass 元件路徑保持在 260 個字元限制以下。

    Linux or Unix
    • /greengrass/v2 將 取代為要使用的資料夾。

    sudo mkdir -p /greengrass/v2
    Windows Command Prompt
    • C:\greengrass\v2 取代為要使用的資料夾。

    mkdir C:\greengrass\v2
    PowerShell
    • C:\greengrass\v2 取代為要使用的資料夾。

    mkdir C:\greengrass\v2
    • /greengrass/v2 將 取代為要使用的資料夾。

    sudo mkdir -p /greengrass/v2
  3. (僅限 Linux) 設定 Greengrass 根資料夾父項的許可。

    • /greengrass 取代為根資料夾的父系。

    sudo chmod 755 /greengrass
  4. 將宣告憑證移至 Greengrass 根資料夾。

    • /greengrass/v2C:\greengrass\v2 取代為 Greengrass 根資料夾。

    Linux or Unix
    sudo mv ~/claim-certs /greengrass/v2
    Windows Command Prompt (CMD)
    move %USERPROFILE%\claim-certs C:\greengrass\v2
    PowerShell
    mv -Path ~\claim-certs -Destination C:\greengrass\v2
    sudo mv ~/claim-certs /greengrass/v2
  5. 根據預設,下載 Amazon 根憑證授權機構 (CA) certificate. AWS IoT certificates 會與 Amazon 的根 CA 憑證相關聯。

    Linux or Unix
    sudo curl -o /greengrass/v2/AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem
    Windows Command Prompt (CMD)
    curl -o C:\greengrass\v2\\AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem
    PowerShell
    iwr -Uri https://www.amazontrust.com/repository/AmazonRootCA1.pem -OutFile C:\greengrass\v2\\AmazonRootCA1.pem
    sudo curl -o /greengrass/v2/AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem

設定裝置環境

請依照本節中的步驟設定 Linux 或 Windows 裝置,以用作您的 AWS IoT Greengrass 核心裝置。

設定 Linux 裝置

為 設定 Linux 裝置 AWS IoT Greengrass V2
  1. 安裝 AWS IoT Greengrass 執行核心軟體所需的 Java 執行期。我們建議您使用 Amazon CorrettoOpenJDK 長期支援版本。第 8 版或更新版本為必要項目。下列命令說明如何在裝置上安裝 OpenJDK。

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

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

      sudo yum install java-11-openjdk-devel
    • 針對 Amazon Linux 2:

      sudo amazon-linux-extras install java-openjdk11
    • 針對 Amazon Linux 2023:

      sudo dnf install java-11-amazon-corretto -y

    安裝完成時,請執行下列命令,以確認 Java 在您的 Linux 裝置上執行。

    java -version

    命令會列印在裝置上執行的 Java 版本。例如,在 Debian 型分佈上,輸出看起來可能會類似下列範例。

    openjdk version "11.0.9.1" 2020-11-04
    OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2)
    OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode)
  2. (選用) 建立在裝置上執行元件的預設系統使用者和群組。您也可以選擇讓 AWS IoT Greengrass Core 軟體安裝程式在安裝期間使用--component-default-user安裝程式引數建立此使用者和群組。如需詳細資訊,請參閱安裝程式引數

    sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
  3. 確認執行 AWS IoT Greengrass Core 軟體的使用者 (通常為 root) 具有許可,可sudo搭配任何使用者和任何群組執行 。

    1. 執行下列命令以開啟 /etc/sudoers 檔案。

      sudo visudo
    2. 確認使用者的許可如下所示。

      root ALL=(ALL:ALL) ALL
  4. (選用) 若要執行容器化 Lambda 函數,您必須啟用 cgroups v1,而且必須啟用並掛載記憶體裝置 cgroups。如果您不打算執行容器化 Lambda 函數,您可以略過此步驟。

    若要啟用這些 cgroups 選項,請使用下列 Linux 核心參數啟動裝置。

    cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0

    如需有關檢視和設定裝置核心參數的資訊,請參閱您作業系統和開機載入器的文件。依照指示永久設定核心參數。

  5. 在裝置上安裝所有其他必要的相依性,如 中的需求清單所示裝置要求

設定 Windows 裝置

注意

此功能適用於 Greengrass 核元件的 v2.5.0 和更新版本。

為 設定 Windows 裝置 AWS IoT Greengrass V2
  1. 安裝 AWS IoT Greengrass 執行核心軟體所需的 Java 執行期。我們建議您使用 Amazon CorrettoOpenJDK 長期支援版本。第 8 版或更新版本為必要項目。

  2. 檢查 PATH 系統變數上是否提供 Java,如果沒有,請新增 Java。LocalSystem 帳戶會執行 AWS IoT Greengrass Core 軟體,因此您必須將 Java 新增至 PATH 系統變數,而不是使用者的 PATH 使用者變數。請執行下列操作:

    1. 按 Windows 鍵開啟開始選單。

    2. 輸入 environment variables 以從開始功能表搜尋系統選項。

    3. 在開始功能表搜尋結果中,選擇編輯系統環境變數以開啟系統屬性視窗。

    4. 選擇環境變數...以開啟環境變數視窗。

    5. 系統變數下,選取路徑,然後選擇編輯。在編輯環境變數視窗中,您可以在單獨的一行上檢視每個路徑。

    6. 檢查 Java 安裝bin資料夾的路徑是否存在。路徑看起來可能會類似下列範例。

      C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
    7. 如果路徑中缺少 Java 安裝的bin資料夾,請選擇新增以新增,然後選擇確定

  3. 以管理員身分開啟 Windows 命令提示字元 (cmd.exe)。

  4. 在 Windows 裝置上的 LocalSystem 帳戶中建立預設使用者。將密碼取代為安全密碼。

    net user /add ggc_user password
    提示

    根據您的 Windows 組態,使用者的密碼可能會設定為在未來的日期過期。為了確保您的 Greengrass 應用程式持續運作,請追蹤密碼過期的時間,並在過期前更新它。您也可以將使用者的密碼設定為永不過期。

    • 若要檢查使用者及其密碼何時過期,請執行下列命令。

      net user ggc_user | findstr /C:expires
    • 若要將使用者的密碼設定為永不過期,請執行下列命令。

      wmic UserAccount where "Name='ggc_user'" set PasswordExpires=False
    • 如果您使用的是wmic已棄用命令的 Windows 10 或更新版本,請執行下列 PowerShell 命令。

      Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = 'ggc_user'" | Set-CimInstance -Property @{PasswordExpires="False"}
  5. 在裝置上從 Microsoft 下載並安裝 PsExec 公用程式

  6. 使用 PsExec 公用程式,將預設使用者的使用者名稱和密碼存放在 LocalSystem 帳戶的 Credential Manager 執行個體中。將密碼取代為您先前設定的使用者密碼。

    psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:password

    如果 PsExec License Agreement開啟,請選擇 以Accept同意授權並執行 命令。

    注意

    在 Windows 裝置上,LocalSystem 帳戶會執行 Greengrass 核,而且您必須使用 PsExec 公用程式將預設使用者資訊存放在 LocalSystem 帳戶中。使用 Credential Manager 應用程式會將此資訊存放在目前登入使用者的 Windows 帳戶中,而不是 LocalSystem 帳戶。

下載 AWS IoT Greengrass 核心軟體

您可以從下列位置下載最新版本 AWS IoT Greengrass 的核心軟體:

注意

您可以從下列位置下載特定版本的 AWS IoT Greengrass Core 軟體。將版本取代為要下載的版本。

https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip
下載 AWS IoT Greengrass Core 軟體
  1. 在您的核心裝置上,將 AWS IoT Greengrass Core 軟體下載至名為 的檔案greengrass-nucleus-latest.zip

    Linux or Unix
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    PowerShell
    iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip -OutFile greengrass-nucleus-latest.zip
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip

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

  2. (選用) 驗證 Greengrass 核軟體簽章

    注意

    此功能適用於 Greengrass nucleus 2.9.5 版及更新版本。

    1. 使用下列命令來驗證 Greengrass 核子成品的簽章:

      Linux or Unix
      jarsigner -verify -certs -verbose greengrass-nucleus-latest.zip
      Windows Command Prompt (CMD)

      檔案名稱看起來可能會有所不同,視您安裝的 JDK 版本而定。jdk17.0.6_10 將 取代為您安裝的 JDK 版本。

      "C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe" -verify -certs -verbose greengrass-nucleus-latest.zip
      PowerShell

      檔案名稱看起來可能會有所不同,視您安裝的 JDK 版本而定。jdk17.0.6_10 將 取代為您安裝的 JDK 版本。

      'C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe' -verify -certs -verbose greengrass-nucleus-latest.zip
      jarsigner -verify -certs -verbose greengrass-nucleus-latest.zip
    2. jarsigner 調用會產生輸出,指出驗證結果。

      1. 如果已簽署 Greengrass 核 zip 檔案,輸出會包含下列陳述式:

        jar verified.
      2. 如果未簽署 Greengrass 核 zip 檔案,輸出會包含下列陳述式:

        jar is unsigned.
    3. 如果您提供 Jarsigner -certs選項以及 -verify-verbose選項,輸出也會包含詳細的簽署者憑證資訊。

  3. 將 AWS IoT Greengrass Core 軟體解壓縮至裝置上的資料夾。將 GreengrassInstaller 取代為您要使用的資料夾。

    Linux or Unix
    unzip greengrass-nucleus-latest.zip -d GreengrassInstaller && rm greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    mkdir GreengrassInstaller && tar -xf greengrass-nucleus-latest.zip -C GreengrassInstaller && del greengrass-nucleus-latest.zip
    PowerShell
    Expand-Archive -Path greengrass-nucleus-latest.zip -DestinationPath .\\GreengrassInstaller rm greengrass-nucleus-latest.zip
    unzip greengrass-nucleus-latest.zip -d GreengrassInstaller && rm greengrass-nucleus-latest.zip
  4. (選用) 執行下列命令以查看 AWS IoT Greengrass Core 軟體的版本。

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
重要

如果您安裝比 v2.4.0 更早的 Greengrass 核版本,安裝 AWS IoT Greengrass 核心軟體後請勿移除此資料夾。Core AWS IoT Greengrass 軟體會使用此資料夾中的檔案來執行。

如果您下載最新版本的軟體,請安裝 v2.4.0 或更新版本,並在安裝 AWS IoT Greengrass Core 軟體後移除此資料夾。

下載 AWS IoT 機群佈建外掛程式

您可以從下列位置下載最新版本的 AWS IoT 機群佈建外掛程式:

注意

您可以從下列位置下載特定版本的 AWS IoT 機群佈建外掛程式。將版本取代為要下載的版本。如需每個機群佈建外掛程式版本的詳細資訊,請參閱 AWS IoT 機群佈建外掛程式 changelog

https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-version.jar

機群佈建外掛程式是開放原始碼。若要檢視其原始程式碼,請參閱 GitHub 上的AWS IoT 機群佈建外掛程式

下載 AWS IoT 機群佈建外掛程式
  • 在您的裝置上,將 AWS IoT 機群佈建外掛程式下載至名為 的檔案aws.greengrass.FleetProvisioningByClaim.jar。將 GreengrassInstaller 取代為您要使用的資料夾。

    Linux or Unix
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar > GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar
    Windows Command Prompt (CMD)
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar > GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar
    PowerShell
    iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar -OutFile GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar > GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar

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

安裝 AWS IoT Greengrass Core 軟體

使用指定下列動作的引數執行安裝程式:

  • 從指定使用機群佈建外掛程式佈建 AWS 資源的部分組態檔案安裝 。Core AWS IoT Greengrass 軟體使用組態檔案,指定裝置上每個 Greengrass 元件的組態。安裝程式會從您提供的部分組態檔案,以及機群佈建外掛程式建立 AWS 的資源,建立完整的組態檔案。

  • 指定 使用ggc_user系統使用者在核心裝置上執行軟體元件。在 Linux 裝置上,此命令也會指定 使用ggc_group系統群組,安裝程式會為您建立系統使用者和群組。

  • 將 AWS IoT Greengrass Core 軟體設定為開機時執行的系統服務。在 Linux 裝置上,這需要 Systemd init 系統。

    重要

    在 Windows 核心裝置上,您必須將 AWS IoT Greengrass Core 軟體設定為系統服務。

如需可指定引數的詳細資訊,請參閱安裝程式引數

注意

如果您在記憶體有限的 AWS IoT Greengrass 裝置上執行 ,您可以控制 AWS IoT Greengrass Core 軟體使用的記憶體量。若要控制記憶體配置,您可以在 核子元件的jvmOptions組態參數中設定 JVM 堆積大小選項。如需詳細資訊,請參閱使用 JVM 選項控制記憶體配置

安裝 AWS IoT Greengrass Core 軟體
  1. 檢查 AWS IoT Greengrass Core 軟體的版本。

    • GreengrassInstaller 取代為包含 軟體之資料夾的路徑。

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
  2. 使用文字編輯器來建立名為 的組態檔案config.yaml,以提供給安裝程式。

    例如,在以 Linux 為基礎的系統上,您可以執行下列命令來使用 GNU nano 來建立 檔案。

    nano GreengrassInstaller/config.yaml

    將下列 YAML 內容複製到 檔案。此部分組態檔案會指定機群佈建外掛程式的參數。如需您可以指定之選項的詳細資訊,請參閱設定 AWS IoT 機群佈建外掛程式

    Linux or Unix
    --- services: aws.greengrass.Nucleus: version: "2.14.0" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "/greengrass/v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "/greengrass/v2/claim-certs/claim.pem.crt" claimCertificatePrivateKeyPath: "/greengrass/v2/claim-certs/claim.private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup"
    Windows
    --- services: aws.greengrass.Nucleus: version: "2.14.0" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "C:\\greengrass\\v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "C:\\greengrass\\v2\\claim-certs\\claim.pem.crt" claimCertificatePrivateKeyPath: "C:\\greengrass\\v2\\claim-certs\\claim.private.pem.key" rootCaPath: "C:\\greengrass\\v2\\AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup"
    --- services: aws.greengrass.Nucleus: version: "2.14.0" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "/greengrass/v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "/greengrass/v2/claim-certs/claim.pem.crt" claimCertificatePrivateKeyPath: "/greengrass/v2/claim-certs/claim.private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup"

    然後,執行下列動作:

    • 2.14.0 取代為 AWS IoT Greengrass 核心軟體版本。

    • /greengrass/v2C:\greengrass\v2 的每個執行個體取代為 Greengrass 根資料夾。

      注意

      在 Windows 裝置上,您必須將路徑分隔符號指定為雙反斜線 (\\),例如 C:\\greengrass\\v2

    • us-west-2 取代為您建立佈建範本和其他資源 AWS 的區域。

    • 將 取代iotDataEndpoint為 AWS IoT 資料端點。

    • 將 取代iotCredentialEndpoint為您的 AWS IoT 登入資料端點。

    • 以字符交換角色別名的名稱取代 GreengrassCoreTokenExchangeRoleAlias

    • 以機群佈建範本的名稱取代 GreengrassFleetProvisioningTemplate

    • 將 取代claimCertificatePath為裝置上的宣告憑證路徑。

    • 將 取代claimCertificatePrivateKeyPath為裝置上的宣告憑證私有金鑰路徑。

    • 將範本參數 (templateParameters) 取代為用來佈建裝置的值。此範例是指定義 ThingNameThingGroupName 參數的範例範本

    注意

    在此組態檔案中,您可以自訂其他組態選項,例如要使用的連接埠和網路代理,如下列範例所示。如需詳細資訊,請參閱 Greengrass 核組態

    Linux or Unix
    --- services: aws.greengrass.Nucleus: version: "2.14.0" configuration: mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "http://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "/greengrass/v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "/greengrass/v2/claim-certs/claim.pem.crt" claimCertificatePrivateKeyPath: "/greengrass/v2/claim-certs/claim.private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup" mqttPort: 443 proxyUrl: "http://my-proxy-server:1100" proxyUserName: "Mary_Major" proxyPassword: "pass@word1357"
    Windows
    --- services: aws.greengrass.Nucleus: version: "2.14.0" configuration: mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "http://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "C:\\greengrass\\v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "C:\\greengrass\\v2\\claim-certs\\claim.pem.crt" claimCertificatePrivateKeyPath: "C:\\greengrass\\v2\\claim-certs\\claim.private.pem.key" rootCaPath: "C:\\greengrass\\v2\\AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup" mqttPort: 443 proxyUrl: "http://my-proxy-server:1100" proxyUserName: "Mary_Major" proxyPassword: "pass@word1357"
    --- services: aws.greengrass.Nucleus: version: "2.14.0" configuration: mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "http://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "/greengrass/v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "/greengrass/v2/claim-certs/claim.pem.crt" claimCertificatePrivateKeyPath: "/greengrass/v2/claim-certs/claim.private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup" mqttPort: 443 proxyUrl: "http://my-proxy-server:1100" proxyUserName: "Mary_Major" proxyPassword: "pass@word1357"

    若要使用 HTTPS 代理,您必須使用 1.1.0 版或更新版本的機群佈建外掛程式。您必須另外在 rootCaPath下指定 system,如下列範例所示。

    Linux or Unix
    --- system: rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" services: ...
    Windows
    --- system: rootCaPath: "C:\\greengrass\\v2\\AmazonRootCA1.pem" services: ...
    --- system: rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" services: ...
  3. 執行安裝程式。指定 --trusted-plugin以提供機群佈建外掛程式,並指定 --init-config 提供組態檔案。

    • /greengrass/v2 將 取代為 Greengrass 根資料夾。

    • GreengrassInstaller 的每個執行個體取代為您解壓縮安裝程式的資料夾。

    Linux or Unix
    sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./GreengrassInstaller/lib/Greengrass.jar \ --trusted-plugin ./GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar \ --init-config ./GreengrassInstaller/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service true
    Windows Command Prompt (CMD)
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ^ -jar ./GreengrassInstaller/lib/Greengrass.jar ^ --trusted-plugin ./GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar ^ --init-config ./GreengrassInstaller/config.yaml ^ --component-default-user ggc_user ^ --setup-system-service true
    PowerShell
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ` -jar ./GreengrassInstaller/lib/Greengrass.jar ` --trusted-plugin ./GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar ` --init-config ./GreengrassInstaller/config.yaml ` --component-default-user ggc_user ` --setup-system-service true
    sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./GreengrassInstaller/lib/Greengrass.jar \ --trusted-plugin ./GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar \ --init-config ./GreengrassInstaller/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service true
    重要

    在 Windows 核心裝置上,您必須指定 將 AWS IoT Greengrass 核心軟體--setup-system-service true設定為系統服務。

    如果您指定 --setup-system-service trueSuccessfully set up Nucleus as a system service安裝程式會在設定和執行軟體時列印為系統服務。否則,如果安裝程式成功安裝軟體,就不會輸出任何訊息。

    注意

    當您在沒有 deploy-dev-tools 引數的情況下執行安裝程式時,無法使用 --provision true引數來部署本機開發工具。如需直接在您的裝置上部署 Greengrass CLI 的詳細資訊,請參閱Greengrass 命令列界面

  4. 檢視根資料夾中的檔案來驗證安裝。

    Linux or Unix
    ls /greengrass/v2
    Windows Command Prompt (CMD)
    dir C:\greengrass\v2
    PowerShell
    ls C:\greengrass\v2
    ls /greengrass/v2

    如果安裝成功,根資料夾包含數個資料夾,例如 configpackageslogs

如果您將 AWS IoT Greengrass Core 軟體安裝為系統服務,安裝程式會為您執行軟體。否則,您必須手動執行軟體。如需詳細資訊,請參閱執行 AWS IoT Greengrass Core 軟體

如需如何設定和使用 軟體的詳細資訊 AWS IoT Greengrass,請參閱下列內容:

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。