Carta Helm di Tableau Server - Panoramica
Importante: questa documentazione presuppone la conoscenza di Helm e delle carte Helm e non intende fornire esempi dettagliati e prescrittivi. È destinata ai clienti che hanno familiarità sia con Tableau Server che con Helm e le carte Helm.
Introduzione
La carta Helm di Tableau Server consente di distribuire e gestire Tableau Server su cluster Kubernetes utilizzando Helm, lo strumento di gestione di pacchetti per Kubernetes. Questa carta Helm riunisce in un pacchetto tutte le risorse Kubernetes necessarie per eseguire Tableau Server in un ambiente in contenitori, fornendo un processo di distribuzione dichiarativo e ripetibile.
Che cos’è Helm?
Helm è uno strumento di gestione di pacchetti per Kubernetes che semplifica la distribuzione e la gestione di applicazioni. Helm utilizza carte, che sono pacchetti di risorse Kubernetes preconfigurate. Una carta Helm per Tableau Server riunisce in bundle tutti i componenti necessari, tra cui:
- Distribuzioni e StatefulSet
- Configurazioni di servizi e ingresso
- Mappe di configurazione e segreti
- PersistentVolumeClaim per l’archiviazione dei dati
- Criteri di controllo degli accessi basato su ruolo e account di servizio
Architettura
Componenti
La carta Helm di Tableau Server distribuisce i seguenti componenti principali:
Contenitore Tableau Server
- Esegue un’istanza completa di Tableau Server all’interno di un contenitore Linux
- Basato sull’immagine UBI 8 con processi di gestione
supervisord - Inizializza e avvia automaticamente Tableau Server all’avvio del contenitore
Risorse Kubernetes
- StatefulSet: gestisce i pod Tableau Server con identità di rete stabili
- PersistentVolumeClaim: fornisce l’archiviazione permanente per i dati di Tableau in
/var/opt/tableau - Servizio: espone Tableau Server all’interno del cluster
- Ingress (facoltativo): fornisce l’accesso esterno a Tableau Server
- ConfigMap: memorizza una configurazione non sensibile
- Segreto: memorizza dati sensibili come licenze e password
Topologia di distribuzione
Distribuzione a nodo singolo
- Un solo pod di Tableau Server con tutti i processi in un singolo nodo
- Adatto per carichi di lavoro di sviluppo, test e produzione di dimensioni ridotte
- La configurazione più semplice con requisiti minimi di risorse
Distribuzione multi-nodo
- Più pod di Tableau Server distribuiti nei nodi
- Archiviazione di rete condivisa per il coordinamento del bootstrap
- Disponibilità e scalabilità maggiori per i carichi di lavoro di produzione
- Richiede una configurazione aggiuntiva per il coordinamento dei nodi
Considerazioni sulla sicurezza
- Gestione dei segreti: utilizza sempre segreti Kubernetes per i dati sensibili in produzione
- Criteri di rete: valuta la possibilità di implementare criteri di rete per limitare la comunicazione dei pod
- Controllo degli accessi basato su ruolo: la carta crea un account di servizio; configura il controllo degli accessi basato su ruolo in base alle esigenze
- Sicurezza delle immagini: utilizza immagini di contenitori attendibili ed esegui la scansione per rilevare le vulnerabilità
- TLS/SSL: abilita TLS per l’ingresso negli ambienti di produzione
Vantaggi dell’utilizzo di Helm
Distribuzione semplificata
- Installazione di Tableau Server con un solo comando
helm install - Configurazione dichiarativa tramite file di valori
- Infrastructure as code (IaC) con controllo delle versioni
Facilità di aggiornamento e ripristino
- Aggiornamento delle versioni di Tableau Server con
helm upgrade - Ripristino delle versioni precedenti in caso di problemi
- Tracciamento della cronologia delle distribuzioni
Ambienti coerenti
- Distribuzione della stessa carta negli ambienti di sviluppo, staging e produzione
- Personalizzazione specifica dell’ambiente tramite file di valori
- Riduzione della deriva della configurazione
Procedure consigliate integrate
- Richieste e limiti di risorse preconfigurati
- Controlli di integrità e sonde di preparazione
- Contesti di sicurezza e criteri di controllo degli accessi basato su ruolo
Piattaforme supportate
Distribuzioni Kubernetes
- Cluster Kubernetes autogestiti (1.19+)
- Amazon EKS (Elastic Kubernetes Service)
- Azure AKS (Azure Kubernetes Service)
- Google GKE (Google Kubernetes Engine)
- Red Hat OpenShift
Requisiti di produzione
- Kubernetes 1.19 o versione successiva
- Helm 3.x
- Provisioner di archiviazione persistente (per PersistentVolumes)
- Controller LoadBalancer o Ingress (per l’accesso esterno)
- Almeno 16 GB di RAM e 4 core CPU per nodo (consigliati 8 core CPU, consulta Requisiti hardware minimi e raccomandazioni per Tableau Server)
Limitazioni
Sebbene la carta Helm offra molti vantaggi, tieni presente quanto segue:
- Ogni pod esegue un’istanza completa di Tableau Server, non singoli microservizi.
- Il riavvio del contenitore richiede la reinizializzazione dei processi (ma non dei dati).
- La scalabilità automatica orizzontale dei pod non è supportata a causa dell’architettura di Tableau Server.
- Le distribuzioni multi-nodo richiedono un’archiviazione di rete condivisa per il coordinamento.
- Alcune configurazioni avanzate di Tableau Server potrebbero richiedere script di inizializzazione personalizzati.
Primi passi
Per iniziare a utilizzare la carta Helm di Tableau Server, consulta Carta Helm di Tableau Server - Prerequisiti.
Per esempi di distribuzione, consulta Carta Helm di Tableau Server - Distribuzione.
Per indicazioni sulla risoluzione dei problemi, consulta Carta Helm di Tableau Server - Risoluzione dei problemi.