Prerequisites for deploying ThoughtSpot on your own OS
Prepare the system and ThoughtSpot clusters for installation.
If your organization requires that privilege escalation take place through an external tool that integrates with ansible, refer to Manage cluster operations on ansible for clusters that use RHEL. |
These are the prerequisites for installing ThoughtSpot on Amazon Linux 2 (AL2), RedHat Enterprise Linux (RHEL), or Oracle Enterprise Linux (OEL):
❏ |
|
❏ |
|
❏ |
|
❏ |
|
❏ |
|
❏ |
|
❏ |
|
❏ |
|
❏ |
|
❏ |
|
❏ |
ThoughtSpot recommends using private subnets for communication. Wherever there is a need to connect to the public internet, you should do it through a NAT gateway. |
Review the required network ports
Review the required network ports for operation of ThoughtSpot, and ensure that all required ports are open and available.
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), and for instructions on setting up the hosts.
On RHEL version 7.8, ensure that your linux kernel version is 3.10.0-1127.19.1 or higher. On all other supported RHEL versions, use the default linux kernel. On OEL version 7.9, ensure that you are using the Red Hat Compatible Kernel (RHCK), not the default Unbreakable Enterprise Kernel (UEK). If you are using the UEK, contact ThoughtSpot Support to switch to the RHCK.
For RHEL deployments on online clusters, the ansible playbook upgrades the OS to the latest supported version of RHEL. The ansible playbook does not upgrade the OS when installing offline. |
-
[RHEL 7 only] ThoughtSpot-certified hardware appliance manufactured by Dell:
-
[RHEL 7 only] ThoughtSpot-certified hardware appliance manufactured by SMC:
-
[RHEL 7 or 8, OEL, AL2] Amazon Web Services (AWS) EC2:
-
[RHEL 7 or OEL] Google Cloud Platform (GCP):
-
[RHEL 7 or 8 only] Microsoft Azure:
-
[RHEL 7 or 8 or OEL] VMware:
Linux kernel version
For RHEL version 7.8, your Linux kernel must be on version 3.10.0-1127.19.1 or higher. 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 or higher. If you have trouble upgrading your Linux kernel to version 3.10.0-1127.19.1 or higher, contact ThoughtSpot Support. This is a requirement for all platforms: hardware appliance, cloud, and VMware.
If you are using any other supported RHEL version, use the default Linux kernel.
On OEL version 7.9, ensure that you are using the Red Hat Compatible Kernel (RHCK), not the default Unbreakable Enterprise Kernel (UEK). If you are using the UEK, contact ThoughtSpot Support to switch to the RHCK.
If you are running RHEL 7.8, and your Linux kernel version is not 3.10.0-1127.19.1 or higher, you may run into unexpected node reboots and possible loss of data. |
[Optional] Set up AWS Systems Manager Agent
If you plan to use the AWS SSM agent as an alternative to SSH, create a new IAM role while creating VMs. This IAM role must have an SSM policy to grant AWS SSM permission to perform actions on your instances. Refer to Create an IAM instance profile for Systems Manager.
The AWS SSM agent option is available only for AL2 or RHEL or OEL on AWS.
You must install the SSM agent on each node. Refer to Manually install SSM Agent on EC2 instances for Linux, if the SSM agent is not already on each node.
Partition the hosts
Ensure that all ThoughtSpot hosts meet the following partition and sizing requirements. All drives must be SSDs.
Do not partition the data drives. ThoughtSpot partitions the data drives during installation. For information about data drive specifications, refer to the intro articles for each platform linked in the set up hosts section of this article.
Path | Required free space |
---|---|
/ |
20 GB. This is the root drive. |
/tmp |
20 GB |
/export |
200 GB, on a separate filesystem. This must also be separate from the data drives. |
For ThoughtSpot-certified hardware platforms, Dell and Super Micro Computer, you must use a secondary drive rather than a partition, because the root drive has a limit of 200 GB. This drive must be separate from the data drive(s). |
Ensure tmp has permission 777 or 1777
The /tmp
directory must have either the 777
or 1777
permission. 1777
is the 777
permission but with the sticky bit set. If you mount the /tmp
directory as a separate partition, it must NOT have the noexec
flag set.
Ensure that you are using Linux cgroupsV1
You must use Linux control groups v1 (cgroupsV1
). cgroupsV1
is the default on both RHEL 7 and RHEL 8. ThoughtSpot does not support use of Linux control groups v2 (cgroupsV2
).
Ensure /proc mount point flags are compatible
You cannot mount the /proc mount point with the hidepid
flag. You must mount it without that flag.
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.
[RHEL 8 only] Remove the selinux policy for rsync
Remove the selinux policy for rsync on each node. This is only necessary if you are using RHEL 8.1 - 8.8. You do not need to do this step if you are using RHEL 7.9 or 7.9, OEL 7.9, or AL2.
Run the following command on each ThoughtSpot node:
semanage permissive -a rsync_t
Enable the hosts to download required packages
This step is not required if you are installing ThoughtSpot in offline clusters.
If you are installing ThoughtSpot in online clusters, make sure that you can download the required 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 required repositories, there is no mirror repository in your organization, or you are unable to access Yum, Python, or R repositories, contact ThoughtSpot Support.
- Yum repositories for RHEL 7
-
You must enable the following Yum repositories in your cluster:
epel
,pgdg11
,rhel
,rhel-optional
,rhel-extras
. - Yum repositories for RHEL 8
-
You must enable the following Yum repositories in your cluster:
epel
,pgdg11
,baseos
,codeready
,appstream
. - Yum repositories for OEL
-
You must enable the following Yum repositories in your cluster:
epel
,pgdg11
,ol7_optional_latest
,oracle-linux-ol7
. - Yum repositories for AL2
-
You must enable the following Yum repositories in your cluster:
epel
,google-cloud-sdk
, andpgdg11
.
- 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/.
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
[Optional] Enable an Ansible Control Server
Optionally 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.
Next steps
Next, get ThoughtSpot artifacts.
Related information