Distribuire Data Connect

Prima di distribuire Data Connect nella tua organizzazione, verifica che siano stati soddisfatti i prerequisiti:

Fase 1: impostare il cluster

Verifica le specifiche seguenti relative a connettività e accesso:

  • L’infrastruttura, il cluster e il contenitore Data Connect richiedono l’accesso di rete ai servizi del provider di orchestrazione (n. 2 nell’immagine sopra) e a Tableau Cloud (solo in uscita, n. 5).

  • L’infrastruttura, il cluster, il contenitore e l’agente Data Connect richiedono l’accesso di rete al database (n. 6).

Consulta Specifiche di rete.

Distribuire e configurare

Esegui la seguente procedura su ogni computer della tua organizzazione in cui desideri eseguire il cluster Kubernetes.

  1. Verifica che il volume secondario non sia formattato. Nel nodo Linux esegui questo comando:

    lsblk -f

    Nell’immagine seguente viene mostrato un esempio in cui il volume aggiuntivo nvme1n1 su un nodo del cluster è non formattato e FSTYPE è vuoto:

  2. Nella scheda Data Connect fai clic sul pulsante Nuovo pool in Pool. Nella finestra Nuovo pool immetti un nome per il pool e quindi fai clic su Crea.

  3. Nella scheda Data Connect fai clic su Nuovo clusterin Cluster e nodi. Nella finestra di dialogo Nuovo cluster immetti un nome per il cluster e quindi fai clic su Crea.

  4. Nel cluster appena creato fai clic sulla colonna Azioni e quindi su Nuovo nodo. Nella finestra Aggiungi nuovo nodo, fai clic su Scarica il file.

    Nella cartella Download viene scaricato un file cluster.tar. Questo file contiene gli script di bootstrapping che verranno eseguiti sul nodo.

  5. Copia il file cluster.tar nel tuo computer. L’esempio seguente mostra come copiare il file tar, estrarre i file, trasformare lo script in un file eseguibile e quindi eseguire lo script. La procedura di esempio viene eseguita nel contesto di AWS. Modifica i percorsi dei file per il tuo ambiente.

    Esegui i seguenti comandi come utente root o sudo, sostituendo <key-name> E <IP-address> con i tuoi valori:

    > scp -i <key-name>.pem /Downloads/cluster.tar ec2-user@ip-<IP-address>.us-west-2compute.internal:~/

    > ssh -i <key-name>.pem ex2-user@ip-<IP-address>.us-west-2compute.internal

    > tar -xvf clustertar.tar

    > chmod +x onboard_node.sh preflight_check.sh

    > ./onboard_node.sh

    Dopo la corretta esecuzione dello script nella finestra del terminale viene visualizzato il messaggio Successfully performed all operations e il team di Tableau avvierà il processo di provisioning.

    In caso di errore verifica che la distribuzione sia conforme ai requisiti hardware minimi e alle specifiche di rete descritte in Pianificare la distribuzione di Data Connect.

  6. Nella scheda Data Connect del tuo sito puoi trovare il pool creato nella fase 2. Nella colonna Azioni fai clic su Assegna cluster e quindi seleziona il cluster creato nella fase 3.

  7. Fai clic sulla freccia di espansione (⌄) sul cluster per visualizzare il nome host e le azioni disponibili. Se queste informazioni non vengono visualizzate, potrebbe essere necessario ricaricare la pagina. Dopo aver confermato che il nome host è il nodo di destinazione, fai clic su Accetta nodo e quindi su Conferma.

    Il nodo del cluster passa allo stato Provisioning. Il provisioning del nodo può richiedere anche più di un’ora.

  8. Quando lo stato del nodo cambia in Disponibile, vai al pool a cui hai assegnato il cluster e fai clic sul pulsante delle azioni (...), quindi fai clic su Aggiorna token. Verifica di aggiornare i token per il pool corretto, quindi fai clic su Conferma.

  9. Attendi il completamento dell’aggiornamento dei token. Una volta completata l’operazione, lo stato del pool viene impostato su Disponibile. Torna al cluster e fai clic sulla freccia di espansione (⌄) per comprimere la sezione del nome del cluster. Fai clic sul pulsante delle azioni per il cluster (...) e quindi su Ottieni informazioni sul registro contenitori.

    • Se si verifica un errore durante il tentativo di eseguire questa fase, il registro non è ancora stato distribuito e il processo di provisioning potrebbe essere ancora in fase di finalizzazione. Attendi qualche minuto e riprova.
    • Quando vengono visualizzate le informazioni del registro (nome del server, nome utente e password), copiale per la fase successiva.

