Saltar a contenido

Zigbee2MQTT

Gateway Zigbee → MQTT de la domótica.

Resumen

Conecta la red Zigbee física (≈80 dispositivos) con el resto del sistema publicando en Mosquitto. Corre en kawhi con el coordinador Sonoff pasado por USB y conserva la identidad de red del legacy (network_key, pan_id, canal 11), por lo que no hubo que re-emparejar dispositivos. La UI es solo LAN y está protegida por Authentik.

Estado

Campo Valor
Estado Operativo
Argo CD Application zigbee2mqtt
Namespace zigbee2mqtt

Despliegue

Campo Valor
Método Manifests propios
Chart / imagen koenkk/zigbee2mqtt:2.12.1
Origen clusters/luka/apps/zigbee2mqtt/, clusters/luka/config/zigbee2mqtt/
Config en el repo clusters/luka/config/zigbee2mqtt/ y blueprint de Authentik

Red

Campo Valor
Service zigbee2mqtt (ClusterIP)
IP —
Puertos 80 → 8080
URL interna https://zigbee2mqtt.local.gorkarevilla.com
URL externa — (solo LAN)
TLS wildcard cert-manager *.local.gorkarevilla.com

Acceso y usuarios

  • Usuarios/roles: Authentik forward-auth, grupo admins.
  • Break-glass: kubectl -n zigbee2mqtt port-forward deploy/zigbee2mqtt 8080:8080.
  • Credenciales: Secret zigbee2mqtt-mqtt (VKS) inyectado por env. Nunca en claro aquí.

Configuración

  • 1 réplica, strategy: Recreate, fijado a kawhi, privileged: true para acceder al char device.
  • El dongle se monta desde /dev/serial/by-id/usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_...-if00-port0 a /dev/ttyACM0, replicando el mapeo del compose legacy; configuration.yaml sigue usando serial.port: /dev/ttyACM0.
  • La config efectiva de MQTT (server, user, password) viene del Deployment vía ZIGBEE2MQTT_CONFIG_*; el configuration.yaml del PVC mantiene la red Zigbee y los dispositivos.
  • channel: 11, pan_id y network_key heredados del legacy (no cambiar).

Almacenamiento

  • PVC zigbee2mqtt-data (2Gi, Longhorn, Prune=false,Delete=false) → /app/data: configuration.yaml, database.db, devices.yaml, coordinator_backup.json, state.json.

Dependencias

  • Depende de: Mosquitto (.63:1883), Longhorn, el USB de kawhi.
  • Usado por: Home Assistant (entidades Zigbee), Homepage (enlace), Uptime Kuma.

Backup y recuperación

  • Sin backup automático todavía (pendiente del 3-2-1). Un backup manual del PVC basta: contiene toda la red Zigbee.

Monitorización

  • No expone métricas Prometheus nativas; no hay PodMonitor.
  • Uptime Kuma: HTTP interno al frontend y TCP al broker.

Referencias

Notas / TODO

  • Si el hostPath del by-id no resolviera, usar una regla udev (/dev/zigbee) o el path /dev/ttyUSB0.
  • No cambiar network_key, pan_id ni canal sin re-emparejar.
  • frontend.url del configuration.yaml sigue apuntando al hostname público antiguo; solo afecta al enlace de configuración del dispositivo en HA.