Del 7 – Validering, verktyg och felsökning

Den här delen inkluderar valideringssteg och felsökningsvägledning efter installation.

Validering av reservomkopplingssystem

När du har konfigurerat din driftsättning rekommenderar vi att du kör enkla reservomkopplingstest för att validera systemets redundans.

Vi rekommenderar att du kör följande steg för att validera att reservomkopplingen fungerar:

  1. Stäng av den första instansen av oberoende gateway (TSIG1). All inkommande trafik ska gå genom den andra instansen av oberoende gateway (TSIG2).
  2. Starta om TSIG1 och stäng sedan av TSIG2. All inkommande trafik ska gå genom TSIG1.
  3. Starta om TSIG2.
  4. Stäng av Tableau Server-nod 1. All servicetrafik för Vizportal/Program reservomkopplas till nod 2.

    Obs! Från och med september 2022 innebär hög tillgänglighet för nod 1 en säkerhetsrisk i vissa versioner av Tableau Server 2021.4 och senare. Klientanslutningar misslyckas om nod 1 ligger nere. Det här problemet har korrigerats i dessa underhållsversioner:

    – 2021.4.15 och senare
    – 2022.1.11 och senare
    – 2023.1.3 och senare

    För att försäkra dig om att er Tableau Server-installation med ATR-aktiveringar har en tidsfrist på 72 timmar vid fel på den initiala noden installerar du eller uppgraderar till en av dessa versioner. Mer information finns i Tableau Server HA using ATR Does Not Have a Grace Period After the Initial Node Failure(Länken öppnas i ett nytt fönster) (på engelska) i Tableaus kunskapsbas.

  5. Starta om nod 1 och stäng av nod 2. All servicetrafik för Vizportal/Program reservomkopplas till nod 1.
  6. Starta om nod 2.

I det här sammanhanget görs ”avstängning” eller ”omstart” genom att stänga av operativsystemet eller den virtuella datorn utan att först försöka stänga av programmet. Målet är att simulera ett fel på maskinvaran eller den virtuella datorn.

Det minsta valideringssteget för varje reservomkopplingstest är att autentisera med en användare och utföra grundläggande vyaktiviteter.

Du kan få webbläsarfelet ”Felaktig begäran” när du försöker logga in efter ett simulerat fel. Du kan se det här felet även om du rensar cacheminnet i webbläsaren. Det här problemet uppstår ofta när webbläsaren cachelagrar data från tidigare IdP-sessioner. Om felet kvarstår även efter att du rensat den lokala webbläsarens cacheminne så kan du validera Tableau-scenariot genom att ansluta med en annan webbläsare.

Automatisk återställning av ursprunglig nod

Tableau Server version 2021.2.4 och senare har ett skript för automatisk återställning av ursprunglig nod, auto-node-recovery, i katalogen scripts (/app/tableau_server/packages/scripts.<version>).

Om det finns ett problem med den ursprungliga noden och du har redundanta processer på nod 2 så finns det ingen garanti att Tableau Server kommer fortsätta att fungera. Tableau Server kan fortsätta att fungera i upp till 72 timmar efter ett fel på den ursprungliga noden innan bristen på licensieringsserver börjar påverka andra processer. I sådant fall kan det hända att användarna kan fortsätta att logga in samt se och använda sitt innehåll efter det att den ursprungliga noden misslyckas, men du kommer inte att kunna omkonfigurera Tableau Server eftersom du inte kommer att ha åtkomst till administrationsstyrenheten.

Även när Tableau Server har konfigurerats med redundanta processer är det möjligt att den inte fortsätter att fungera efter att den ursprungliga noden misslyckas

För att återställa fel på ursprunglig nod (nod 1):

  1. Logga in på Tableau Server nod 2.

  2. Ändra till katalogen scripts:

    cd /app/tableau_server/packages/scripts.<version>
  3. Kör följande kommando för att starta skriptet:

    sudo ./auto-node-recovery -p node1 -n node2 -k <license keys>

    Där <license keys> är en kommaavgränsad lista (utan blanksteg) med licensnycklarna för din driftsättning. Om du inte har tillgång till dina licensnycklar kan du gå till Tableau-kundportalen(Länken öppnas i ett nytt fönster) och hämta dem. Exempel:

    sudo ./auto-node-recovery -p node1 -n node2 -k TSB4-8675-309F-TW50-9RUS,TSNM-559N-ULL6-22VE-SIEN

Den automatiska nodåterställningsskriptet kör ungefär 20 steg för att återställa tjänsterna till nod 2. Varje steg visas i terminalen allteftersom skriptet fortskrider. Mer detaljerad status loggas till /data/tableau_data/logs/app-controller-move.log. I de flesta miljöer tar skriptet mellan 35 och 45 minuter att slutföra.

Felsöka återställning av ursprunglig nod

Om nodåterställning misslyckas kan du ha hjälp av att köra skriptet interaktivt för att tillåta eller neka diskreta steg i processen. Om skriptet till exempel misslyckas halvvägs igenom processen kan du granska loggfilen, ändra i konfigurationen och därefter köra skriptet igen. Genom att köra i interaktivt läge kan du därefter hoppa över alla steg tills du kommer till det steg som misslyckades.

Kör i interaktivt läge genom att lägga till växeln -i i skriptargumentet.

Återskapa den misslyckade noden

Efter att du kört skriptet kommer nod 2 att köra alla tjänster som tidigare fanns på den misslyckade nod 1-värden. Om du vill lägga till i 4-noden måste du distribuera en aktuell Tableau Server-värd med startfilen och konfigurera den som du gjorde för den ursprungliga nod 2 som det anges i del 4. Se Konfigurera nod 2.

switchto

Switchto är ett skript från Tim som gör det enkelt att växla mellan fönster.

  1. Kopiera följande fil till en fil som heter switchto i startkatalogen på din bastion-värd.
  2. #!/bin/bash
    #-------------------------------------------------------------------
    # switchto
    #
    # Helper function to simplify SSH into the various AWS hosts when
    # following the Tableau Server Enterprise Deployment Guide (EDG).
    #
    # Place this file on your bastion host and provide your AWS hosts' 
    # internal ip addresses or machine names here.
    # Example: readonly NODE1="10.0.3.187"
    #
    readonly NODE1=""
    readonly NODE2=""
    readonly NODE3=""
    readonly NODE4=""
    readonly PGSQL=""
    readonly PROXY1=""
    readonly PROXY2=""
    				
    usage() {
    echo "Usage: switchto.sh [ node1 | node2 | node3 | node4 | pgsql | proxy1 | proxy2 ]"
    }
    
    
    ip=""
    
    case $1 in
    	node1)
    		ip="$NODE1"
    		;;
    	node2)
    		ip="$NODE2"
    		;;
    	node3)
    		ip="$NODE3"
    		;;
    	node4)
    		ip="$NODE4"
    		;;
    	pgsql)
    		ip="$PGSQL"
    		;;
    	proxy1)
    		ip="$PROXY1"
    		;;
    	proxy2)
    		ip="$PROXY2"
    		;;
    	?)
    		usage
    		exit 0
    		;;
    	*)
    		echo "Unkown option $1."
    		usage
    		exit 1
    		;;
    esac
    
    if [[ -z $ip ]]; then
    echo "You must first edit this file to provide the ip addresses of your AWS hosts."
    exit 1
    fi
    
    ssh -A ec2-user@$ip
  3. Uppdatera IP-adresserna i skriptet så de mappar till dina EC2-instanser och spara filen.
  4. Tillämpa behörigheter för skriptfilen:
  5. sudo chmod +x switchto

Syntax:

Växla till en värd genom att köra följande kommando:

./switchto <target>

Om du till exempel vill växla till nod 1 kör du följande kommando:

./switchto node1

Felsöka oberoende gateway för Tableau Server

Det kan uppstå många fel när oberoende gateway, Okta, Mellon och SAML på Tableau Server konfigureras. Den vanligaste grundorsaken till fel är ett strängfel. ett snedstreck (/) i Okta-URL:n som anges under konfigurationen kan till exempel orsaka ett matchningsfel relaterat till ett SAML-påstående. Det här är bara ett exempel. Det finns många möjligheter att mata in en felaktig sträng i någon av applikationerna under konfigurationen.

Starta om tableau-tsig-tjänsten

Börja (och avsluta) alltid felsökningen genom att starta om tableau-tsig-tjänsten på datorerna med oberoende gateway. Det går snabbt att starta om den här tjänsten och det får ofta den uppdaterade konfigurationen att läsas in från Tableau-servern.

Kör följande kommandon på datorn med oberoende gateway:

sudo su - tableau-tsig
systemctl --user restart tsig-httpd
exit

Hitta felaktiga strängar

Om du har gjort ett strängfel (kopierat/klistrat in felaktigt, trunkerat en sträng osv.) bör du ta dig tid att gå igenom var och en av inställningarna du har konfigurerat:

  • Konfiguration av Okta-förautentisering. Granska noggrant URL:erna som du har angett. Leta efter snedstreck. Verifiera HTTP kontra HTTPS.
  • Kommandotolkshistorik för SAML-konfiguration på nod 1. Granska kommandot tsm authentication saml configure som du körde. Kontrollera att alla URL:er matchar dem som du har konfigurerat i Okta. Medan du granskar kommandotolkshistoriken på nod 1 ska du verifiera att kommandona tsm configuration set som anger Mellon-konfigurationsfilens sökvägar mappar exakt till filsökvägarna där du kopierade filerna på oberoende gateway.
  • Mellon-konfiguration på oberoende gateway. Granska kommandotolkshistoriken för att verifiera att du skapade metadata med samma URL-sträng som du har konfigurerat i Okta och Tableau SAML. Kontrollera att alla sökvägar som anges i /etc/mellon/conf.d/global.conf är korrekta och att MellonCookieDomain är inställd på din rotdomän, inte din Tableau-underdomän.

Söka i relevanta loggar

Om alla strängar verkar vara korrekt inställda bör du granska loggar efter fel.

Tableau Server loggar fel och händelser till dussintals olika loggfiler. Den oberoende gatewayen loggar också till en uppsättning lokala filer. Vi rekommenderar att du granskar dessa loggar i följande ordning.

Loggfiler från oberoende gateway

Standardplatsen för loggfilerna från oberoende gateway är /var/opt/tableau/tableau_tsig/logs.

  • access.log: Den här loggen är användbar eftersom den har poster som visar anslutningar från Tableau Server-noderna. Om du får gateway-fel (startar inte) när du försöker starta TSM och det inte finns några poster i filen access.log, så finns det ett kärnanslutningsproblem. Verifiera alltid AWS-säkerhetsgruppens konfiguration som ett första steg. Ett annat vanligt problem är ett stavfel i tsig.json. Om du uppdaterar något i tsig.json bör du köra tsm stop innan du kör tsm topology external-services gateway update -c tsig.json. Efter att tsig.json har uppdaterats kör du tsm start.
  • error.log: Utöver andra poster innehåller den här loggen SAML- och Mellon-fel.

Tableau Server tabadminagent-loggfil

Uppsättningen av tabadminagent-filer (inte tabadmincontroller-filer) är de enda relevanta loggfilerna för felsökning av fel relaterade till oberoende gateway.

Du måste hitta var oberoende gateway-fel har loggats till tabdminagent. Felen kan finnas på vilken nod som helst, men de finns bara på en nod. Utför följande steg på varje nod i Tableau Server-klustret tills du hittar den ”oberoende” strängen:

  1. Leta reda på tabadminagent-loggfilens plats på Tableau Server-noderna 1–4 i EDG-installationen:

    cd /data/tableau_data/data/tabsvc/logs/tabadminagent
  2. Öppna senaste loggen för att läsa:

    less tabadminagent_nodeN.log

    (ersätt N med nodnummer)

  3. Sök efter alla instanser av ”Oberoende” och ”oberoende” genom att använda följande söksträng:

    /ndependent

    Om det inte finns några matchningar går du till nästa nod och upprepar steg 1–3.

  4. När du får en matchning trycker du på Shift + G för att hoppa längst ner för att få senaste felmeddelanden.

Läsa in httpd-stubbfilen på nytt

Oberoende gateway hanterar konfigurationen av httpd för Apache. En generisk åtgärd som ofta åtgärdar övergående problem är att läsa in httpd-stubbfilen som seedar den underliggande Apache-konfigurationen på nytt. Kör följande kommandon på båda instanserna av oberoende gateway.

  1. Kopiera stubbfilen till httpd.conf:

    cp /var/opt/tableau/tableau_tsig/config/httpd.conf.stub /var/opt/tableau/tableau_tsig/config/httpd.conf
  2. Starta om oberoende gateway-tjänsten:

    sudo su - tableau-tsig
    systemctl --user restart tsig-httpd
    exit

Ta bort eller flytta loggfiler

Oberoende gateway loggar alla åtkomsthändelser. Du behöver hantera loggfillagringen för att undvika att fylla upp diskutrymme. Om din disk fylls kan den oberoende gatewayen inte skriva åtkomsthändelser och tjänsten kommer att misslyckas. Följande meddelande loggas till error.log på den oberoende gatewayen:

(28)No space left on device: [client 10.0.2.209:54332] AH00646: Error writing to /var/opt/tableau/tableau_tsig/logs/access.%Y_%m_%d_%H_%M_%S.log

Det här felet resulterar i statusen DEGRADED för noden external när du kör tsm status -v på Tableau-nod 1. Noden external i den returnerade statusen hänvisar till oberoende gateway.

För att lösa problemet behöver du ta bort eller flytta access.log-filerna från disken. Loggfiler lagras under /var/opt/tableau/tableau_tsig/logs. När du har rensat disken ska du starta om tableau-tsig-tjänsten.

Webbläsarfel

Dålig begäran: Ett vanligt fel för det här scenariot är ett Dålig begäran-fel från Okta. Det här problemet uppstår ofta när webbläsaren cachelagrar data från tidigare Okta-sessioner. Om du till exempel hanterar Okta-applikationer som en Okta-administratör och därefter försöker få åtkomst till Tableau med ett annat Okta-aktiverat konto så kan sessionsdata från administratörsdata orsaka Dålig begäran-felet. Om felet kvarstår även efter att du rensat den lokala webbläsarens cacheminne så kan du testa att validera Tableau-scenariot genom att ansluta med en annan webbläsare.

En annan orsak till felet ”Felaktig begäran” är ett stavfel i en av de många URL:er som du anger under Okta-, Mellon- och SAML-konfigurationsprocesserna. Kontrollera att du har angett alla dessa utan fel.

Ofta kommer filen error.log på oberoende gateway-servern att ange vilken URL som orsakar felet.

Hittades inte – Den begärda URL:en hittades inte på den här servern: Det här felet indikerar ett av flera konfigurationsfel.

Om användaren autentiserats med Okta och därefter stöter på det här felet så har du sannolikt laddat upp Okta förautentiseringsapplikationen till Tableau Server när du konfigurerade SAML. Verifiera att du har konfigurerat Okta-applikationsmetadata för Tableau Server på Tableau Server och inte applikationsmetadata för Okta förautentisering.

Andra felsökningssteg:

  • Granska applikationsinställningarna för Okta förautentisering. Se till att HTTP- kontra HTTPS-protokollen angetts som specificerade i det här ämnet.
  • Starta om tsig-httpd på båda oberoende gateway-servrarna.
  • Verifiera att sudo apachectl configtest returnerar ”Syntax OK” för bägge oberoende gateways.
  • Verifiera att testanvändaren tilldelats båda applikationerna i Okta.
  • Verifiera att ihållande angetts för lastbalanseraren och associerade målgrupper.

Verifiera TLS-anslutning från Tableau Server till oberoende gateway

Använd kommandot wget för att verifiera anslutning och åtkomst från Tableau Server till oberoende gateway. Variationer av det här kommandot kan hjälpa dig att förstå om certifikatproblem orsakar anslutningsproblem.

Kör till exempel det här wget-kommando för att verifiera rensningsprotokollet (HK) från Tableau Server:

wget https://ip-10-0-1-38.us-west-1.compute.internal:21319

Konstruera URL:en med samma värdadress som du inkluderade för värdalternativet för filen tsig.json. Specificera https-protokollet och lägg till URL:en med HK-porten 21319.

Så här kontrollerar du anslutningen och ignorerar certifikatverifiering:

wget https://ip-10-0-1-38.us-west-1.compute.internal:21319 --no-check-certificate

Så här verifierar du att rot-CA-certifikatet för TSIG är giltigt:

wget https://ip-10-0-1-38.us-west-1.compute.internal:21319 --ca-certificate=tsigRootCA.pem

Om Tableau kan kommunicera kan du fortfarande få innehållsrelaterade fel, men du kommer inte att få anslutningsrelaterade fel. Om Tableau inte kan ansluta alls ska du börja med att verifiera protokollkonfigurationen i brandväggen/säkerhetsgrupperna. Till exempel måste reglerna för inkommande trafik för säkerhetsgruppen där oberoende gateway finns tillåta TCP 21319.

Tack för din feedback!Din feedback har skickats in. Tack!