Fase 2: crea la tua immagine di base e pubblicala

In questa fase dovrai creare l’immagine di base con i driver necessari e quindi pubblicarla nel registro contenitori Docker. Prima di iniziare:

  • Verifica di avere a disposizione le informazioni del registro contenitori Docker della fase precedente.

  • Ogni pool può avere la propria immagine di base e un insieme di driver univoci.

  • Se prevedi di connetterti tramite un file TDC, dovrai includere questo file nell’immagine di base. L’utente di sistema, tableau, deve avere accesso in lettura a questo file. Per maggiori informazioni su come creare e archiviare questo file, consulta l’argomento della guida di Tableau Desktop Personalizzare e ottimizzare una connessione(Il collegamento viene aperto in una nuova finestra).

Creare il contenitore

La seguente procedura mostra un esempio su una distribuzione RHEL. Potrebbe essere necessario installare strumenti di gestione dei pacchetti o altri strumenti specifici per la tua distribuzione.

  1. Accedi a un qualsiasi nodo nel tuo cluster Kubernetes. Installa Docker e gli strumenti di supporto secondo necessità:

    #RedHat
    sudo dnf install -y container-tools podman-docker
    #Ubuntu
    sudo apt-get update -y
    sudo apt-get install -y docker.io
  2. Crea il Dockerfile:

    touch Dockerfile
  3. Aggiorna il Dockerfile per includere i driver che supportano le tue connessioni. I comandi specificati in questo Dockerfile verranno eseguiti durante la fase di creazione dell’immagine di base. Ad esempio:

    # example base 
    FROM registry.access.redhat.com/ubi8
    RUN yum -y update
    WORKDIR /
    # Go to https://tableau.com/support/drivers
    # Follow the instructions to install your drivers for linux
    CMD [“/bin/bash”]

    La directory di destinazione per i file dei driver varia. Per maggiori dettagli, consulta Scarica driver(Il collegamento viene aperto in una nuova finestra).

    Nota: Data Connect supporta i connettori Exchange che dispongono di un driver Linux e sono etichettati come “Funziona con Tableau Cloud tramite Bridge”. Per maggiori informazioni, consulta Connettori su Tableau Exchange(Il collegamento viene aperto in una nuova finestra).

    Righe di esempio di Dockerfile per il driver JDBC pubblico, in cui viene utilizzato il comando curl per scaricare il driver:

    RUN mkdir -p /opt/tableau/tableau_driver/jdbc
    RUN curl --location --output /opt/tableau/tableau_driver/jdbc/<file> <URL>
    				

    Righe di esempio Dockerfile per il driver JDBC non pubblico in cui viene utilizzato copy:

    RUN mkdir -p /opt/tableau/tableau_driver/jdbc
    COPY  <file> /opt/tableau/tableau_driver/jdbc

    Righe di esempio Dockerfile per il driver taco, in cui viene utilizzato copy:

    RUN mkdir -p /home/tableau/Documents/My_Tableau_Bridge_Repository/Connectors
    COPY  <file> /home/tableau/Documents/My_Tableau_Bridge_Repository/Connectors
  4. Mentre sei ancora connesso al tuo nodo cluster Kubernetes, imposta la variabile POOL_ID con il valore dell’ID pool. Per visualizzare il valore dell’ID pool, apri la scheda Data Connect e fai clic sul nome del pool.

    • Imposta il valore del registro copiato nei rispettivi valori.

      REGISTRY_HOSTNAME=registry_host_name_you_copied
      REGISTRY_USERNAME=registry_user_name_you_copied
      REGISTRY_PASSWORD=registry_password_you_copied
    • Imposta il valore dell’ID pool:

      POOL_ID=<pool_id_value>
  5. Crea il contenitore, che viene utilizzato come immagine di base.

    docker build -f <path_to_dockerfile> -t $REGISTRY_HOSTNAME/bridge-base:$POOL_ID .
  6. Accedi al tuo nodo Kubernetes esistente ed esegui il push dell’immagine nel registro contenitori locale.

    docker login --username $REGISTRY_USERNAME $REGISTRY_HOSTNAME
    docker push $REGISTRY_HOSTNAME/bridge-base:$POOL_ID
  7. Sotto il pool che stai configurando, fai clic sul pulsante delle azioni (...) e quindi su Aggiorna immagine di base. Questa azione avvierà una distribuzione in cui verrà utilizzata l’immagine di base e potrebbe richiedere alcuni minuti.

    Nota: ogni volta che viene creata e aggiornata una nuova immagine di base, verrà creata una nuova distribuzione. L’agente di Bridge utilizzato per l’immagine di base precedente continuerà a essere mantenuto come risorsa non assegnata. Non eliminare gli agenti di Bridge non assegnati.

