Bróker 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.

Bróker MQTT 3.1.1 (Moquette)

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

Este bróker implementa el protocolo MQTT 3.1.1. Incluye compatibilidad con QoS 0, QoS 1, QoS 2, mensajes de última voluntad y sesiones persistentes.

nota

Los dispositivos cliente son dispositivos IoT locales que se conectan a un dispositivo central de Greengrass para enviar mensajes MQTT y datos para su procesamiento. Para obtener más información, consulte Interactúa 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 utiliza el mismo archivo de registro que el núcleo de Greengrass. Para obtener más información, consulte Supervisar AWS IoT Greengrass registros.

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 broker MQTT. Este componente ejecuta el broker MQTT en el puerto 8883 de forma predeterminada. 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 MQTT bridge v2.1.0 o posterior. Configúrelo para que utilice el puerto en el que opera el bróker MQTT.

    Si especifica un puerto diferente y utiliza el componente IP detector para gestionar los puntos finales del broker MQTT, debe utilizar IP detector v2.1.0 o una versión posterior. Configúrelo para que indique el puerto en el que opera el broker MQTT.

  • Se admite la ejecución del componente broker MQTT de Moquette en una VPC.

Dependencias

Al implementar un componente, AWS IoT Greengrass también despliega versiones compatibles de sus dependencias. Esto significa que debe cumplir los requisitos del componente y de todas sus dependencias para poder implementarlo 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.AWS IoT Greengrass En la página de detalles del componente, busque la lista de dependencias.

2.3.7

La siguiente tabla muestra las dependencias de la versión 2.3.7 de este componente.

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

La siguiente tabla muestra 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 cliente >=2.2.0 <2.5.0 Rígido
2.3.0 and 2.3.1

La siguiente tabla muestra 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 cliente >=2.2.0 <2.4.0 Rígido
2.2.0

La siguiente tabla muestra las dependencias de la versión 2.2.0 de este componente.

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

La siguiente tabla muestra las dependencias de la versión 2.1.0 de este componente.

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

La siguiente tabla muestra 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 cliente >=2.0.0 <2.1.0 Rígido

Para obtener más información sobre las dependencias de los componentes, consulta la referencia de recetas de componentes.

Configuración

Este componente proporciona los siguientes parámetros de configuración que puede personalizar al implementar el componente.

moquette

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

Este objeto contiene la siguiente información:

ssl_port

(Opcional) El puerto en el que opera el bróker 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 MQTT v2.1.0 o posterior. Configúrelo para que utilice el puerto en el que opera el bróker MQTT.

Si especifica un puerto diferente y utiliza el componente IP detector para gestionar los puntos finales del broker MQTT, debe utilizar IP detector v2.1.0 o una versión posterior. Configúrelo para que indique el puerto en el que opera el broker MQTT.

Valor predeterminado: 8883

host

(Opcional) La interfaz a la que se enlaza el bróker MQTT. Por ejemplo, puede cambiar este parámetro para que el corredor 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 broker 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
Para ver 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. Sustituya /greengrass/v2 o C:\greengrass\v2 por la ruta a la carpeta AWS IoT Greengrass raíz.

    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 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

Añade una nueva opción startupTimeoutSeconds de configuración.

2.3.2

Versión actualizada para la versión 2.4.0 de autenticación de dispositivos 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

Añade compatibilidad con cadenas de certificados.

2.2.0

Versión actualizada para la versión 2.2.0 de autenticación de dispositivos 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 cliente.

2.0.2

Mejoras y correcciones de errores
  • Aumenta el tamaño máximo de los mensajes MQTT de 8.092 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.

  • Añade 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 de Greengrass Nucleus.

2.0.0

Versión inicial.