使用 AWS IoT Greengrass 在 Snowball Edge 上的 Amazon EC2-compatible執行個體上執行預先安裝的軟體 - AWS Snowball 邊緣 開發人員指南

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

使用 AWS IoT Greengrass 在 Snowball Edge 上的 Amazon EC2-compatible執行個體上執行預先安裝的軟體

AWS IoT Greengrass 是一種開放原始碼物聯網 (IoT) 邊緣執行期和雲端服務,可協助您在裝置上建置、部署和管理 IoT 應用程式。您可以使用 AWS IoT Greengrass 建置軟體,讓裝置在本機對產生的資料採取行動、根據機器學習模型執行預測,以及篩選和彙總裝置資料。如需詳細資訊 AWS IoT Greengrass,請參閱《 AWS IoT Greengrass Version 2 開發人員指南》中的什麼是 AWS IoT Greengrass?

透過 AWS IoT Greengrass 在 Snowball Edge 裝置上使用 ,您可以讓裝置收集和分析更接近其產生位置的資料、自動回應本機事件,以及與本機網路上的其他裝置進行安全通訊。

在 Snowball Edge AWS IoT Greengrass 上為 設定 EC2-compatible執行個體

注意

若要 AWS IoT Greengrass Version 2 在 Snowball Edge 裝置上安裝 ,請確定您的裝置已連線至網際網路。安裝後,Snowball Edge 裝置不需要網際網路即可使用 AWS IoT Greengrass。

設定 EC2-compatible執行個體 AWS IoT Greengrass V2
  1. 使用公有 IP 地址和 SSH 金鑰啟動 AWS IoT Greengrass 已驗證的 AMI:

    1. 使用 AWS CLI:run-instances

    2. 使用 AWS OpsHub:啟動與 Amazon EC2-compatible執行個體

    注意

    請記下與執行個體相關聯的公有 IP 地址和 SSH 金鑰名稱。

  2. 使用 SSH EC2-compatible執行個體。若要這麼做,請在連線至您裝置的電腦上執行下列命令。將 ssh-key 取代為您用來啟動 EC2-compatible執行個體的金鑰。將 public-ip-address 取代為 EC2-compatible執行個體的公有 IP 地址。

    ssh -i ssh-key ec2-user@ public-ip-address
    重要

    如果您的電腦使用舊版的 Microsoft Windows,您可能沒有 SSH 命令,或者您可能有 SSH,但無法連線到與 EC2-compatible執行個體。若要連線至與 EC2-compatible執行個體,您可以安裝和設定 PuTTY,這是一種免費的開放原始碼 SSH 用戶端。您必須將 SSH 金鑰從.pem格式轉換為 PuTTY 格式,並連線至 EC2 執行個體。如需如何從 .pem 轉換為 PuTTY 格式的指示,請參閱《Amazon EC2 使用者指南》中的使用 PuTTYgen 轉換私有金鑰

在 Snowball Edge AWS IoT Greengrass 上的 EC2 相容執行個體上安裝 EC2-compatible

接下來,您將 EC2-compatible執行個體設定為可用於本機開發 AWS IoT Greengrass 的核心裝置。

安裝 AWS IoT Greengrass
  1. 使用下列命令來安裝 的先決條件軟體 AWS IoT Greengrass。此命令會安裝 AWS Command Line Interface (AWS CLI) v2、Python 3 和 Java 8。

    curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" && unzip awscliv2.zip && sudo ./aws/install && sudo yum -y install python3 java-1.8.0-openjdk
  2. 授予根使用者執行 AWS IoT Greengrass 軟體的許可,並在 sudoers 組態檔案中將根許可從 root ALL=(ALL:ALL) ALL 修改root ALL=(ALL) ALL為 。

    sudo sed -in 's/root\tALL=(ALL)/root\tALL=(ALL:ALL)/' /etc/sudoers
  3. 使用以下命令下載 AWS IoT Greengrass Core 軟體。

    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip && unzip greengrass-nucleus-latest.zip -d GreengrassCore && rm greengrass-nucleus-latest.zip
  4. 使用以下命令提供登入資料,以允許您安裝 AWS IoT Greengrass Core 軟體。將範例值取代為您的登入資料:

    export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
    注意

    這些是 AWS 區域中 IAM 使用者的登入資料,而不是 Snowball Edge 裝置。

  5. 使用下列命令來安裝 AWS IoT Greengrass Core 軟體。此命令會建立核心軟體操作所需的 AWS 資源,並將核心軟體設定為在 AMI 開機時執行的系統服務。

    在 命令中取代下列參數:

    • region:尋找或建立資源 AWS 的區域。

    • MyGreengrassCore: AWS IoT Greengrass 核心裝置的 AWS IoT 物件名稱。

    • MyGreengrassCoreGroup: AWS IoT Greengrass 核心裝置的 AWS IoT 物件群組名稱。

    sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./GreengrassInstaller/lib/Greengrass.jar \ --aws-region region \ --thing-name MyGreengrassCore \ --thing-group-name MyGreengrassCoreGroup \ --thing-policy-name GreengrassV2IoTThingPolicy \ --tes-role-name GreengrassV2TokenExchangeRole \ --tes-role-alias-name GreengrassCoreTokenExchangeRoleAlias \ --component-default-user ggc_user:ggc_group \ --provision true \ --setup-system-service true \ --deploy-dev-tools true
    注意

    此命令適用於執行 Amazon Linux EC2-compatible執行個體。如需 Windows AMI,請參閱安裝 AWS IoT Greengrass 核心軟體

完成後,您會在 Snowball Edge 裝置上執行 AWS IoT Greengrass 核心以供本機使用。