RHEL installation prerequisites

Set up hosts for the ThoughtSpot cluster

Set up hosts for the ThoughtSpot cluster on your chosen platform. Please refer to the relevant deployment sections in our documentation for the exact specification for the hosts: CPU, memory, and disks.

Partition the hosts

Ensure that all ThoughtSpot hosts meet the following partition and sizing requirements. All drives must be SSDs.

  1. At least 20 GB available on the root drive, for yum packages and system logs.

  2. At least 50 GB available for /tmp.

  3. At least 200 GB for ThoughtSpot installation, either on a secondary drive or as a separate partition on the root drive. For ThoughtSpot-certified hardware platforms, Dell and Super Micro Computer, you must use a secondary drive because the root drive has a limit of 200 GB.

    This drive must be separate from the data drive(s).

Install RHEL on hosts

ThoughtSpot is certified with RHEL versions 7.8 and 7.9; we do not support other versions of RHEL, including 7.7, 8, and 8.1. Install RHEL version 7.8 or 7.9. On RHEL version 7.8, ensure that your linux kernel version is 3.10.0-1127.19.1. On RHEL version 7.9, use the default linux kernel.

When installing ThoughtSpot on online clusters, the Ansible playbook upgrades the OS to RHEL 7.9. The Ansible playbook does not upgrade the OS when installing offline.

Linux kernel version

For RHEL version 7.8, your Linux kernel must be on version 3.10.0-1127.19.1. RHEL 7.8 used to come with a Linux kernel of version 3.10.x, which has a bug that causes nodes to reboot unexpectedly. The default Linux kernel version for RHEL 7.8 is now 3.10.0-1127.19.1. However, you may have an older RHEL 7.8, with a Linux kernel of version 3.10.x. You must upgrade to 3.10.0-1127.19.1. If you have trouble upgrading your Linux kernel to version 3.10.0-1127.19.1, contact ThoughtSpot Support. This is a requirement for all platforms: appliance, cloud, and VMware.

If you are using RHEL version 7.9, use the default Linux kernel.

If you are running RHEL 7.8, and your Linux kernel version is not 3.10.0-1127.19.1, you may run into unexpected node reboots and possible loss of data.

Enable the hosts to download RHEL packages

Repositories

Yum repositories

You must enable the following Yum repositories in your cluster:

6.3 and earlier

epel, nux-desktop, pgdg95, rhel, rhel-optional, rhel-extras.

6.3.1 and later

epel, pgdg95, pgdg11, rhel, rhel-optional, rhel-extras.

Python repository

For Python, ensure the machine is able to reach the PyPI repository located at https://pypi.python.org/.

R repository

For R, ensure the machine is able to reach the CRAN repository located at https://cran.rstudio.com/.

Make sure that you can download RHEL packages to all hosts, either from the official package repositories, or from a mirror repository owned and managed by your organization.

If you cannot access the RHEL repositories, there is no mirror repository in your organization, or you are unable to access Yum, Python, or R repositories, contact ThoughtSpot Support.

Official package repositories

If the hosts of your ThoughtSpot cluster can access external repositories, either directly or through a proxy, your cluster is online. You can then proceed to download Yum, Python, and R package repositories.

Internal mirror repository

If the hosts of your ThoughtSpot cluster have access to an internal repository that mirrors the public repositories, copy the Yum, Python, and R package repositories to your hosts.

Enable an Ansible Control Server

Configure an Ansible Control Server, on a separate host, to run the Ansible playbook that ThoughtSpot supplies. You must install both rsync and Ansible on the Ansible Control Server host.

Disable SELinux or run it in permissive mode

ThoughtSpot does not support policies that enforce SELinux. We recommend that you disable SELinux, or run it in permissive mode.

Ensure tmp has permission 777

The /tmp directory must have the 777 permission.

Remove Defaults requiretty from /etc/sudoers

The /etc/sudoers file must not have the Defaults requiretty line. This line can cause cluster creation to fail.