Fernwartung Download starten

TrueNAS mit MCP: KI-gestützte NAS-Verwaltung per natürlicher Sprache

TrueNASStorageMonitoring
TrueNAS mit MCP: KI-gestützte NAS-Verwaltung per natürlicher Sprache

Die Verwaltung von Storage-Systemen besteht zu einem großen Teil aus wiederkehrenden Aufgaben: Statusprüfungen, Snapshot-Erstellung, Freigabenverwaltung, Benutzerrechte. Mit dem Model Context Protocol (MCP) lässt sich TrueNAS an KI-Assistenten anbinden, die diese Aufgaben über natürlichsprachliche Anweisungen ausführen. Statt durch Menüs zu klicken oder API-Calls zusammenzubauen, formulieren Administratoren ihre Absichten in Klartext.

Was ist MCP?

Das Model Context Protocol ist ein offener Standard von Anthropic, der KI-Modelle mit externen Datenquellen und Werkzeugen verbindet. MCP definiert eine einheitliche Schnittstelle, über die ein KI-Assistent:

  • Ressourcen lesen kann (z. B. Pool-Status, Disk-Informationen)
  • Werkzeuge aufrufen kann (z. B. Snapshot erstellen, Dienst neustarten)
  • Prompts verwenden kann (vordefinierte Abfragevorlagen)

Der entscheidende Vorteil gegenüber einer direkten API-Integration: MCP abstrahiert die TrueNAS-API und stellt dem KI-Modell eine semantisch sinnvolle Schnittstelle bereit. Das Modell muss nicht wissen, dass ein Snapshot über POST /api/v2.0/zfs/snapshot erstellt wird — es ruft einfach das Tool create_snapshot auf.

Architektur: MCP-Server für TrueNAS

Die MCP-Integration besteht aus drei Komponenten:

KI-Assistent (Claude, GPT, etc.)
        ↕ MCP-Protokoll (JSON-RPC über stdio/SSE)
MCP-Server für TrueNAS
        ↕ REST-API (HTTPS)
TrueNAS SCALE/CORE

Der MCP-Server ist ein leichtgewichtiger Prozess, der als Brücke zwischen dem KI-Modell und der TrueNAS-API fungiert. Er übersetzt MCP-Werkzeugaufrufe in TrueNAS-API-Requests und formatiert die Ergebnisse für das KI-Modell.

MCP-Server einrichten

Der MCP-Server lässt sich als Python-Anwendung oder als Container betreiben:

# MCP-Server für TrueNAS installieren
pip install truenas-mcp-server

# Konfiguration erstellen
cat > ~/.config/truenas-mcp/config.json << 'EOF'
{
  "truenas_url": "https://truenas.example.com",
  "api_key": "1-abcdef1234567890",
  "verify_ssl": true,
  "read_only": false,
  "allowed_tools": [
    "get_system_info",
    "get_pool_status",
    "list_datasets",
    "create_snapshot",
    "list_snapshots",
    "get_disk_info",
    "get_smart_status",
    "list_shares",
    "get_alerts",
    "get_replication_status"
  ]
}
EOF

API-Key in TrueNAS erstellen

Erstellen Sie einen dedizierten API-Key mit eingeschränkten Berechtigungen:

  1. Credentials > API Keys > Add in der TrueNAS-Weboberfläche
  2. Vergeben Sie einen aussagekräftigen Namen (z. B. mcp-assistant)
  3. Notieren Sie den generierten Key — er wird nur einmal angezeigt

Wichtig: Verwenden Sie nicht den Root-API-Key. Erstellen Sie einen Benutzer mit minimalen Rechten und generieren Sie den Key für diesen Benutzer.

Natürlichsprachliche NAS-Verwaltung

Status-Abfragen

Die häufigste Interaktion: Administratoren fragen den Zustand des Systems ab.

Eingabe: “Wie ist der Status des Pools tank?”

Der KI-Assistent ruft intern get_pool_status(pool="tank") auf und erhält:

{
  "name": "tank",
  "status": "ONLINE",
  "scan": {
    "function": "SCRUB",
    "state": "finished",
    "start_time": "2026-04-27T02:00:00",
    "end_time": "2026-04-27T08:34:12",
    "errors": 0
  },
  "topology": {
    "data": [{"type": "RAIDZ2", "disks": 6, "status": "ONLINE"}],
    "log": [{"type": "MIRROR", "disks": 2, "status": "ONLINE"}],
    "special": [{"type": "MIRROR", "disks": 2, "status": "ONLINE"}]
  },
  "usage": {
    "total": "43.7 TiB",
    "used": "31.2 TiB",
    "free": "12.5 TiB",
    "percent_used": 71.4
  }
}

Antwort des Assistenten: “Der Pool tank ist online und gesund. Der letzte Scrub wurde am 27. April erfolgreich abgeschlossen — keine Fehler. Die Auslastung liegt bei 71,4 % (31,2 TiB von 43,7 TiB belegt). SLOG und Special VDEV sind beide im Mirror-Modus online.”

Snapshot-Erstellung per Chat

Eingabe: “Erstelle einen Snapshot von tank/vms mit dem Namen pre-update.”

Der Assistent führt create_snapshot(dataset="tank/vms", name="pre-update") aus:

{
  "success": true,
  "snapshot": "tank/vms@pre-update",
  "created": "2026-05-01T10:15:32Z",
  "size": "0 B"
}

Antwort: “Snapshot tank/vms@pre-update wurde erfolgreich erstellt. Aktuelle Größe: 0 B (wächst mit Änderungen am Dataset).”

Komplexere Abfragen

Eingabe: “Zeig mir alle Disks mit SMART-Warnungen.”

Der Assistent ruft get_smart_status() auf und filtert die Ergebnisse:

Antwort: “Eine Disk zeigt SMART-Warnungen: da3 (Serial: WDC-WCC4E1234567) hat 3 Reallocated Sectors. Die Disk ist seit 47.238 Stunden in Betrieb. Ich empfehle, zeitnah einen Ersatz bereitzuhalten — der Pool ist mit RAIDZ2 gegen einen Disk-Ausfall geschützt, aber bei einem zweiten Ausfall wäre er gefährdet.”

Freigaben verwalten

Eingabe: “Erstelle eine neue SMB-Freigabe für das Dataset tank/abteilung-finanzen mit Lese-/Schreibzugriff für die Gruppe ‘finanzen’.”

Der Assistent führt mehrere API-Calls aus:

  1. Prüft, ob das Dataset existiert
  2. Erstellt die SMB-Freigabe
  3. Setzt die ACLs für die Gruppe

Antwort: “SMB-Freigabe ‘Finanzen’ wurde erstellt. Pfad: /mnt/tank/abteilung-finanzen. Die Gruppe ‘finanzen’ hat Lese-/Schreibzugriff. Die Freigabe ist unter \\truenas\Finanzen erreichbar.”

Verfügbare MCP-Werkzeuge

Ein typischer MCP-Server für TrueNAS stellt folgende Werkzeuge bereit:

WerkzeugBeschreibungRead/Write
get_system_infoSysteminformationen (Version, Uptime, Hardware)Read
get_pool_statusPool-Status und TopologieRead
list_datasetsAlle Datasets eines Pools auflistenRead
get_dataset_infoDetails zu einem Dataset (Quota, Compression, etc.)Read
create_snapshotSnapshot eines Datasets erstellenWrite
list_snapshotsSnapshots eines Datasets anzeigenRead
delete_snapshotSnapshot löschenWrite
get_disk_infoDisk-Details (Serial, Modell, Temperatur)Read
get_smart_statusSMART-Status aller DisksRead
list_sharesAlle Freigaben (SMB, NFS, iSCSI) auflistenRead
get_alertsAktive Alerts anzeigenRead
get_replication_statusReplikations-Jobs und deren StatusRead
restart_serviceDienst neustarten (SMB, NFS, etc.)Write

Sicherheitsaspekte

Die Anbindung eines KI-Assistenten an ein Produktiv-Storage-System erfordert sorgfältige Sicherheitsmaßnahmen.

Prinzip der minimalen Rechte

Konfigurieren Sie den MCP-Server mit den minimal notwendigen Werkzeugen. Für einen reinen Monitoring-Assistenten:

{
  "read_only": true,
  "allowed_tools": [
    "get_system_info",
    "get_pool_status",
    "list_datasets",
    "get_disk_info",
    "get_smart_status",
    "get_alerts"
  ]
}

