Home / Manutenção / Instalando Home Assistant no Kubernetes com OpenMediaVault

Instalando Home Assistant no Kubernetes com OpenMediaVault

Instalar Home Assistant no Kubernetes com OpenMediaVault

Instalar Home Assistant no Kubernetes com OpenMediaVault

Este guia mostra como instalar o Home Assistant em um cluster Kubernetes rodando sobre OpenMediaVault. Inclui configuração de volumes persistentes, criação de arquivos YAML de deployment e service, e exposição do serviço para acesso externo.

1. Pré-requisitos

  • Kubernetes já instalado e funcional no servidor OpenMediaVault.
  • kubectl configurado para acessar o cluster.
  • Storage provisionado (pode ser via NFS, hostPath ou outro backend suportado).

2. Criar Volume Persistente (PV) e PersistentVolumeClaim (PVC)

O Home Assistant precisa de armazenamento persistente para manter suas configurações.

apiVersion: v1
kind: PersistentVolume
metadata:
  name: ha-pv
spec:
  capacity:
    storage: 5Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: /srv/k8s/homeassistant
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: ha-pvc
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi

3. Deployment do Home Assistant

Crie o deployment para rodar o container oficial do Home Assistant.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: home-assistant
spec:
  replicas: 1
  selector:
    matchLabels:
      app: home-assistant
  template:
    metadata:
      labels:
        app: home-assistant
    spec:
      containers:
      - name: home-assistant
        image: ghcr.io/home-assistant/home-assistant:stable
        ports:
        - containerPort: 8123
        volumeMounts:
        - name: ha-storage
          mountPath: /config
      volumes:
      - name: ha-storage
        persistentVolumeClaim:
          claimName: ha-pvc

4. Service para expor o Home Assistant

Você pode expor via NodePort ou Ingress. Exemplo com NodePort:

apiVersion: v1
kind: Service
metadata:
  name: home-assistant
spec:
  type: NodePort
  selector:
    app: home-assistant
  ports:
    - port: 8123
      targetPort: 8123
      nodePort: 30123

5. Acesso ao Home Assistant

  • Após aplicar os manifests, o Home Assistant estará acessível em http://<IP-do-nó>:30123.
  • Se preferir, configure um Ingress Controller para expor via domínio e HTTPS.

6. Boas práticas

  • Use Ingress + Cert-Manager para HTTPS.
  • Configure backups regulares do volume persistente.
  • Monitore os recursos com kubectl logs e kubectl describe.

Deixe um Comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *