Setting up High Availability (HA) for your ThoughtSpot cluster using AWS Elastic File System (EFS)
To set up HA for your ThoughtSpot cluster, do the following:
-
Create EFS File System spanning across different availability zones and different subnets.
-
Create two ThoughtSpot clusters in each availability zone and in the subnets where the above file system was created.
-
Change the IP addresses of the cluster (if needed).
-
Create efs
directory in /home/admin path and issue below command to mount the above created file system, editing the below sample link: 'sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-f756f1ee.efs.us-west-1.amazonaws.com:/ /home/admin/efs/' Make sure read and write permissions are provided on all cluster EFS mount points. use: `chmod 777 /home/admin/efs` - Go to First cluster. Create a snapshot and backup from that snapshot, on to the mount point where EFS is mounted. Below are sample commands:
tscli snapshot create EfsTest HA 2
tscli backup create --mode full --type full --storage_type local EfsTest /home/admin/efs/Efs-backup
- Make sure the backup is created and accessible from all the clusters where EFS is mounted. In our cases both the clusters.
- Now bring down the first cluster instances.
- Go to Second cluster, delete existing cluster and create new one by restoring from the first cluster backup which is accessible from efs mount point.
Example:
tscli cluster restore /home/admin/EFS/Efs-backup
Cluster should now be successfully restored on the second cluster from the backup provided my EFS, achieving HA for ThoughtSpot clusters.