Evict Home Assistant from k8s-edge (read meter via MQTT, drop privileged) #85

Merged
k.renner merged 1 commits from worktree-ha-meter-mqtt-bridge into master 2026-06-27 21:08:09 +00:00
+6 -14
View File
@@ -23,13 +23,10 @@ spec:
# when that field was dropped from the manifest. Safe to remove
# in a follow-up once SSA owns it with this value.
serviceAccountName: default
nodeSelector:
topology.kubernetes.io/zone: edge
tolerations:
- key: workload-class
operator: Equal
value: pinned
effect: NoSchedule
# No nodeSelector/toleration: HA reads the power meter over MQTT now
# (sml2mqtt bridge owns the USB device on edge), so it no longer needs
# the edge USB device and schedules on the general cluster pool. This
# gets the heavy HA pod (8Gi) off the soon-to-be-tiny edge box.
containers:
- name: home-assistant
image: ghcr.io/home-assistant/home-assistant:2026.6.4 # {"$imagepolicy": "flux-system:home-assistant"}
@@ -43,8 +40,6 @@ spec:
volumeMounts:
- name: config
mountPath: /config
- name: stromzaehler
mountPath: /dev/stromzaehler
# Initial restore of a 1 GB encrypted HAOS backup runs single-
# threaded inside HA's Python and exceeded the old liveness
# window, getting SIGTERM'd mid-restore. Startup probe gives a
@@ -78,8 +73,8 @@ spec:
memory: 2Gi
limits:
memory: 8Gi
securityContext:
privileged: true
# No securityContext/privileged: the USB meter is gone (read via
# MQTT now), which was the only reason HA needed privileged.
# Reverse-proxy sidecar. ingress-nginx → :8124 → 127.0.0.1:8123.
# HA's TCP peer is always loopback, so http.trusted_proxies =
# [127.0.0.1, ::1] is static and never has to change when
@@ -171,9 +166,6 @@ spec:
# (/etc/nginx/conf.d/default.conf rendered from the .template).
- name: proxy-conf-d
emptyDir: {}
- name: stromzaehler
hostPath:
path: /dev/serial/by-id/usb-FTDI_FT230X_Basic_UART_DK0E1GP5-if00-port0
# code-server's settings/extensions cache. Not on the config PVC
# so installed extensions don't pollute HA's /config listing.
# Trade-off: extensions reset across pod restarts.