Agente MQTT 3.1.1 (Moquette) - AWS IoT Greengrass

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Agente MQTT 3.1.1 (Moquette)

El componente agente MQTT de Moquette (aws.greengrass.clientdevices.mqtt.Moquette) gestiona los mensajes MQTT entre los dispositivos de cliente y un dispositivo principal de Greengrass. Este componente proporciona una versión modificada del agente MQTT de Moquette. Implemente este agente MQTT para ejecutar un agente de MQTT ligero. Para más información sobre cómo elegir un agente MQTT, consulte Elección de un agente MQTT.

Este agente implementa el protocolo MQTT 3.1.1. Incluye compatibilidad con mensajes retenidos por QoS 0, QoS 1, QoS 2 y sesiones persistentes.

nota

Los dispositivos de cliente son dispositivos IoT locales que se conectan a un dispositivo principal de Greengrass para enviar mensajes MQTT y datos para su procesamiento. Para obtener más información, consulte Interacción con dispositivos IoT locales.

Versiones

Este componente tiene las siguientes versiones:

  • 2.3.x

  • 2.2.x

  • 2.1.x

  • 2.0.x

Tipo

Este componente es un componente de complemento (aws.greengrass.plugin). El núcleo de Greengrass ejecuta este componente en la misma máquina virtual Java (JVM) que el núcleo. El núcleo se reinicia al cambiar la versión de este componente en el dispositivo principal.

Este componente usa el mismo archivo de registro que el núcleo de Greengrass. Para obtener más información, consulte Supervisión de los registros de AWS IoT Greengrass.

Para obtener más información, consulte Tipos de componentes.

Sistema operativo

Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:

  • Linux

  • Windows

Requisitos

Este componente tiene los siguientes requisitos:

  • El dispositivo principal debe poder aceptar conexiones en el puerto en el que opera el agente MQTT. Este componente ejecuta el agente MQTT en el puerto 8883 de forma predeterminada. O puede especificar un puerto diferente al configurar este componente.

    Si especifica un puerto diferente y utiliza el componente de puente MQTT para retransmitir mensajes MQTT a otros intermediarios, debe utilizar el puente de MQTT versión 2.1.0 o posterior. Configúrelo para que use el puerto en el que opera el agente MQTT.

    Si especifica un puerto diferente y utiliza el componente IP detector para administrar los puntos de conexión del agente MQTT, debe utilizar la versión 2.1.0 o posterior del detector IP. Configúrelo para que informe el puerto en el que opera el agente MQTT.

  • El componente de agente MQTT de Moquette puede ejecutarse en una VPC.

Dependencias

Cuando implementa un componente, AWS IoT Greengrass también implementa versiones compatibles de sus dependencias. Esto significa que debe cumplir los requisitos del componente y de todas sus dependencias para poder implementar el componente correctamente. En esta sección, se enumeran las dependencias de las versiones publicadas de este componente y las restricciones de las versiones semánticas que definen las versiones de los componentes para cada dependencia. También puede ver las dependencias de cada versión del componente en la consola de AWS IoT Greengrass. En la página de detalles del componente, busque la lista de Dependencias.

2.3.7

En la siguiente tabla, se muestran las dependencias de la versión 2.3.7 de este componente.

Dependencia Versiones compatibles Tipo de dependencia
Autenticación del dispositivo de cliente >=2.2.0 <2.6.0 Rígido
2.3.2 – 2.3.6

En la siguiente tabla, se muestran las dependencias de las versiones 2.3.2 a 2.3.6 de este componente.

Dependencia Versiones compatibles Tipo de dependencia
Autenticación del dispositivo de cliente >=2.2.0 <2.5.0 Rígido
2.3.0 and 2.3.1

En la siguiente tabla, se muestran las dependencias de las versiones 2.3.0 y 2.3.1 de este componente.

Dependencia Versiones compatibles Tipo de dependencia
Autenticación del dispositivo de cliente >=2.2.0 <2.4.0 Rígido
2.2.0

En la siguiente tabla, se muestran las dependencias de la versión 2.2.0 de este componente.

Dependencia Versiones compatibles Tipo de dependencia
Autenticación del dispositivo de cliente >=2.2.0 <2.3.0 Rígido
2.1.0

En la siguiente tabla, se muestran las dependencias de la versión 2.1.0 de este componente.

Dependencia Versiones compatibles Tipo de dependencia
Autenticación del dispositivo de cliente >=2.0.0 <2.2.0 Rígido
2.0.0 - 2.0.2

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.0 a 2.0.2 de este componente.

