本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
配置网关
网关充当服务器和服务器之间的中介Amazon IoT SiteWise。你可以部署Amazon IoT SiteWise任何可以运行的平台上的网关软件Amazon IoT Greengrass。有关更多信息,请参阅选择网关平台:
注意
建议您与对您的本地和公司网络具有 IT 管理访问权限的人员完成以下步骤。这些步骤可能需要了解您的服务器并有权配置防火墙设置的人员。
设置网关环境
在此过程中,您将安装 Amazon IoT Greengrass 并配置要用于 Amazon IoT SiteWise 的网关。
注意
此节包括使用 apt
命令安装软件包的说明。适用于运行 Ubuntu 或类似工具的系统。如果您使用的不是类似的系统,请参阅供您分发的文档并使用推荐的软件包安装程序。
设置网关
-
根据需要,如下修改网关的 BIOS
设置。 -
确保网关在潜在的电源故障后自动重启(如果适用)。
-
确保网关不会休眠或睡眠(如果适用)。
-
-
确保网关连接到 Internet。
-
(可选)要在没有鼠标、键盘和监视器的情况下使用网关,请按照以下步骤在网关
ssh
上进行设置:-
如果您尚未安装 SSH 软件包,请运行以下命令。
sudo apt install ssh
-
运行以下命令。
service ssh status
-
在输出中搜索
Active: active (running)
以确认 SSH 服务器处于运行状态。 -
按 Q 退出。
运行以下命令以使用 SSH 从另一台计算机连接到网关。将
username
替换为用户登录名,并将IP
替换为网关的 IP 地址。ssh
username
@IP
您可以使用
-p
参数连接到默认端口 22 以外的端口。port-number
-
-
下载并安装Amazon IoT Greengrass核心软件 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 软件,然后再继续执行下一步。
-
运行以下命令安装 Java 8:
sudo apt update sudo apt install openjdk-8-jre
本指南下文中安装的 Amazon IoT SiteWise 网关软件使用 Java 8 运行时。
-
运行以下命令验证是否已成功安装 Java。
java -version
-
Amazon IoT Greengrass 核心软件假定一个
java8
目录。运行以下命令将 Java 安装链接到该java8
目录。sudo ln -s /usr/bin/java /usr/bin/java8
-
运行以下命令创建一个
/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/
),但这样做需要在创建 Amazon IoT SiteWise 网关后执行额外的步骤。有关更多信息,请参阅配置 Amazon IoT SiteWise 连接器中的步骤 6。custom
/path
/ -
如果需要,请求您的 IT 管理员将以下终端节点和端口添加到本地网络的允许列表:
-
端口 443、8443 和 8883
重要
您可以将 Amazon IoT Greengrass Core 配置为仅使用端口 443 进行所有网络通信。有关更多信息,请参阅通过端口 443 或通过网络代理进行连接在Amazon IoT Greengrass开发者指南。
-
您的网关的 IP 地址(端口 443)。要获取 IP 地址,请运行
ip address
或ifconfig
命令,并记下inet
值(例如,203.0.113.0
)。 -
Amazon IoT SiteWise 数据终端节点:
data.iotsitewise.
(端口 443)。region
.amazonaws.com -
网关使用的以下 Amazon 终端节点。您可以在
/
文件中找到这些内容。将greengrass-root
/config/config.jsongreengrass-root
替换为 Amazon IoT Greengrass 安装的根目录。-
ggHost:
greengrass-ats.iot.
(端口 443、8443 和 8883)。region
.amazonaws.com -
iotHost:
(端口 443、8443 和 8883)。prefix
-ats.iot.region
.amazonaws.com
有关更多信息,请参阅 Amazon IoT Greengrass 终端节点和配额。
-
-
-
如果 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
-
将 Amazon IoT Greengrass 核心软件配置为在网关打开时自动启动。请参阅网关操作系统的相关文档。
创建 IAM 策略和角色
你必须创建一个Amazon Identity and Access Management(IAM) 策略和角色允许网关访问Amazon IoT SiteWise代表你。
创建 IAM 策略和角色
-
导航到 IAM 控制台
。 -
在导航窗格中,选择 Policies (策略),然后选择 Create policy (创建策略)。
-
在 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
/*" ] } } } ] } -
选择Review policy(查看策略)。
-
输入策略的名称和描述,然后选择 Create policy (创建角色)。
-
在导航窗格中,选择 Roles (角色),然后选择 Create role (创建角色)。
-
在 Select type of trusted entity (选择受信任实体的类型)下,选择 Amazon service (Amazon 服务)。在 Choose the service that will use the role (选择将使用此角色的服务) 下面,选择 Greengrass 作为将使用该角色的服务,然后选择 Next: Permissions (下一步:权限)。
-
搜索您创建的策略,选中该复选框,然后选择下一页:标签。
-
(可选)将标签添加到您的角色,然后选择 Next: Review (下一步:审核)。
-
输入角色的名称和描述,然后选择创建角色。
-
在绿色横幅中,选择指向新角色的链接。您还可以使用搜索字段查找该角色。
-
选择 Trust relationships (信任关系) 选项卡,然后选择 Edit trust relationship (编辑信任关系)。
-
将策略字段的当前内容替换为以下内容,然后选择 Update Trust Policy (更新信任策略)。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "greengrass.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
配置 Amazon IoT Greengrass 组
将 IAM 角色附加到群组并启用直播管理器
-
在左侧导航窗格中的 Greengrass 下,选择 Groups (组),然后选择您在 设置网关环境 中创建的组。
-
在左侧导航窗格中,选择 Settings (设置)。在 Group Role (组角色) 部分中,选择 Add Role (添加角色)。
-
选择在 创建 IAM 策略和角色 中创建的角色,然后选择 Save (保存)。
-
在 Settings (设置) 页面上的 Stream manager (流管理器) 部分中,选择 Edit (编辑)。
流管理器是 Amazon IoT Greengrass 的一项功能,可让您的 Amazon IoT Greengrass Core 将数据流式传输到 Amazon 云。Amazon IoT SiteWise 网关要求启用流管理器。有关更多信息,请参阅管理上的数据流Amazon IoT Greengrass核心在Amazon IoT Greengrass Version 1开发者指南。
-
选择 Enable (启用),然后选择 Save (保存)。
-
在左上角,选择 Services (服务) 为下一过程做好准备。
配置 Amazon IoT SiteWise 连接器
在此过程中,您将配置Amazon IoT SiteWise你的 Greengrass 群组上的连接器。连接器是预先构建的模块,可以加快针对常见边缘场景的开发生命周期。有关更多信息,请参阅Amazon IoT Greengrass连接器在Amazon IoT Greengrass Version 1开发者指南。
配置 Amazon IoT SiteWise 连接器
-
在左侧导航窗格中的 Greengrass 下,选择 Groups (组),然后选择您在 设置网关环境 中创建的组。
-
在左侧导航页面中,选择 Connectors (连接器)。在连接器页面上,选择 Add a connector (添加连接器)。
-
选择物联网 SiteWise从列表中选择下一步。
-
如果您的服务器需要身份验证,则可以创建Amazon Secrets Manager带有服务器用户名和密码的机密。然后,你可以将每个秘密附加到你的 Greengrass 群组并在下方选择它们用户名/密码密钥的 ARN 列表。有关如何创建和配置密钥的更多信息,请参阅配置源身份验证。也可以稍后将密钥添加到连接器。
-
如果您使用与
/var/sitewise
不同的路径设置的网关,请在 Local storage path (本地存储路径) 中输入该路径。 -
(可选)输入连接器的最大磁盘缓冲区大小。如果 Amazon IoT Greengrass Core 丢失与 Amazon 云的连接,连接器将缓存数据,直到它能够成功连接。如果缓存大小超过最大磁盘缓冲区大小,则连接器会丢弃队列中最旧的数据。
-
选择 Add(添加)。
-
在右上角的 Actions (操作) 菜单中,选择 Deploy (部署)。
-
选择 Automatic detection (自动检测) 启动部署。
如果部署失败,请再次选择 Deploy (部署)。如果部署仍然失败,请参阅 Amazon IoT Greengrass 部署故障排除。
将网关添加到 Amazon IoT SiteWise
在此过程中,您将网关的 Greengrass 组添加到Amazon IoT SiteWise。在向 Amazon IoT SiteWise 注册网关后,服务会将数据源配置部署到网关。
将网关添加到 Amazon IoT SiteWise
-
选择 Add gateway (添加网关)。
-
在添加 SiteWise 网关页面上,执行以下操作:
-
输入网关的Name (名称)。请考虑在名称中包含网关的位置,以便您可以轻松识别网关。
-
对于Greengrass 群组 ID,选择你之前创建的 Greengrass 群组。
-
选择 Add gateway (添加网关)。
-
-
如果您将数据处理包添加到网关,请配置和部署Amazon IoT SiteWise您的设备上的数据处理器连接器Amazon IoT Greengrass组。按照中的步骤操作配置 Amazon IoT SiteWise 连接器配置Amazon IoT SiteWise数据处理器连接器:
-
对于选择连接器在Amazon IoT Greengrass控制台,选择Amazon IoT SiteWise数据处理器。
-
对于本地存储路径,输入网关的路径。
-
选择 Add(添加)。
-
在右上角,在行动菜单,选择部署,然后选择自动检测开始部署。
-
网关部署后,您可以为希望网关从中提取数据的每台服务器添加一个源。有关更多信息,请参阅配置数据源:
你可以查看亚马逊 CloudWatch 用于验证您的网关是否连接的指标Amazon IoT SiteWise。有关更多信息,请参阅Amazon IoT Greengrass Version 1网关指标 Amazon IoT Greengrass Version 2网关指标: