安装Amazon IoT Greengrass具有手动资源调配的核心软件 - Amazon IoT Greengrass
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

安装Amazon IoT Greengrass具有手动资源调配的核心软件

这些区域有:Amazon IoT Greengrass核心软件包括一个安装程序,将您的设备设置为 Greengrass 的核心设备。要手动设置设备,您可以创建所需的Amazon IoT和要使用的设备的 IAM 资源。如果您手动创建这些资源,则无需提供Amazon凭据添加到安装程序。

当您手动安装Amazon IoT Greengrass核心软件,您还可以将设备配置为使用网络代理或连接Amazon端口 443 上的。例如,如果您的设备运行在防火墙或网络代理之后,则可能需要指定这些配置选项。有关更多信息,请参阅通过端口 443 或网络代理进行连接

重要

在您下载Amazon IoT Greengrass核心软件,请检查您的核心设备是否满足要求来安装并运行Amazon IoT GreengrassCore 软件 2.0.

创建Amazon IoTthing

Amazon IoT things表示连接到Amazon IoT. Greengrass 核心设备Amazon IoT事物。当您将设备注册为Amazon IoT事情,该设备可以使用数字证书来验证Amazon. 此证书允许设备与Amazon IoT和Amazon IoT Greengrass.

在本部分中,您将创建一个Amazon IoT事物并下载证书,您的设备可用于连接到Amazon.

创建Amazon IoTthing

  1. 创建Amazon IoT事物。在您的开发计算机上,运行以下命令。

    • Replace我的绿色草原替换为要使用的事物名称。此名称也是 Greengrass 核心设备的名称。

      注意

      事物名中不得含有冒号(:) 字符。

    aws iot create-thing --thing-name MyGreengrassCore

    响应类似于以下示例,如果请求成功。

    { "thingName": "MyGreengrassCore", "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "thingId": "8cb4b6cd-268e-495d-b5b9-1713d71dbf42" }
  2. 创建一个文件夹,您可以在其中下载Amazon IoT事物。

    mkdir greengrass-v2-certs
  3. 创建并下载Amazon IoT事物。

    aws iot create-keys-and-certificate --set-as-active --certificate-pem-outfile greengrass-v2-certs/device.pem.crt --public-key-outfile greengrass-v2-certs/public.pem.key --private-key-outfile greengrass-v2-certs/private.pem.key

    响应类似于以下示例,如果请求成功。

    { "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificateId": "aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificatePem": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkEXAMPLEQEFAAOCAQ8AMIIBCgKCAQEAEXAMPLE1nnyJwKSMHw4h\nMMEXAMPLEuuN/dMAS3fyce8DW/4+EXAMPLEyjmoF/YVF/gHr99VEEXAMPLE5VF13\n59VK7cEXAMPLE67GK+y+jikqXOgHh/xJTwo+sGpWEXAMPLEDz18xOd2ka4tCzuWEXAMPLEahJbYkCPUBSU8opVkR7qkEXAMPLE1DR6sx2HocliOOLtu6Fkw91swQWEXAMPLE\GB3ZPrNh0PzQYvjUStZeccyNCx2EXAMPLEvp9mQOUXP6plfgxwKRX2fEXAMPLEDa\nhJLXkX3rHU2xbxJSq7D+XEXAMPLEcw+LyFhI5mgFRl88eGdsAEXAMPLElnI9EesG\nFQIDAQAB\n-----END PUBLIC KEY-----\n", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\nkey omitted for security reasons\n-----END RSA PRIVATE KEY-----\n" } }
  4. 将证书附加至Amazon IoT事物。

    • Replace我的绿色草原的名称为您的Amazon IoT事物。

    • 将证书 Amazon 资源名称 (ARN) 替换为您在上一步中创建的证书的 ARN。

    aws iot attach-thing-principal --thing-name MyGreengrassCore --principal arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4

    如果请求成功,命令没有任何输出。

  5. 创建并连接到Amazon IoT策略,该策略定义Amazon IoT权限。以下策略允许访问所有 MQTT 主题和 Greengrass 操作,因此您的设备适用于需要新 Greengrass 操作的自定义应用程序和未来更改。您可以基于自己的使用案例来限制此策略。有关更多信息,请参阅最低Amazon IoT用于 的 策略Amazon IoT Greengrass V2核心设备

    如果您之前已经设置过 Greengrass 核心设备,您可以将其Amazon IoT策略而不是创建新的。

    执行以下操作:

    1. 创建包含Amazon IoT策略文档,这是 Greengrass 核心设备所需的。

      nano greengrass-v2-iot-policy.json

      将以下 JSON 复制到该文件中。

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish", "iot:Subscribe", "iot:Receive", "iot:Connect", "greengrass:*" ], "Resource": [ "*" ] } ] }
    2. 创建Amazon IoT策略从策略文档。

      • Replace绿色草原 V2 政策替换为要创建的策略的名称。

      aws iot create-policy --policy-name GreengrassV2IoTThingPolicy --policy-document file://greengrass-v2-iot-policy.json

      响应类似于以下示例,如果请求成功。

      { "policyName": "GreengrassV2IoTThingPolicy", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GreengrassV2IoTThingPolicy", "policyDocument": "{ \"Version\": \"2012-10-17\", \"Statement\": [ { \"Effect\": \"Allow\", \"Action\": [ \"iot:Publish\", \"iot:Subscribe\", \"iot:Receive\", \"iot:Connect\", \"greengrass:*\" ], \"Resource\": [ \"*\" ] } ] }", "policyVersionId": "1" }
    3. 将附加到Amazon IoT策略添加到Amazon IoT事物的证书。

      • Replace绿色草原 V2 政策替换为要附加的策略的名称。

      • 将目标 ARN 替换为您的证书的 ARN。Amazon IoT事物。

      aws iot attach-policy --policy-name GreengrassV2IoTThingPolicy --target arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4

      如果请求成功,命令没有任何输出。

  6. (可选)添加Amazon IoT事物添加到新的或现有事物组。您可以使用事物组来管理 Greengrass 核心设备的车队。在将软件组件部署到设备时,可以选择针对单个设备或设备组。您可以将设备添加到具有活动 Greengrass 部署的事物组,以将该事物组的软件组件部署到该设备。执行以下操作:

    1. (可选)创建Amazon IoT事物组。

      • Replace我的格林格拉斯考雷集团替换为要创建的事物组的名称。

        注意

        事物组名中不得含有冒号 (:) 字符。

      aws iot create-thing-group --thing-group-name MyGreengrassCoreGroup

      响应类似于以下示例,如果请求成功。

      { "thingGroupName": "MyGreengrassCoreGroup", "thingGroupArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "thingGroupId": "4df721e1-ff9f-4f97-92dd-02db4e3f03aa" }
    2. 将添加到Amazon IoT事物到事物组。

      • Replace我的绿色草原的名称为您的Amazon IoT事物。

      • Replace我的格林格拉斯考雷集团(事物组的名称)。

      aws iot add-thing-to-thing-group --thing-name MyGreengrassCore --thing-group-name MyGreengrassCoreGroup

      如果请求成功,命令没有任何输出。

检索Amazon IoT终端节点

GetAmazon IoT您的终端节点Amazon Web Services 账户,然后保存它们以便稍后使用。您的设备使用这些端点连接到Amazon IoT. 执行以下操作:

  1. GetAmazon IoT数据终端节点Amazon Web Services 账户.

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

    响应类似于以下示例,如果请求成功。

    { "endpointAddress": "device-data-prefix-ats.iot.us-west-2.amazonaws.com" }
  2. GetAmazon IoT凭据终端节点Amazon Web Services 账户.

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

    响应类似于以下示例,如果请求成功。

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

创建令牌交换角色

Greengrass 核心设备使用 IAM 服务角色,称为令牌交换角色,以授权调用Amazon服务。该设备使用Amazon IoT凭证提供程序来获取临时Amazon凭据,这允许设备与Amazon IoT,将日志发送到 Amazon CloudWatch Logs,并从 Amazon S3 下载自定义组件工件。有关更多信息,请参阅授权核心设备与Amazon服务

您使用Amazon IoT 角色别名配置 Greengrass 核心设备的令牌交换角色。角色别名使您能够更改设备的令牌交换角色,但使设备配置保持不变。有关更多信息,请参阅 。授予直接调用Amazon服务中的Amazon IoT Core开发人员指南.

在本部分中,您创建令牌交换 IAM 角色和Amazon IoT角色别名,指向角色。如果您已经设置了 Greengrass 核心设备,则可以使用其令牌交换角色和角色别名,而不是创建新的。然后,您可以配置设备的Amazon IoT使用该角色和别名的东西。

创建令牌交换 IAM 角色

  1. 创建一个 IAM 角色,您的设备可用作令牌交换角色。执行以下操作:

    1. 创建包含令牌交换角色所需的信任策略文档的文件。

      nano device-role-trust-policy.json

      将以下 JSON 复制到该文件中。

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
    2. 使用信任策略文档创建令牌交换角色。

      • Replace绿草 V2 代码交换器替换为要创建的 IAM 角色的名称。

      aws iam create-role --role-name GreengrassV2TokenExchangeRole --assume-role-policy-document file://device-role-trust-policy.json

      响应类似于以下示例,如果请求成功。

      { "Role": { "Path": "/", "RoleName": "GreengrassV2TokenExchangeRole", "RoleId": "AROAZ2YMUHYHK5OKM77FB", "Arn": "arn:aws:iam::123456789012:role/GreengrassV2TokenExchangeRole", "CreateDate": "2021-02-06T00:13:29+00:00", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } }
    3. 创建一个文件,其中包含令牌交换角色所需的访问策略文档。

      nano device-role-access-policy.json

      将以下 JSON 复制到该文件中。

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:DescribeCertificate", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams", "iot:Connect", "iot:Publish", "iot:Subscribe", "iot:Receive", "s3:GetBucketLocation" ], "Resource": "*" } ] }
      注意

      此访问策略不允许访问 S3 存储桶中的组件对象。要部署用于在 Amazon S3 中定义对象的自定义组件,您必须向角色添加权限,以允许核心设备检索组件工件。有关更多信息,请参阅允许访问 S3 存储桶

      如果您还没有用于组件对象的 S3 存储桶,您可以稍后在创建存储桶后添加这些权限。

    4. 从策略文档创建 IAM 策略。

      • Replace绿色草原 V2 代币交换访问替换为要创建的 IAM 策略的名称。

      aws iam create-policy --policy-name GreengrassV2TokenExchangeRoleAccess --policy-document file://device-role-access-policy.json

      响应类似于以下示例,如果请求成功。

      { "Policy": { "PolicyName": "GreengrassV2TokenExchangeRoleAccess", "PolicyId": "ANPAZ2YMUHYHACI7C5Z66", "Arn": "arn:aws:iam::123456789012:policy/GreengrassV2TokenExchangeRoleAccess", "Path": "/", "DefaultVersionId": "v1", "AttachmentCount": 0, "PermissionsBoundaryUsageCount": 0, "IsAttachable": true, "CreateDate": "2021-02-06T00:37:17+00:00", "UpdateDate": "2021-02-06T00:37:17+00:00" } }
    5. 将 IAM 策略附加到令牌交换角色。

      • Replace绿草 V2 代码交换器(使用 IAM 角色的名称)。

      • 将策略 ARN 替换为您在上一步中创建的 IAM 策略的 ARN。

      aws iam attach-role-policy --role-name GreengrassV2TokenExchangeRole --policy-arn arn:aws:iam::123456789012:policy/GreengrassV2TokenExchangeRoleAccess

      如果请求成功,命令没有任何输出。

  2. 创建Amazon IoT角色别名,指向令牌交换角色。

    • Replace绿色草芯代币交换别名替换为要创建的角色别名的名称。

    • 将角色 ARN 替换为您在上一步中创建的 IAM 角色的 ARN。

    aws iot create-role-alias --role-alias GreengrassCoreTokenExchangeRoleAlias --role-arn arn:aws:iam::123456789012:role/GreengrassV2TokenExchangeRole

    响应类似于以下示例,如果请求成功。

    { "roleAlias": "GreengrassCoreTokenExchangeRoleAlias", "roleAliasArn": "arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias" }
    注意

    要创建角色别名,您必须有权将令牌交换 IAM 角色传递给Amazon IoT. 如果您在尝试创建角色别名时收到错误消息,请检查Amazon用户具有此权限。有关更多信息,请参阅 。向用户授予权限以将角色传递给Amazon服务中的Amazon Identity and Access Management用户指南.

  3. 创建并连接到Amazon IoT策略,该策略允许您的 Greengrass 核心设备使用角色别名来代入令牌交换角色。如果您之前已经设置过 Greengrass 核心设备,则可以附加其角色别名Amazon IoT策略而不是创建新的。执行以下操作:

    1. (可选)创建包含Amazon IoT角色别名所需的策略文档。

      nano greengrass-v2-iot-role-alias-policy.json

      将以下 JSON 复制到该文件中。

      • 将资源 ARN 替换为角色别名的 ARN。

      { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:AssumeRoleWithCertificate", "Resource": "arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias" } ] }
    2. 创建Amazon IoT策略从策略文档。

      • Replace绿色草原代币交易所别墅政策的名称为Amazon IoT策略创建。

      aws iot create-policy --policy-name GreengrassCoreTokenExchangeRoleAliasPolicy --policy-document file://greengrass-v2-iot-role-alias-policy.json

      响应类似于以下示例,如果请求成功。

      { "policyName": "GreengrassCoreTokenExchangeRoleAliasPolicy", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GreengrassCoreTokenExchangeRoleAliasPolicy", "policyDocument": "{ \"Version\":\"2012-10-17\", \"Statement\": [ { \"Effect\": \"Allow\", \"Action\": \"iot:AssumeRoleWithCertificate\", \"Resource\": \"arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias\" } ] }", "policyVersionId": "1" }
    3. 将附加到Amazon IoT策略添加到Amazon IoT事物的证书。

      • Replace绿色草原代币交易所别墅政策使用角色别名的名称Amazon IoT政策。

      • 将目标 ARN 替换为您的证书的 ARN。Amazon IoT事物。

      aws iot attach-policy --policy-name GreengrassCoreTokenExchangeRoleAliasPolicy --target arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4

      如果请求成功,命令没有任何输出。

将证书下载到设备

之前,您将设备的证书下载到开发计算机。在本节中,您将这些证书复制到您的设备中使用设备连接到Amazon IoT.

将证书下载到设备

  1. 将复制Amazon IoT事物证书从您的开发计算机到设备。您也许能够使用scp命令,例如。

    • Replace设备 IP 地址使用您的设备的 IP。

    scp -r greengrass-v2-certs/ device-ip-address:~
  2. 在设备上创建 Greengrass 根文件夹。您稍后将安装Amazon IoT Greengrass核心软件添加到此文件夹。

    • Replace/绿草/v2将添加到要使用的文件夹。

    sudo mkdir -p /greengrass/v2
  3. 设置 Greengrass 根文件夹的父文件夹的权限。

    • Replace/Greengrass与根文件夹的父文件夹。

    sudo chmod 755 /greengrass
  4. 将复制Amazon IoT事物证书添加到 Greengrass 根文件夹中。

    • Replace/绿草/v2与 Greengrass 根文件夹。

    sudo cp -R ~/greengrass-v2-certs/* /greengrass/v2
  5. 下载亚马逊根证书颁发机构 (CA) 证书。Amazon IoT证书默认与亚马逊的根 CA 证书关联。

    sudo curl -o /greengrass/v2/AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem

下载Amazon IoT GreengrassCore 软件

您可以下载最新版本的Amazon IoT Greengrass核心软件来自以下位置:

注意

您可以下载特定版本的Amazon IoT Greengrass来自以下位置的核心软件。Replaceversion与要下载的版本。

https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip

下载Amazon IoT Greengrass核心软件

  1. 在您的设备上,下载Amazon IoT Greengrass核心软件转换为名为greengrass-nucleus-latest.zip.

    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip

    一旦下载此软件,即表示您同意Greengrass 核心软件许可协议.

  2. 解压缩Amazon IoT Greengrass核心软件添加到设备上的文件夹中。Replace绿色草原与您要使用的文件夹。

    unzip greengrass-nucleus-latest.zip -d GreengrassCore && rm greengrass-nucleus-latest.zip
    重要

    如果您安装早于 v2.4.0 版本的 Greengrass 核心,请不要删除此文件夹后安装Amazon IoT GreengrassCore 软件。这些区域有:Amazon IoT Greengrass核心软件使用此文件夹中的文件来运行。

    如果您下载了最新版本的软件,请安装 v2.4.0 或更高版本,并且可以在安装Amazon IoT GreengrassCore 软件。

  3. (可选)运行以下命令,查看Amazon IoT GreengrassCore 软件。

    java -jar ./GreengrassCore/lib/Greengrass.jar --version

安装 Amazon IoT Greengrass Core 软件

使用指定以下操作的参数运行安装程序:

  • 从部分配置文件安装,该文件指定使用Amazon资源和您之前创建的证书。这些区域有:Amazon IoT Greengrass核心软件使用配置文件,用于指定设备上每个 Greengrass 组件的配置。安装程序从您提供的部分配置文件中创建完整的配置文件。

  • 使用ggc_user系统用户和ggc_group系统组以在核心设备上运行软件组件。如果此默认用户和组不存在,则安装程序将创建这些用户和组。

  • 将软件安装为启动时运行的系统服务,如果您的设备具有systemdinit 系统。

有关可以指定的参数的详细信息,请参阅安装程序参数.

注意

如果您运行Amazon IoT Greengrass在内存有限的设备上,您可以控制Amazon IoT GreengrassCore 软件使用。要控制内存分配,可以在jvmOptions配置参数。有关更多信息,请参阅使用 JVM 选项控制内存分配

安装Amazon IoT Greengrass核心软件

  1. 检查版本Amazon IoT GreengrassCore 软件。

    • Replace绿色草原将替换为包含软件的文件夹的路径。

    java -jar ./GreengrassCore/lib/Greengrass.jar --version
  2. 使用文本编辑器创建名为config.yaml以提供给安装程序。

    例如,在基于 Linux 的系统上,您可以运行以下命令来使用 GNU nano 创建config.yaml中的绿色草原folder。

    nano GreengrassCore/config.yaml

    将以下 YAML 内容复制到该文件中。此部分配置文件指定系统参数和 Greengrass 核参数。

    --- system: certificateFilePath: "/greengrass/v2/device.pem.crt" privateKeyPath: "/greengrass/v2/private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" rootpath: "/greengrass/v2" thingName: "MyGreengrassCore" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.4.0" configuration: awsRegion: "us-west-2" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com"

    然后,执行以下操作:

    • 替换/绿草/v2与 Greengrass 根文件夹。

    • Replace我的绿色草原的名称为Amazon IoT事物。

    • Replace2.4.0版本的Amazon IoT GreengrassCore 软件。

    • Replaceus-west-2与Amazon Web Services 区域创建资源的位置。

    • Replace绿色草芯代币交换别名替换为令牌交换角色别名的名称。

    • 替换iotDataEndpoint使用您的Amazon IoT数据终端节点。

    • 替换iotCredEndpoint使用您的Amazon IoT凭证终端节点。

    注意

    在此配置文件中,您可以自定义其他核心配置选项,例如要使用的端口和网络代理,如以下示例所示。有关更多信息,请参阅 。Greengrass 核配置.

    --- system: certificateFilePath: "/greengrass/v2/device.pem.crt" privateKeyPath: "/greengrass/v2/private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" rootpath: "/greengrass/v2" thingName: "MyGreengrassCore" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.4.0" configuration: awsRegion: "us-west-2" iotCredEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "https://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357"
  3. 运行安装程序,并指定--init-config以提供配置文件。

    • Replace/绿草/v2与 Greengrass 根文件夹。

    • 替换绿色草原与您解压安装程序的文件夹一起使用。

    sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./GreengrassCore/lib/Greengrass.jar \ --init-config ./GreengrassCore/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service true

    如果您指定--setup-system-service true,安装程序将打印Successfully set up Nucleus as a system service(如果它将软件作为系统服务设置并运行)。否则,如果安装程序成功安装软件,则不会输出任何消息。

    注意

    您不能使用deploy-dev-tools参数在运行安装程序时部署本地开发工具--provision true参数。有关直接在设备上部署 Greengrass CLI 的信息,请参阅Greengrass.

  4. 通过查看根文件夹中的文件来验证安装。

    ls /greengrass/v2

    如果安装成功,则根文件夹包含多个文件夹,例如configpackages, 和logs.

如果您安装了Amazon IoT Greengrass核心软件作为系统服务,安装程序会为您运行该软件。否则,必须手动运行该软件。有关更多信息,请参阅运行Amazon IoT GreengrassCore 软件

有关如何配置和使用软件和Amazon IoT Greengrass中,请参阅: