配置网关 - Amazon IoT SiteWise
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

配置网关

用作 Server 和之间中介的网关Amazon IoT SiteWise. 你可以部署Amazon IoT SiteWise任何可以运行的平台上的网关软件Amazon IoT Greengrass. 有关更多信息,请参阅 选择网关平台

要配置在 Amazon EC2 上运行的网关,您可以从Amazon CloudFormation模板。有关更多信息,请参阅 在 Amazon Elastic Compute Cl

注意

建议您与对您的本地和公司网络具有 IT 管理访问权限的人员完成以下步骤。这些步骤可能需要了解您的服务器的人员和颁发机构来配置防火墙设置。

设置网关环境

在此过程中,您将安装 Amazon IoT Greengrass 并配置要用于 Amazon IoT SiteWise 的网关。

注意

此节包括使用 apt 命令安装软件包的说明。适用于运行 Ubuntu 或类似工具的系统。如果您使用的不是类似的系统,请参阅供您分发的文档并使用推荐的软件包安装程序。

设置网关

  1. 根据需要,如下修改网关的 BIOS 设置。

    1. 确保网关在潜在的电源故障后自动重启(如果适用)。

    2. 确保网关不会休眠或睡眠(如果适用)。

  2. 确保网关连接到 Internet。

  3. (可选)要在没有鼠标、键盘和监视器的情况下使用网关,请按照以下步骤在网关 ssh 上进行设置:

    1. 如果您尚未安装 SSH 软件包,请运行以下命令。

      sudo apt install ssh
    2. 运行以下命令。

      service ssh status
    3. 在输出中搜索 Active: active (running) 以确认 SSH 服务器处于运行状态。

    4. Q 退出。

    运行以下命令以使用 SSH 从另一台计算机连接到网关。将 username 替换为用户登录名,并将 IP 替换为网关的 IP 地址。

    ssh username@IP

    您可以使用 -p port-number 参数连接到默认端口 22 以外的端口。

  4. 下载并安装Amazon IoT GreengrassCore 软件 v1.10.2 或更高版本,并创建一个Amazon IoT Greengrass您的网关的组。为此,请按照中的说明进行操作开始使用Amazon IoT Greengrass中的Amazon IoT Greengrass开发人员指南.

    建议您运行 Amazon IoT Greengrass 设备设置脚本以快速开始。如果您希望更仔细地查看 Amazon IoT Greengrass 要求和流程,可以逐步完成模块 1模块 2 中的步骤来设置 Amazon IoT Greengrass。

    重要

    查看Amazon区域哪里Amazon IoT SiteWise支持。为区域选择 Amazon IoT Greengrass 时,请确保该区域同样支持 Amazon IoT SiteWise。否则,您无法将网关连接到 Amazon IoT SiteWise。

    您应该先在网关上安装 Amazon IoT Greengrass Core 软件,然后再继续执行下一步。

  5. 运行以下命令安装 Java 8:

    sudo apt update sudo apt install openjdk-8-jre

    本指南下文中安装的 Amazon IoT SiteWise 网关软件使用 Java 8 运行时。

  6. 运行以下命令验证是否已成功安装 Java。

    java -version
  7. Amazon IoT Greengrass 核心软件假定一个 java8 目录。运行以下命令将 Java 安装链接到该 java8 目录。

    sudo ln -s /usr/bin/java /usr/bin/java8
  8. 运行以下命令创建一个 /var/sitewise 数据目录并提供该目录的 ggc_user 权限。Amazon IoT SiteWise 在此目录中存储数据。在此过程中之前设置 Amazon IoT Greengrass 时,您创建了 ggc_user

    sudo mkdir /var/sitewise sudo chown ggc_user /var/sitewise sudo chmod 700 /var/sitewise

    /var/sitewise 是 Amazon IoT SiteWise 使用的默认目录。您可以自定义目录路径(例如,将 /var/sitewise 替换为 /var/custom/path/),但这样做需要在创建 Amazon IoT SiteWise 网关后执行额外的步骤。有关更多信息,请参阅配置 Amazon IoT SiteWise 连接器中的步骤 6。

  9. 如果需要,请求您的 IT 管理员将以下终端节点和端口添加到本地网络的允许列表:

    • 端口 443、8443 和 8883

      重要

      您可以将 Amazon IoT Greengrass Core 配置为仅使用端口 443 进行所有网络通信。有关更多信息,请参阅 。通过端口 443 或网络代理进行连接中的Amazon IoT Greengrass开发人员指南.

    • 您的网关的 IP 地址(端口 443)。要获取 IP 地址,请运行 ip addressifconfig 命令,并记下 inet 值(例如,203.0.113.0)。

    • Amazon IoT SiteWise 数据终端节点:data.iotsitewise.region.amazonaws.com(端口 443)。

    • 网关使用的以下 Amazon 终端节点。您可以在 /greengrass-root/config/config.json 文件中找到这些内容。将 greengrass-root 替换为 Amazon IoT Greengrass 安装的根目录。

      • ggHostgreengrass-ats.iot.region.amazonaws.com(端口 443、8443 和 8883)。

      • iotHostprefix-ats.iot.region.amazonaws.com(端口 443、8443 和 8883)。

      有关更多信息,请参阅 Amazon IoT Greengrass 终端节点和配额

  10. 如果 Amazon IoT Greengrass Core 软件尚未运行,请运行以下命令启动 Amazon IoT Greengrass Core 软件。将 greengrass-root 替换为 Amazon IoT Greengrass 安装的根目录。默认的 greengrass-root/greengrass

    cd /greengrass-root/ggc/core sudo ./greengrassd start

    您应该会看到以下消息:Greengrass successfully started with PID: some-PID-number

  11. 将 Amazon IoT Greengrass 核心软件配置为在网关打开时自动启动。请参阅网关操作系统的相关文档。

