本地调试控制台 - AWS IoT Greengrass

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

本地调试控制台

本地调试控制台组件 (aws.greengrass.LocalDebugConsole) 提供了一个本地仪表板,用于显示有关 AWS IoT Greengrass 核心设备及其组件的信息。您可以使用此仪表板来调试核心设备和管理本地组件。

重要

我们建议您仅在开发环境中使用此组件,而不是在生产环境中使用。此组件提供对生产环境中通常不需要的信息和操作的访问。遵循最低权限原则,将此组件仅部署到需要的核心设备。

版本

此组件有以下版本:

  • 2.4.x

  • 2.3.x

  • 2.2.x

  • 2.1.x

  • 2.0.x

类型

此组件是一个插件组件 (aws.greengrass.plugin)。Greengrass 核心在与核心相同的 Java 虚拟机 () 中运行此组件。JVM当您在核心设备上更改此组件的版本时,nucleus 会重新启动。

该组件使用与 Greengrass 核相同的日志文件。有关更多信息,请参阅 监控AWS IoT Greengrass日志

有关更多信息,请参阅 组件类型

操作系统

此组件可以安装在运行以下操作系统的核心设备上:

  • Linux

  • Windows

要求

此组件具有以下要求:

  • 您使用用户名和密码登录控制面板。用户名(即)是为您提供的。debug您必须使用创建临时密码, AWS IoT Greengrass CLI以便在核心设备上使用控制面板对您进行身份验证。您必须能够使用才能使用本地调试控制台。 AWS IoT Greengrass CLI有关更多信息,请参阅 Greengrass 要求CLI。有关如何生成密码和登录的更多信息,请参阅本地调试控制台组件用法

  • 支持在中运行本地调试控制台组件VPC。

依赖项

部署组件时, AWS IoT Greengrass 还会部署其依赖项的兼容版本。这意味着您必须满足组件及其所有依赖项的要求才能成功部署该组件。本节列出了此组件已发布版本的依赖关系以及定义每个依赖项的组件版本的语义版本限制。您还可以在AWS IoT Greengrass 控制台中查看组件每个版本的依赖关系。在组件详细信息页面上,查找 “依赖关系” 列表。

2.4.3

下表列出了此组件版本 2.4.3 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.10.0 <2.14.0 硬性
Greengrass CLI >=2.10.0 <2.14.0 硬性
2.4.3

下表列出了此组件版本 2.4.3 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.10.0 <2.14.0 硬性
Greengrass CLI >=2.10.0 <2.14.0 硬性
2.4.1 – 2.4.2

下表列出了此组件版本 2.4.1 到 2.4.2 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.10.0 <2.13.0 硬性
Greengrass CLI >=2.10.0 <2.13.0 硬性
2.4.0

下表列出了此组件版本 2.4.0 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.10.0 <2.12.0 硬性
Greengrass CLI >=2.10.0 <2.12.0 硬性
2.3.0 and 2.3.1

下表列出了此组件版本 2.3.0 和 2.3.1 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.10.0 <2.12.0 硬性
Greengrass CLI >=2.10.0 <2.12.0 硬性
2.2.9

下表列出了此组件版本 2.2.9 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.12.0 硬性
Greengrass CLI >=2.1.0 <2.12.0 硬性
2.2.8

下表列出了此组件版本 2.2.8 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.11.0 硬性
Greengrass CLI >=2.1.0 <2.11.0 硬性
2.2.7

下表列出了此组件版本 2.2.7 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.10.0 硬性
Greengrass CLI >=2.1.0 <2.10.0 硬性
2.2.6

下表列出了此组件版本 2.2.6 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.9.0 硬性
Greengrass CLI >=2.1.0 <2.9.0 硬性
2.2.5

下表列出了此组件版本 2.2.5 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.8.0 硬性
Greengrass CLI >=2.1.0 <2.8.0 硬性
2.2.4

下表列出了此组件版本 2.2.4 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.7.0 硬性
Greengrass CLI >=2.1.0 <2.7.0 硬性
2.2.3

