@startuml person User collections "Sensors and\nDevices" as sensors cloud Kubernetes { component Ingress as ingress { port HTTPS as ingress_http port MQTT as ingress_mqtt } node "Main Node Cluster" { [Home Assistant] as hass queue Mosquitto as mqtt database PostgreSQL as postgres } node "Raspberry Pi Node" as pi { [ZWaveJS2MQTT] as zwavejs [Zigbee2MQTT] as z2m rectangle "Zigbee Controller" as usb_zigbee rectangle "ZWave Controller" as usb_zwave z2m-[#red]-> usb_zigbee zwavejs -[#red]-> usb_zwave } User --[#blue]-> ingress_http sensors --[#purple]-> ingress_mqtt sensors <-[#lightblue]--- hass ingress --[#blue]-> hass ingress ---[#blue]-> zwavejs ingress ---[#blue]-> z2m ingress --[#purple]-> mqtt hass -[#teal]-> postgres hass -[#orange]-> zwavejs hass -[#purple]> mqtt z2m -[#purple]-> mqtt } legend right Legend |<&arrow-right> | HTTP | |<&arrow-right> | MQTT | |<&arrow-right> | WebSocket | |<&arrow-right> | PostgreSQL | |<&arrow-right> | USB | |<&arrow-right> | ESPHome, etc. | end legend @enduml