62 lines
1.5 KiB
Plaintext
62 lines
1.5 KiB
Plaintext
// vim: set sw=4 ts=4 sts=4 et :
|
|
@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
|
|
[Piper] as piper
|
|
[Whisper] as whisper
|
|
|
|
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 -[#pink]--> piper
|
|
hass -[#pink]--> whisper
|
|
hass -[#purple]> mqtt
|
|
z2m -[#purple]-> mqtt
|
|
|
|
}
|
|
|
|
|
|
legend right
|
|
Legend
|
|
|<color:blue><&arrow-right></color> | HTTP |
|
|
|<color:purple><&arrow-right></color> | MQTT |
|
|
|<color:orange><&arrow-right></color> | WebSocket |
|
|
|<color:teal><&arrow-right></color> | PostgreSQL |
|
|
|<color:red><&arrow-right></color> | USB |
|
|
|<color:lightblue><&arrow-right></color> | ESPHome, etc. |
|
|
|<color:pink><&arrow-right></color> | Wyoming |
|
|
end legend
|
|
@enduml
|