BASE DE CONOCIMIENTO

Error "Could not connect to TSM Controller at 'https://servername:8850'" al ejecutar comandos TSM


Publicado: 28 Nov 2018
Fecha de la última modificación: 29 Feb 2024

Problema

Cuando se ejecuta cualquier comando TSM, se produce el siguiente error: 

Could not connect to TSM Controller at 'https://servername:8850' (Error al conectar con el controlador de TSM en 'https://servername:8850')

Se pueden llevar a cabo una serie de comprobaciones para confirmar que el error se debe a que ha expirado el certificado de TSM y no a otras causas:

Paso 1:
Verifique que el portal de Tableau Server funciona pero no es posible acceder a la interfaz web de TSM al ejecutar los siguientes comandos (ejemplo de Linux):
# sudo su -l tableau
# systemctl status tabadmincontroller_0 
Estos comandos mostrarán que el servicio está activo y en funcionamiento, pero no puede conectarse a TSM.

Paso 2:

Establezca una conexión Telnet con el puerto 8850 para verificar que esté funcionando:
# telnet localhost 8850
Trying ::1...
Connected to localhost.
Escape character is '^]'.

Si el certificado no es válido, verá este mensaje de error en ~/.tableau/tsm/tsm.log:
 
2019-03-15 15:09:57 main : ERROR com.tableausoftware.tabadmin.ServerApi - Exception sending request
org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://localhost.localdomain:8850/api/0.5/login": 
sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: 
validity check failed; nested exception is javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: 
PKIX path validation failed: java.security.cert.CertPathValidatorException: validity check failed
El registro de TSM mostrará 'timestamp check failed' como sufijo del mensaje de error anterior en lugar de 'validity check failed'.
       

Entorno

  • Tableau Server 

Solución

TSM utiliza un certificado SSL autofirmado que se genera durante la instalación.  En versiones anteriores, se requería una reinstalación completa de Tableau Server para generar un nuevo certificado SSL.  En las versiones actuales, es posible reinstalar tabadmincontroller para generar un nuevo certificado. 

Las versiones actuales agregaron un indicador, --trust-admin-controller-cert, a tsm y al script upgrade-tsm.  Para realizar esta operación, debe instalar la misma familia de versiones.  Por ejemplo, si usa Tableau Server 2021.4.1, debe instalar Tableau Server 2021.4.1 y versiones posteriores.

Opción 1
Realice lo siguiente cuando no pueda acceder a TSM desde la línea de comandos e intente actualizar desde una versión anterior a una versión actual que tenga el nuevo indicador.

Acceda al TSM de esa versión con la marca --trust-admin-controller-cert como: 

/opt/tableau/tableau_server/packages/bin.<version_code>/tsm stop
--trust-admin-controller-cert

en la que <version code> es el número de la nueva compilación de Tableau Server instalada, que puede encontrar en la página de lanzamiento de esa versión de Tableau Server.

P. ej., pruebe tsm data-access repository-access enable --repository-username readonly --repository-password <PASSWORD> --trust-admin-controller-cert
(Nota: Para las conexiones de la interfaz de línea de comandos de TSM desde equipos remotos, se le solicitará que confíe en el certificado de CA de instalación de Tableau la primera vez que se conecte al Tableau Server que ejecuta el Controlador de administración de TSM. Puede elegir confiar en el certificado de CA, en cuyo caso no se le volverá a solicitar en ese equipo hasta que caduque el certificado (de manera predeterminada, 3 años). O bien, puede conectarse con una confianza de un solo uso al ejecutar el comando de TSM con el indicador --trust-admin-controller-cert).

Opción 2
Puede reinstalar tabadmincontroller en las versiones compatibles actuales para generar un nuevo certificado. Para hacerlo, siga estos pasos:

  1. Abra un símbolo del sistema como administrador (haga clic con el botón derecho en el símbolo del sistema y seleccione “Ejecutar como administrador”)
  2. Detenga Tableau Server desde el símbolo del sistema al ejecutar “tsm stop --trust-admin-controller-cert”.
  3. Vaya a C:\ProgramData\Tableau\Tableau Server\data\tabsvc\services\tabadmincontroller_<version>. (NOTA: Esta es la ruta predeterminada; su ruta puede ser diferente si la instalación se realizó en una ruta no predeterminada).
  4. Ejecute "uninstall.cmd". (El código de salida 0 significa que se realizó correctamente)
  5. Ejecute "Install.cmd". (El código de salida 0 significa que se realizó correctamente)
  6. Reinicie el equipo de Tableau.
  7. Inicie Tableau Server mediante la interfaz de usuario web de TSM o TSM Start.
Opción 3
Actualice Tableau Server según las instrucciones de la Ayuda de Tableau Online para el sistema operativo que esté utilizando y, cuando ejecute el script upgrade-tsm, use el indicador --trust-admin-controller-cert.

 

 

Causa

Las versiones anteriores de Tableau Server usaban un certificado de controlador de TSM que expiraba tras pasar un año.  Actualmente, el certificado dura hasta tres años y se instala un nuevo certificado en las actualizaciones.

Información adicional

Para comprobar la fecha de expiración del certificado SSL del controlador de TSM, escriba los siguientes comandos en el terminal del equipo en el que se ejecute Tableau Server (instrucciones para Linux):

 #openssl s_client -connect servername:8850
 # echo | openssl s_client -connect servername:8850  2>/dev/null | openssl x509 -noout -dates




 
¿Fue de ayuda este artículo para resolver el problema?