下表列出了此组件版本 2.2.3 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.6.0 硬性
Greengrass CLI >=2.1.0 <2.6.0 硬性
2.2.2

下表列出了此组件版本 2.2.2 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.5.0 硬性
Greengrass CLI >=2.1.0 <2.5.0 硬性
2.2.1

下表列出了此组件版本 2.2.1 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.4.0 硬性
Greengrass CLI >=2.1.0 <2.4.0 硬性
2.2.0

下表列出了此组件版本 2.2.0 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.3.0 硬性
Greengrass CLI >=2.1.0 <2.3.0 硬性
2.1.0

下表列出了此组件版本 2.1.0 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.1.0 <2.2.0 硬性
Greengrass CLI >=2.1.0 <2.2.0 硬性
2.0.x

下表列出了此组件版本 2.0.x 的依赖关系。

依赖关系 兼容版本 依赖关系类型
Greengrass 核 >=2.0.3 <2.1.0 软性
Greengrass CLI >=2.0.3 <2.1.0 软性

有关组件依赖关系的更多信息,请参阅组件配方参考

配置

此组件提供以下配置参数,您可以在部署该组件时对其进行自定义。

v2.1.x - v2.4.x
httpsEnabled

(可选)您可以为本地调试控制台启用HTTPS通信。如果启用HTTPS通信,则本地调试控制台会创建自签名证书。Web 浏览器会为使用自签名证书的网站显示安全警告,因此您必须手动验证证书。然后,你可以绕过警告。有关更多信息,请参阅 使用量

默认值:true

port

(可选)提供本地调试控制台的端口。

默认:1441

websocketPort

(可选)用于本地调试控制台的 websocket 端口。

默认:1442

bindHostname

(可选)用于本地调试控制台的主机名。

如果您在 Docker 容器中运行 C AWS IoT Greengrass ore 软件,请将此参数设置为0.0.0.0,这样您就可以在 Docker 容器之外打开本地调试控制台。

默认:localhost

例 示例:配置合并更新

以下示例配置指定在非默认端口上打开本地调试控制台并禁用HTTPS。

{ "httpsEnabled": false, "port": "10441", "websocketPort": "10442" }
v2.0.x
port

(可选)提供本地调试控制台的端口。

默认:1441

websocketPort

(可选)用于本地调试控制台的 websocket 端口。

默认:1442

bindHostname

(可选)用于本地调试控制台的主机名。

如果您在 Docker 容器中运行 C AWS IoT Greengrass ore 软件,请将此参数设置为0.0.0.0,这样您就可以在 Docker 容器之外打开本地调试控制台。

默认:localhost

例 示例:配置合并更新

以下示例配置指定在非默认端口上打开本地调试控制台。

{ "port": "10441", "websocketPort": "10442" }

使用量

要使用本地调试控制台,请从 Greengr CLI ass 创建一个会话。当您创建会话时,G CLI reengrass 会提供一个用户名和临时密码,您可以使用这些用户名和临时密码登录本地调试控制台。

按照以下说明在核心设备或开发计算机上打开本地调试控制台。

v2.1.x - v2.4.x

在 2.1.0 及更高版本中,本地调试控制台HTTPS默认使用。启用后HTTPS,本地调试控制台会创建自签名证书来保护连接。由于此自签名证书,当您打开本地调试控制台时,您的 Web 浏览器会显示安全警告。当您使用 G CLI reengrass 创建会话时,输出包括证书的指纹,因此您可以验证证书是否合法以及连接是否安全。

您可以禁用HTTPS。有关更多信息,请参阅本地调试控制台配置

打开本地调试控制台
  1. (可选)要在开发计算机上查看本地调试控制台,可以转发控制台的端口SSH。但是,您必须先在核心设备的SSH配置文件中启用该AllowTcpForwarding选项。默认情况下,此选项处于启用状态。在开发计算机上运行以下命令,以在开发计算机localhost:1441上查看仪表板。

    ssh -L 1441:localhost:1441 -L 1442:localhost:1442 username@core-device-ip-address
    注意

    您可以从1441和更改默认端口1442。有关更多信息,请参阅本地调试控制台配置

  2. 创建会话以使用本地调试控制台。创建会话时,会生成一个用于进行身份验证的密码。本地调试控制台需要密码才能提高安全性,因为您可以使用此组件在核心设备上查看重要信息并执行操作。如果您在组件配置中启用HTTPS,则本地调试控制台还会创建证书来保护连接。HTTPS默认情况下处于启用状态。

    使用 AWS IoT Greengrass CLI创建会话。此命令生成一个 43 个字符的随机密码,该密码将在 8 小时后过期。替换/greengrass/v2C:\greengrass\v2 包含 AWS IoT Greengrass V2 根文件夹的路径。

    Linux or UnixWindows
    Linux or Unix
    sudo /greengrass/v2/bin/greengrass-cli get-debug-password
    Windows
    C:\greengrass\v2\bin\greengrass-cli get-debug-password

    如果您已配置要使用的本地调试控制台,则命令输出类似于以下示例HTTPS。打开本地调试控制台时,您可以使用证书指纹来验证连接是否安全。

    Username: debug Password: bEDp3MOHdj8ou2w5de_sCBI2XAaguy3a8XxREXAMPLE Password expires at: 2021-04-01T17:01:43.921999931-07:00 The local debug console is configured to use TLS security. The certificate is self-signed so you will need to bypass your web browser's security warnings to open the console. Before you bypass the security warning, verify that the certificate fingerprint matches the following fingerprints. SHA-256: 15 0B 2C E2 54 8B 22 DE 08 46 54 8A B1 2B 25 DE FB 02 7D 01 4E 4A 56 67 96 DA A6 CC B1 D2 C4 1B SHA-1: BC 3E 16 04 D3 80 70 DA E0 47 25 F9 90 FA D6 02 80 3E B5 C1

    调试视图组件创建一个持续 8 小时的会话。之后,您必须生成一个新密码才能再次查看本地调试控制台。

  3. 打开并登录控制面板。在您的 Greengrass 核心设备上查看控制面板,如果您转发端口,则可以在开发计算机上查看控制面板。SSH请执行以下操作之一:

    • 如果您HTTPS在本地调试控制台中启用(这是默认设置),请执行以下操作:

      1. 在核心设备https://localhost:1441上打开,或者如果您将端口转发过来,则在开发计算机上打开SSH。

        您的浏览器可能会显示有关安全证书无效的安全警告。

      2. 如果您的浏览器显示安全警告,请验证证书是否合法并绕过安全警告。执行以下操作:

        1. 找到证书的 SHA -256 或 SHA -1 指纹,并验证它是否与get-debug-password命令先前打印的 SHA -256 或 SHA -1 指纹相匹配。您的浏览器可能会提供一个或两个指纹。要查看证书及其指纹,请查阅浏览器的文档。在某些浏览器中,证书指纹被称为指纹。

          注意

          如果证书指纹不匹配,请转步骤 2至创建新会话。如果证书指纹仍然不匹配,则您的连接可能不安全。

        2. 如果证书指纹匹配,请绕过浏览器的安全警告,打开本地调试控制台。请查阅浏览器的文档以绕过浏览器安全警告。

      3. 使用get-debug-password命令之前打印的用户名和密码登录网站。

        本地调试控制台打开。

      4. 如果本地调试控制台显示错误提示 WebSocket 由于TLS握手失败而无法连接,则必须绕过对的自签名安全警告。 WebSocket URL

        本地调试控制台中的 WebSocket TLS握手错误。

        执行以下操作:

        1. https://localhost:1442在打开本地调试控制台的同一浏览器中打开。

        2. 验证证书并绕过安全警告。

          绕过警告后,您的浏览器可能会显示 HTTP 404 页面。

        3. https://localhost:1441再次打开。

          本地调试控制台显示有关核心设备的信息。

    • 如果您HTTPS在本地调试控制台中禁用,请执行以下操作:

      1. 在核心设备http://localhost:1441上打开,或者如果您将端口转发过来,则在开发计算机上将其打开SSH。

      2. 使用该get-debug-password命令之前打印的用户名和密码登录网站。

        本地调试控制台打开。

v2.0.x
打开本地调试控制台
  1. (可选)要在开发计算机上查看本地调试控制台,可以转发控制台的端口SSH。但是,您必须先在核心设备的SSH配置文件中启用该AllowTcpForwarding选项。默认情况下,此选项处于启用状态。在开发计算机上运行以下命令,以在开发计算机localhost:1441上查看仪表板。

    ssh -L 1441:localhost:1441 -L 1442:localhost:1442 username@core-device-ip-address
    注意

    您可以从1441和更改默认端口1442。有关更多信息,请参阅本地调试控制台配置

  2. 创建会话以使用本地调试控制台。创建会话时,会生成一个用于进行身份验证的密码。本地调试控制台需要密码才能提高安全性,因为您可以使用此组件在核心设备上查看重要信息并执行操作。

    使用 AWS IoT Greengrass CLI创建会话。此命令生成一个 43 个字符的随机密码,该密码将在 8 小时后过期。替换/greengrass/v2C:\greengrass\v2 包含 AWS IoT Greengrass V2 根文件夹的路径。

    Linux or UnixWindows
    Linux or Unix
    sudo /greengrass/v2/bin/greengrass-cli get-debug-password
    Windows
    C:\greengrass\v2\bin\greengrass-cli get-debug-password

    命令输出类似于以下示例。

    Username: debug Password: bEDp3MOHdj8ou2w5de_sCBI2XAaguy3a8XxREXAMPLE Password will expire at: 2021-04-01T17:01:43.921999931-07:00

    调试视图组件创建一个持续 4 小时的会话,然后您必须生成新密码才能再次查看本地调试控制台。

  3. 在核心设备http://localhost:1441上打开,或者如果您将端口转发过来,则在开发计算机上将其打开SSH。

  4. 使用该get-debug-password命令之前打印的用户名和密码登录网站。

    本地调试控制台打开。

本地日志文件

该组件使用与 Greengrass nucleus 组件相同的日志文件。

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
查看此组件的日志
  • 在核心设备上运行以下命令以实时查看此组件的日志文件。替换/greengrass/v2C:\greengrass\v2 包含 AWS IoT Greengrass 根文件夹的路径。

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

更改日志

下表描述了该组件的每个版本中的更改。

版本

更改

2.4.3

Greengrass nucleus 版本 2.13.0 版本的版本已更新。

错误修复和改进
  • 修复了错误地以每秒兆STREAM_MANAGER_EXPORTER_MAX_BANDWIDTH位 (Mbps) 而不是每秒字节数 (Bps) 显示的问题。

2.4.2

错误修复和改进
  • 常规错误修复和性能改进。

2.4.1

Greengrass nucleus 版本 2.12.0 版本的版本已更新。

2.4.0

新功能
  • 添加直播管理器调试控制台。

2.3.1

Greengrass nucleus 版本 2.11.0 版本的版本已更新。

2.3.0

Greengrass nucleus 版本 2.10.0 版本的版本已更新。
新功能
  • 包括 PubSub 和 AWS IoT Core MQTT调试客户端。

2.2.7

Greengrass nucleus 版本 2.9.0 版本的版本已更新。

2.2.6

Greengrass nucleus 版本 2.8.0 版本的版本已更新。

2.2.5

Greengrass nucleus 版本 2.7.0 版本的版本已更新。

2.2.4

Greengrass nucleus 版本 2.6.0 版本的版本已更新。

2.2.3

错误修复和改进
  • 修复了当组件无法解密包含私钥的密钥库时无法启动的问题。SSL

  • Greengrass nucleus 版本 2.5.0 版本的版本已更新。

2.2.2

Greengrass nucleus 版本 2.4.0 版本的版本已更新。

2.2.1

Greengrass nucleus 版本 2.3.0 版本的版本已更新。

2.2.0

Greengrass nucleus 版本 2.2.0 版本的版本已更新。

2.1.0

新功能
  • HTTPS用于保护您与本地调试控制台的连接。HTTPS默认情况下处于启用状态。

错误修复和改进
  • 你可以在配置编辑器中关闭闪存栏消息。

2.0.3

初始版本。