创建 IAM policy 和角色

您必须创建一个Amazon Identity and Access Management(IAM) 策略和角色,以允许网关访问Amazon IoT SiteWise代表您进行存储。

创建 IAM policy 和角色

  1. 导航到 IAM 控制台

  2. 在导航窗格中,选择 Policies (策略),然后选择 Create policy (创建策略)

    
                        IAAM “Policicies” (策略)
  3. JSON 选项卡上,删除策略字段的当前内容,然后将以下策略粘贴到该字段中。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iotsitewise:BatchPutAssetPropertyValue", "Resource": "*" } ] }
    注意

    为了提高安全性,您可以在 Condition 属性中指定 Amazon IoT SiteWise 资产层次结构路径。以下示例是指定资产层次结构路径的信任策略。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iotsitewise:BatchPutAssetPropertyValue", "Resource": "*", "Condition": { "StringLike": { "iotsitewise:assetHierarchyPath": [ "/root node asset ID", "/root node asset ID/*" ] } } } ] }
  4. 选择Review policy(查看策略)

  5. 输入策略的名称和描述,然后选择 Create policy (创建角色)

  6. 在导航窗格中,选择 Roles (角色),然后选择 Create role (创建角色)

    
                        IAM “角色” (角色) 页面屏幕截图。
  7. Select type of trusted entity (选择受信任实体的类型)下,选择 Amazon service (Amazon 服务)。UNDER选择将使用此角色的服务,选择Greengrass作为将使用该角色的服务,然后选择后续:Permissions (下一步:权限)

    
                        IAM “选择受信任实体的类型” 页面屏幕截图。
  8. 搜索您创建的策略,选中复选框,然后选择后续:标签

    
                        IAM “附加权限策略” 页面屏幕截图。
  9. (可选)将标签添加到您的角色,然后选择后续:审核

  10. 输入角色的名称和描述,然后选择创建角色

    
                        IAM “审核” (审核) 页面屏幕截图
  11. 在绿色横幅中,选择指向新角色的链接。您还可以使用搜索字段查找该角色。

    
                        IAM “角色 SiteWiseDemo 已创建) 页面屏幕截图。
  12. 选择 Trust relationships (信任关系) 选项卡,然后选择 Edit trust relationship (编辑信任关系)

    
                        IAM “Trust rustionships” (信任关系) 选项卡的 “Summ
  13. 将策略字段的当前内容替换为以下内容,然后选择 Update Trust Policy (更新信任策略)

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "greengrass.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

配置 Amazon IoT Greengrass 组

将 IAM 角色附加到组并启用流管理器

  1. 导航到 Amazon IoT Greengrass 控制台

  2. 在左侧导航窗格中的 Greengrass 下,选择 Groups (组),然后选择您在 设置网关环境 中创建的组。

    
                        Amazon IoT Greengrass “Greengrass Groups”(Greengrass 组) 页面屏幕截图。
  3. 在左侧导航窗格中,选择 Settings (设置)。在 Group Role (组角色) 部分中,选择 Add Role (添加角色)

    
                        Amazon IoT Greengrass “Add Role”(添加角色) 页面屏幕截图。
  4. 选择在 创建 IAM policy 和角色 中创建的角色,然后选择 Save (保存)

    
                        Amazon IoT Greengrass “Your Group's IAM Role”(您的组的 IAM 角色) 页面屏幕截图。
  5. Settings (设置) 页面上的 Stream manager (流管理器) 部分中,选择 Edit (编辑)

    流管理器是 Amazon IoT Greengrass 的一项功能,可让您的 Amazon IoT Greengrass Core 将数据流式传输到 Amazon 云。Amazon IoT SiteWise 网关要求启用流管理器。有关更多信息,请参阅 。在上管理数据流Amazon IoT Greengrass核心实例中的Amazon IoT Greengrass Version 1开发人员指南.

    
                        Amazon IoT Greengrass “Stream manager (流管理器)”部分屏幕截图。
  6. 选择 Enable (启用),然后选择 Save (保存)

  7. 在左上角,选择 Services (服务) 为下一过程做好准备。

配置 Amazon IoT SiteWise 连接器

在此过程中,您可以配置Amazon IoT SiteWise您的 Greengrass 组中的连接器。连接器是预先构建的模块,可以加快针对常见边缘场景的开发生命周期。有关更多信息,请参阅 。Amazon IoT Greengrass连接器中的Amazon IoT Greengrass Version 1开发人员指南.

配置 Amazon IoT SiteWise 连接器

  1. 导航到 Amazon IoT Greengrass 控制台

  2. 在左侧导航窗格中的 Greengrass 下,选择 Groups (组),然后选择您在 设置网关环境 中创建的组。

    
                        Amazon IoT Greengrass “Greengrass Groups”(Greengrass 组) 页面屏幕截图。
  3. 在左侧导航页面中,选择 Connectors (连接器)。在连接器页面上,选择 Add a connector (添加连接器)

    
                        Amazon IoT Greengrass “连接器”页面屏幕截图。
  4. 选择IoT SiteWise从列表中选择下一步.

    
                        Amazon IoT Greengrass “选择连接器”页面屏幕截图。
  5. 如果您的服务器需要身份验证,则可以创建Amazon Secrets Manager密钥包含服务器的用户名和密码。然后,你可以将每个秘密附加到你的 Greengrass 群组中,然后在用户名/密码秘密的 ARN 列表. 有关如何创建和配置密钥的更多信息,请参阅配置源身份验证。也可以稍后将密钥添加到连接器。

    
                        Amazon IoT Greengrass “Configure a connector (配置连接器)”页面屏幕截图。
  6. 如果您使用与 /var/sitewise 不同的路径设置的网关,请在 Local storage path (本地存储路径) 中输入该路径。

  7. (可选)输入连接器的最大磁盘缓冲区大小。如果 Amazon IoT Greengrass Core 丢失与 Amazon 云的连接,连接器将缓存数据,直到它能够成功连接。如果缓存大小超过最大磁盘缓冲区大小,则连接器会丢弃队列中最旧的数据。

  8. 选择 Add(添加)。

  9. 在右上角的 Actions (操作) 菜单中,选择 Deploy (部署)

  10. 选择 Automatic detection (自动检测) 启动部署。

    如果部署失败,请再次选择 Deploy (部署)。如果部署仍然失败,请参阅 Amazon IoT Greengrass 部署故障排除

将网关添加到 Amazon IoT SiteWise

在此过程中,您会将网关的 Greengrass 组添加到Amazon IoT SiteWise. 在向 Amazon IoT SiteWise 注册网关后,服务会将数据源配置部署到网关。

将网关添加到 Amazon IoT SiteWise

  1. 导航到 Amazon IoT SiteWise 控制台

  2. 选择 Add gateway (添加网关)

  3. 在存储库的Add SiteWise 网关页面上,请执行以下操作:

    1. 输入网关的Name (名称)。请考虑在名称中包含网关的位置,以便您可以轻松识别网关。

    2. 适用于Greengrass 组ID,请选择您之前创建的 Greengrass 组。

      
                              Amazon IoT SiteWise “Add gateway (添加网关)”页面屏幕截图。
    3. 选择 Add gateway (添加网关)

  4. 如果您将数据处理包添加到网关,请配置并部署Amazon IoT SiteWise您的数据处理器连接器Amazon IoT Greengrass组中)。按中的步骤操作。配置 Amazon IoT SiteWise 连接器来配置Amazon IoT SiteWise数据处理器连接器:

    1. 适用于选择连接器中的Amazon IoT Greengrass控制台Amazon IoT SiteWise数据处理器.

    2. 适用于本地存储路径,输入您的网关的路径。

    3. 选择 Add(添加)。

    4. 在右上角,在操作菜单中,选择部署,然后选择自动检测启动部署。

在部署网关后,可以为希望网关从中提取数据的每台服务器添加一个源。有关更多信息,请参阅 配置数据源

您可以查看Amazon CloudWatch 验证网关连接的指标Amazon IoT SiteWise. 有关更多信息,请参阅 网关指标