Fase 3: mappare un dominio a un pool

I nomi di dominio specificati nell’elenco consentiti sono i nomi dei server utilizzati per la connessione all’origine dati.

  1. Nella scheda Data Connect seleziona il pool che hai assegnato e fai clic su Nuovo dominio nella colonna Azioni della sezione pool Elenco consentiti pool e rete privata.

  2. Nella casella di testo Dominio immetti l’URI del dominio utilizzando le informazioni descritte in Regole del registro elenco consentiti. L’URI di dominio specificato sarà limitato solo al pool che stai configurando.

  3. In Autorizzazioni dominio verifica che il pulsante di opzione Consenti sia selezionato.

  4. Al termine, fai clic su Salva.

Risoluzione dei problemi relativi alle connessioni

È necessario configurare l’infrastruttura di rete in modo che Data Connect possa raggiungere tutte le origini dati necessarie a cui desideri connetterti. Per verificare che Data Connect possa raggiungere le tue origini dati, esegui il seguente comando curl dai nodi in cui verrà eseguito Data Connect:

$ curl -v $DB_HOSTNAME:$DB_PORT

Se hai configurato correttamente la connessione, dovresti vedere una serie di risposte. Ecco alcuni esempi:

  • Host $DB_HOSTNAME:$DB_PORT was resolved: conferma che i server DNS hanno risolto correttamente il nome host.

  • Connected to $DB_HOSTNAME: conferma che per il nodo è disponibile una connessione di rete.

  • Empty reply from server. Closing connection: si tratta di un errore previsto perché curl non è un client di database.

  • Could not resolve host: $DB_HOSTNAME: si è verificato un problema relativo alla risoluzione DNS.

  • Trying $DB_IP_ADDRESS:$DB_PORT: se questo messaggio è seguito da un risultato che indica un’interruzione, si è verificato un problema di rete.

Se utilizzi terze parti per l’infrastruttura di Data Connect, assicurati che la logica di rete non venga interrotta dalle terze parti.

(Facoltativo) Fase 4: condividere i cluster tra siti

Per impostazione predefinita, i cluster Data Connect e i nodi corrispondenti vengono utilizzati solo dal sito in cui sono stati creati in origine. I cluster Data Connect possono tuttavia essere condivisi tra tutti i siti all’interno del tenant di Tableau Cloud Manager. La condivisione dei cluster consente alle query su siti diversi all’interno del tenant di utilizzare la stessa infrastruttura di nodi.

Per garantire la privacy dei dati in tutti i siti, nessun dato relativo al cluster condiviso viene reso disponibile agli altri siti del tenant.

Nota: la condivisione di un cluster è un’operazione permanente. Per annullare la condivisione di un cluster, è necessario rimuoverlo e reinstallarlo.

I cluster possono essere condivisi solo dopo essere stati accettati correttamente sul sito originale in cui sono stati creati.

Per condividere un cluster Data Connect:

  • Passa al cluster che desideri condividere, fai clic sui puntini di sospensione del menu delle azioni (...), quindi fai clic su Condividi.

Dopo aver condiviso il cluster, gli amministratori di altri siti all’interno del tuo tenant potranno utilizzare il cluster con tutti i pool creati nel loro sito.

(Facoltativo) Fase 5: creazione di un pool in un cluster condiviso come destinatario del cluster

Prima di creare il pool come destinatario in un cluster condiviso, verifica quanto segue:

  • Il cluster condiviso dispone di connettività di rete ai database utilizzati dal tuo sito

  • Tutti i driver di database richiesti dal database nel tuo sito devono essere installati nel cluster

