Tableau Server und Helm-Diagramm

Tableau Server-Helm-Diagramm – Übersicht

Wichtig: In dieser Dokumentation wird davon ausgegangen, dass Sie sich mit Helm und Helm-Diagrammen auskennen, und es wird nicht versucht, detaillierte, präskriptive Beispiele zu liefern. Die Dokumentation ist für Kunden gedacht, die sowohl mit Tableau Server als auch mit Helm und Helm-Diagrammen vertraut sind.

Einführung

Das Helm-Diagramm von Tableau Server ermöglicht es Ihnen, Tableau Server in Kubernetes-Clustern bereitzustellen und zu verwalten, indem Sie Helm, den Paketmanager für Kubernetes, verwenden. Dieses Helm-Diagramm enthält alle Kubernetes-Ressourcen, die zum Ausführen von Tableau Server in einer Container-Umgebung erforderlich sind, und bietet einen deklarativen und wiederholbaren Bereitstellungsprozess.

Was ist Helm?

Helm ist ein Paketmanager für Kubernetes, der die Bereitstellung und Verwaltung von Anwendungen vereinfacht. Helm verwendet Diagramme, bei denen es sich um Pakete vorkonfigurierter Kubernetes-Ressourcen handelt. In einem Helm-Diagramm für Tableau Server sind alle erforderlichen Komponenten zusammengefasst, inklusive:

  • Bereitstellungen und StatefulSets
  • Dienst- und Eingangskonfigurationen
  • ConfigMaps und Geheimnisse
  • PersistentVolumeClaims für die Datenspeicherung
  • RBAC-Richtlinien und ServiceAccounts

Architektur

Komponenten

Das Tableau Server-Helm-Diagramm stellt die folgenden Hauptkomponenten bereit:

Tableau Server-Container

  • Führt eine komplette Tableau Server-Instanz in einem Linux-Container aus
  • Basiert auf dem UBI 8-Image mit supervisord -Verwaltungsprozessen
  • Initialisiert und startet Tableau Server automatisch beim Start des Containers

Kubernetes-Ressourcen

  • StatefulSet: Verwaltet Tableau Server-Pods mit stabilen Netzwerkidentitäten
  • PersistentVolumeClaim: Stellt persistenten Speicher für Tableau-Daten unter /var/opt/tableau bereit
  • Dienst: Macht Tableau Server innerhalb des Clusters verfügbar
  • Eingang (optional): Bietet externen Zugriff auf Tableau Server
  • ConfigMap: Speichert Konfigurationen, die nicht vertraulich sind
  • Geheimnis: Speichert vertrauliche Daten (wie Lizenzen und Kennwörter)

Bereitstellungstopologie

Bereitstellung mit einem einzigen Knoten

  • Ein Tableau Server-Pod mit allen Prozessen auf einem einzigen Knoten
  • Ist für Entwicklungs-, Test- und kleine Produktions-Workloads geeignet
  • Einfachste Konfiguration mit minimalem Ressourcenbedarf

Bereitstellung mit mehreren Knoten

  • Mehrere Tableau Server-Pods, verteilt auf Knoten
  • Freigegebener Netzwerkspeicher für Bootstrap-Koordination
  • Höhere Verfügbarkeit und Skalierbarkeit für Produktions-Workloads
  • Erfordert zusätzliche Konfiguration für Knotenkoordination

Sicherheitsaspekte

  • Verwaltung von Geheimnissen: Verwenden Sie immer Kubernetes-Geheimnisse für vertrauliche Daten in Produktionsumgebungen.
  • Netzwerkrichtlinien: Erwägen Sie die Implementierung von Netzwerkrichtlinien, um die Pod-Kommunikation einzuschränken.
  • RBAC: Das Diagramm erstellt ein Dienstkonto. Konfigurieren Sie RBAC je nach Bedarf.
  • Image-Sicherheit: Verwenden Sie vertrauenswürdige Container-Images, und scannen Sie auf Schwachstellen.
  • TLS/SSL: Aktivieren Sie TLS für eingehenden Datenverkehr in Produktionsumgebungen.

Vorteile der Verwendung von Helm

Vereinfachte Bereitstellung

  • Installieren Sie Tableau Server mit einem einzigen helm install-Befehl.
  • Deklarative Konfiguration durch Wertedateien
  • Versionsgesteuerte Infrastruktur als Code

Einfaches Aktualisieren und Zurücksetzen

  • Aktualisieren Sie Tableau Server-Versionen mittels helm upgrade.
  • Setzen Sie wieder auf vorherige Versionen zurück, wenn Probleme auftreten.
  • Verfolgen Sie den Bereitstellungsverlauf.

Konsistente Umgebungen

  • Dasselbe Diagramm wird zur Bereitstellung in Entwicklungs-, Staging- und Produktionsumgebung verwendet
  • Umgebungsspezifische Anpassung durch Wertedateien
  • Weniger abweichende Konfigurationen

Integrierte Best Practices

  • Vorkonfigurierte Ressourcenanforderungen und -limits
  • Integritätsprüfungen und Bereitschaftstests
  • Sicherheitskontexte und RBAC-Richtlinien

Unterstützte Plattformen

Kubernetes-Distributionen

  • Selbstverwaltete Kubernetes-Cluster (1.19+)
  • Amazon EKS (Elastic Kubernetes Service)
  • Azure AKS (Azure Kubernetes Service)
  • Google GKE (Google Kubernetes Engine)
  • Red Hat OpenShift

Produktionsanforderungen

Einschränkungen

Auch wenn das Helm-Diagramm viele Vorteile bietet, sollten Sie Folgendes beachten:

  • Auf jedem Pod wird eine vollständige Tableau Server-Instanz ausgeführt, nicht einzelne Microservices.
  • Der Neustart des Containers erfordert die Neuinitialisierung von Prozessen (aber nicht von Daten).
  • HPA (Horizontal Pod Autoscaling) wird aufgrund der Architektur von Tableau Server nicht unterstützt.
  • Für Bereitstellungen mit mehreren Knoten ist zur Koordination ein gemeinsam genutzter Netzwerkspeicher erforderlich.
  • Für einige fortgeschrittene Tableau Server-Konfigurationen sind möglicherweise benutzerdefinierte Init-Skripts erforderlich.

Erste Schritte

Informationen zu den ersten Schritten mit dem Tableau Server-Helm-Diagramm finden Sie unter Tableau Server-Helm-Diagramm – Voraussetzungen.

Bereitstellungsbeispiele finden Sie unter Tableau Server-Helm-Diagramm – Bereitstellen.

Anleitungen zur Fehlerbehebung finden Sie unter Tableau Server-Helm-Diagramm – Fehlerbehebung.

Zusätzliche Ressourcen