Zum Hauptinhalt springen
  1. Beiträge/
  2. Kleines Homelab/
  3. k3s-prod: Kubernetes Cluster Konfiguration und Anwendungsbereitstellung/

Music Assistant

Inhaltsverzeichnis

Music Assistant
#

Music Assistant ist ein selbst gehosteter Musik-Server, der verschiedene Musikquellen (z.B. lokale Bibliothek, Streaming-Dienste) und Wiedergabegeräte (z.B. Sonos, Chromecast, UPnP) zu einer einheitlichen Oberfläche zusammenführt. Die Integration mit Home Assistant ermöglicht die Steuerung über Automationen.

Deployment
#

Argo Deployment

Quelle
#

Das Helm-Chart stammt aus dem bdclark Helm Repository. Das Docker-Image wird direkt von der offiziellen Music-Assistant-Distribution bezogen.

Dokumentation
#

Funktion
#

Music Assistant dient als zentrale Schaltstelle für die Musikwiedergabe im Heimnetz. Es übernimmt die Verwaltung der Musikbibliothek, die Anbindung an Streaming-Dienste und die Steuerung von Wiedergabegeräten. Die direkte Netzwerkanbindung via Multus ermöglicht es, Protokolle wie UPnP/DLNA und mDNS zuverlässig zu nutzen, die in einem isolierten Pod-Netzwerk nicht funktionieren würden.

Lokale Anpassungen
#

Netzwerk (Multus MacVLAN)
#

Music Assistant erhält über eine NetworkAttachmentDefinition eine dedizierte Netzwerkschnittstelle mit fester IP im Heimnetz:

  • IPv4: 192.168.178.92/24
  • IPv6: 2003:a:b16:4700::92/64
  • Gateway: 192.168.178.1 / fe80::2e3a:fdff:fefb:c9e

Weitere Einstellungen
#

  • Ingress: Erreichbar unter https://ma.zyria.de über Traefik.
  • TLS: Zertifikat via cert-manager mit letsencrypt-production ClusterIssuer.
  • Persistenz: Musikbibliothek und Konfiguration werden auf einem bestehenden PersistentVolumeClaim (music-assistant) gespeichert.
  • Automatische Updates: Keel überwacht das Image und aktualisiert bei neuen Tags automatisch.

Installation
#

Die Anwendung wird mittels Kustomize und Helm durch ArgoCD bereitgestellt:

1kubectl kustomize --enable-helm apps/music-assistant | kubectl apply -n music-assistant -f -

Abhängigkeiten
#

  • Multus: Für die direkte Netzwerkanbindung via MacVLAN zwingend erforderlich.
  • Cert-Manager: Für die automatische TLS-Zertifikatsverwaltung.
  • Traefik: Als Ingress-Controller für den externen HTTPS-Zugriff.
  • Longhorn: Als Storage-Provider für das Persistent Volume.
Fabrice Kirchner
Autor
Fabrice Kirchner
stolzer Vater, Nerd, Admin