Dependencia Versiones compatibles Tipo de dependencia
Autenticación del dispositivo de cliente >=2.0.0 <2.1.0 Rígido

Para obtener más información sobre las dependencias del componente, consulte la referencia de receta de componentes.

Configuración

Este componente ofrece los siguientes parámetros de configuración que puede personalizar cuando implemente el componente.

moquette

(Opcional) La configuración del agente MQTT de Moquette que se va a utilizar. Puede configurar las opciones de configuración de Moquette en este componente. Para obtener más información, consulte los comentarios en línea en el archivo de configuración de Moquette.

Este objeto contiene la siguiente información:

ssl_port

(Opcional) El puerto en el que opera el agente de MQTT.

nota

Si especifica un puerto diferente y utiliza el componente de puente MQTT para retransmitir mensajes MQTT a otros intermediarios, debe utilizar el puente de MQTT versión 2.1.0 o posterior. Configúrelo para que use el puerto en el que opera el agente MQTT.

Si especifica un puerto diferente y utiliza el componente IP detector para administrar los puntos de conexión del agente MQTT, debe utilizar la versión 2.1.0 o posterior del detector IP. Configúrelo para que informe el puerto en el que opera el agente MQTT.

Valor predeterminado: 8883

host

(Opcional) La interfaz a la que se enlaza el agente MQTT. Por ejemplo, puede cambiar este parámetro para que el agente MQTT se vincule únicamente a una red local específica.

Predeterminado: 0.0.0.0 (enlaza con todas las interfaces de red)

startupTimeoutSeconds

(Opcional) El tiempo máximo en segundos para que se inicie el componente. El estado del componente cambia a BROKEN si supera este tiempo de espera.

Valor predeterminado: 120

ejemplo Ejemplo: actualización de la combinación de configuraciones

El siguiente ejemplo de configuración especifica el funcionamiento del agente de MQTT en el puerto 443.

{ "moquette": { "ssl_port": "443" } }

Archivo de registro local

Este componente utiliza el mismo archivo de registro que el componente núcleo de Greengrass.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
Visualización de los registros de este componente
  • Ejecute el siguiente comando en el dispositivo principal para ver el archivo de registro de este componente en tiempo real. Reemplace /greengrass/v2 o C:\greengrass\v2 por la ruta a la carpeta raíz de 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

Registros de cambios

En la siguiente tabla, se describen los cambios en cada versión del componente.

Versión

Cambios

2.3.7

Versión actualizada para la versión 2.5.0 de autenticación de dispositivos de cliente.

2.3.6

Mejoras y correcciones de errores
  • Corrección de errores y mejoras generales.

2.3.5

Mejoras y correcciones de errores
  • Se actualizó Moquette a la versión 0.17.

2.3.4

Mejoras y correcciones de errores
  • Soluciona un problema por el que los clientes podían experimentar errores de sesión no válidos al enviar o recibir mensajes debido a la duplicación de los ID de cliente. Este problema provocó el cierre de la sesión del cliente.

2.3.3

Nuevas características

Agrega una nueva opción de configuración startupTimeoutSeconds.

2.3.2

Versión actualizada para la versión 2.4.0 de autenticación de dispositivos de cliente.

2.3.1

Mejoras y correcciones de errores
  • Corrige una condición de carrera en la que los clientes podían desconectarse después de intentar volver a conectarse debido a una sesión no válida.

2.3.0

Se agregó compatibilidad con las cadenas de certificados.

2.2.0

Versión actualizada para la versión 2.2.0 de autenticación de dispositivos de cliente.

2.1.0

Mejoras y correcciones de errores
  • Actualiza este componente para que utilice la versión 0.16 de Moquette, que mejora el rendimiento e incluye otras mejoras.

  • Soluciona un problema por el que el certificado del servidor MQTT local rota con más frecuencia de lo previsto en determinadas situaciones.

    Para aplicar esta corrección, también debe utilizar la versión 2.1.0 o posterior del componente de autenticación del dispositivo de cliente.

2.0.2

Mejoras y correcciones de errores
  • Aumenta el tamaño máximo de los mensajes MQTT de 8092 bytes a 128 kilobytes. El límite efectivo de carga útil de los mensajes en MQTT es ligeramente inferior, ya que el límite de tamaño de los mensajes incluye los encabezados de los mensajes.

  • Suma compatibilidad con valores enteros en el parámetro ssl_port.

2.0.1

Versión actualizada para el lanzamiento de la versión 2.4.0 del núcleo de Greengrass.

2.0.0

Versión inicial.