Per iniziare a utilizzare un cluster condiviso come destinatario del cluster, dovrai richiedere al proprietario del cluster di aggiungere l’immagine di base del tuo pool al cluster:

  1. Nella scheda Data Connect fai clic sul pulsante Nuovo pool in Pool.

  2. Nella finestra Nuovo pool immetti un nome per il pool e quindi fai clic su Crea.

  3. Nel nuovo pool fai clic su Assegna Cluster, seleziona il cluster condiviso, fai clic sui puntini di sospensione del menu delle azioni (...), quindi fai clic su Aggiorna token.

  4. Verifica di aggiornare i token per il pool corretto, quindi fai clic su Conferma.

  5. Quando lo stato del pool è impostato su Disponibile, copia il valore di Pool_ID del tuo pool. Per visualizzare il valore di Pool_ID, fai clic sul nome del pool.

  6. Aggiungi un’immagine di base per il tuo sito. Consulta Fase 2: crea la tua immagine di base e pubblicala,. in precedenza.

    L’amministratore con accesso al cluster dovrà creare un nuovo contenitore con il valore di Pool_ID durante l’aggiunta dell’immagine di base. Saranno inoltre necessari i valori del registro del sito in cui è stato creato il cluster in origine, che possono essere forniti dal proprietario del cluster.

  7. Dopo che l’immagine di base è stata pubblicata nel registro contenitori locale, passa al pool sul sito della condivisione e quindi fai clic su Aggiorna immagine di base.

  8. Per completare la configurazione, consulta Fase 3: mappare un dominio a un pool, in precedenza.

Aggiungere un nodo da un cluster esistente

  1. Passa al cluster e fai clic su Nuovo nodo.

  2. Segui le fasi 4, 5, 7, 8, 9 della procedura precedente, Fase 1: impostare il cluster. Omettere la fase 6 poiché non sarà necessario assegnare il cluster.

  3. Dopo aver completato la fase di aggiornamento del token, passa al pool associato al cluster e fai clic su Aggiorna immagine di base.

Nota: quando viene creata e aggiornata una nuova immagine di base, verrà creata una nuova distribuzione. Il client Bridge utilizzato per l’immagine di base precedente continuerà a essere mantenuto come risorsa non assegnata. Non eliminare i client Bridge non assegnati.

Rimuovere un nodo da un cluster esistente

Dopo la rimozione di un nodo da un cluster, il client Bridge non sarà più accessibile da Tableau Cloud. Tutti i processi in esecuzione su Data Connect al momento dell’eliminazione del nodo non riusciranno. Tuttavia, nessun ulteriore processo verrà inoltrato a tali client Bridge.

Per rimuovere un nodo, passa al cluster, fai clic sui puntini di sospensione del menu delle azioni (...) e seleziona Elimina.

Aggiornamento delle immagini di base per pool esistenti

Se decidi di utilizzare un nuovo database o di aggiornare un driver che verrà utilizzato dal tuo cluster Data Connect, puoi apportare modifiche alle immagini di base esistenti per adattarle a tali modifiche. A questo scopo, aggiorna il file del contenitore con le modifiche come illustrato in Fase 2: crea la tua immagine di base e pubblicala. Dopo aver aggiornato il file del contenitore, fai clic su Aggiorna immagine di base. L’immagine di base precedente verrà utilizzata fino al completamento della distribuzione della nuova immagine di base.

Risoluzione dei problemi relativi alla connettività del database

Per iniziare, verifica che i tuoi domini rispettino le regole del registro elenco consentiti. Consulta Configurare i pool.

In seguito, verifica di aver configurato l’infrastruttura di rete in modo che Data Connect possa raggiungere tutte le origini dati necessarie a cui desideri connetterti. Per verificare che Data Connect possa raggiungere le tue origini dati, esegui il seguente comando curl dai nodi in cui verrà eseguito Data Connect:

$ curl -v $DB_HOSTNAME:$DB_PORT

Se hai configurato correttamente la connessione, dovresti vedere una serie di risposte. Ecco alcuni esempi:

  • Host $DB_HOSTNAME:$DB_PORT was resolved: conferma che i server DNS hanno risolto correttamente il nome host.

  • Connected to $DB_HOSTNAME: conferma che per il nodo è disponibile una connessione di rete.

  • Empty reply from server. Closing connection: si tratta di un errore previsto perché curl non è un client di database.

  • Could not resolve host: $DB_HOSTNAME: si è verificato un problema relativo alla risoluzione DNS.

  • Trying $DB_IP_ADDRESS:$DB_PORT: se questo messaggio è seguito da un risultato che indica un’interruzione, si è verificato un problema di rete.

Se utilizzi terze parti per l’infrastruttura di Data Connect, assicurati che la logica di rete non venga interrotta dalle terze parti.

Grazie per il tuo feedback.Il tuo feedback è stato inviato. Grazie!