Bestätigungspflicht für destruktive Aktionen

Implementieren Sie eine Bestätigungsschicht für Write-Operationen:

{
  "confirmation_required": [
    "delete_snapshot",
    "restart_service",
    "delete_share"
  ],
  "auto_approve": [
    "create_snapshot",
    "get_*"
  ]
}

So kann der Assistent Snapshots erstellen, muss aber vor dem Löschen eine explizite Bestätigung des Administrators einholen.

Audit-Logging

Jede MCP-Aktion sollte protokolliert werden:

{
  "logging": {
    "enabled": true,
    "log_file": "/var/log/truenas-mcp/audit.log",
    "log_level": "INFO",
    "include_prompts": false,
    "include_responses": true
  }
}

Wichtig: Setzen Sie include_prompts auf false, um zu verhindern, dass Benutzeranfragen mit potenziell sensiblen Informationen im Log landen.

Netzwerk-Isolation

Betreiben Sie den MCP-Server im gleichen gesicherten Netzwerk wie die TrueNAS-Management-Schnittstelle. Der MCP-Server sollte nicht aus dem Internet erreichbar sein.

Management-VLAN (10.10.1.0/24)
  ├── TrueNAS Management Interface
  ├── MCP-Server
  └── Admin-Workstations

Praxisszenarien

Szenario 1: Morning Check

Ein Administrator startet den Tag mit einer Übersicht:

“Gib mir den Morning Report für alle TrueNAS-Systeme.”

Der Assistent fragt nacheinander alle konfigurierten TrueNAS-Instanzen ab und liefert:

  • Pool-Status und Auslastung
  • Letzte Scrub-Ergebnisse
  • Aktive Alerts
  • Replikations-Status
  • Disk-Gesundheit

Szenario 2: Incident Response

Ein Alert meldet einen degradierten Pool:

“Pool tank ist degraded — welche Disk ist ausgefallen und wie ist der Resilver-Status?”

Der Assistent liefert sofort die relevanten Informationen, ohne dass der Administrator durch mehrere Weboberflächen navigieren muss.

Szenario 3: Kapazitätsplanung

“Zeig mir die Wachstumsrate des Datasets tank/vms der letzten 30 Tage und schätze, wann der Pool voll ist.”

Der Assistent analysiert die Snapshot-Größen und berechnet eine Trendprognose.

Zukunftsausblick

Die MCP-Integration für TrueNAS steht noch am Anfang, aber die Entwicklungsrichtung ist klar:

  • Proaktive Empfehlungen: Der Assistent erkennt Muster (z. B. regelmäßig volle Pools) und schlägt Maßnahmen vor
  • Multi-System-Verwaltung: Ein einziger Assistent verwaltet alle TrueNAS-Instanzen im Unternehmen
  • Automatisierte Runbooks: Komplexe Prozeduren (Pool-Erweiterung, Disk-Austausch) werden als MCP-Workflows definiert
  • Integration mit Ticketsystemen: Alerts werden automatisch zu Tickets mit Kontext und Handlungsempfehlungen

iXsystems arbeitet aktiv an einer offiziellen MCP-Integration für TrueNAS SCALE. Bis zur nativen Unterstützung bieten Community-Projekte bereits funktionale MCP-Server, die über die TrueNAS-REST-API angebunden werden.

Fazit

MCP macht die TrueNAS-Verwaltung zugänglicher und effizienter. Routineaufgaben wie Status-Checks und Snapshot-Erstellung lassen sich in Sekunden per Chat erledigen, komplexe Abfragen erfordern keine API-Kenntnisse mehr. Der Schlüssel zum sicheren Einsatz liegt in konsequentem Rechtemanagement, Bestätigungspflichten für destruktive Aktionen und lückenlosem Audit-Logging. Wer MCP heute einrichtet, legt die Grundlage für eine KI-gestützte Infrastrukturverwaltung der Zukunft.

Mehr zu diesen Themen:

IT-Beratung gewünscht?

Kontaktieren Sie uns für eine unverbindliche Beratung zu Proxmox, OPNsense, TrueNAS und mehr.

Jetzt Kontakt aufnehmen