Launch Tableau on AWS in minutes with Cloud Formation

Photo by Austin Distel on Unsplash

I have spent the last few weeks digging and hunting for blogs to assist in launching Tableau Server on AWS and found nothing!!!

I thus intend to visually enlighten the steps one must follow to get through installation and configuration in matter of minutes.

First things first; this link is for anyone who wishes to jump the gun and install Tableau Server on AWS without sweating about the minor details.

For this we will be installing the server on an existing VPC for which this link is valuable.

The template gets launched and note that it is available for us-west-2 at the moment. However, It might make it to the other regions in the months to follow:

A peak into the designer will give us an idea about the instances that will get launched as the template is executed. At this moment we shall proceed to configure parameters that are specific to our environment and server.

This template for instance, will create:

  • An IAM Role for the Service
  • An Instance Profile
  • Workload Stack: which takes care of provisioning suitable resources with Tableau Server on it.

Specifying Stack Details

One must be careful with these sections as the server depends a lot on these parameters and deployment errors can be traced back to this form.

Parameters and what they mean!

  1. Key Pair Name: This will be the key pair that one gets to generate whilst launching an EC2 instance in that region.

Note: These key pairs are region specific and will need to be created if none exists.

2. VPC: For this deployment we are going to reuse the existing VPC (courtesy of AWS). However, I do urge you to create a new VPC for TEST or PROD deployments.

3. Public Subnet ID: The stack is highly picky about this aspect and does require a subnet for it to launch.

4. Source CIDR for Access: This signifies the range of IP addresses that will be used to access the Server. The CIDR address from which you will connect to the instance. It is recommended that you set this value to a trusted CIDR block to restrict access to IP addresses from only your network. The CIDR block parameter must be in the form x.x.x.x/x.

Note: For this deployment I have provided 0.0.0.0/0 which allows all IP addresses to access our instance. This might pose security issues in live instances and is not encouraged.

5. Tableau Amazon EC2 Instance Type: Tableau recommends using an M5 xlarge instance that can handle basic needs of the server. However, I would prefer instances from the R family for PROD instances where the loads are more.

6. AMI Operating System: The stack has provided options for ubuntu, windows and cent-OS. Let’s go with Ubuntu for now.

The next few sections will allow you to specify credentials for TSM and Server Administrator that will come in handy once the stack is up and running.

Note:

  • Tableau Activation Key: This can be filled if you have a valid key or you can leave it blank to avail the free trail that usually goes for 14 days!
  • Also be sure to specify all details in the personal section along with the address. Specifically the country field needs a particular value. United States for instance, has to be entered as is and USA or any other abbreviations will not be accepted.

Pretty Sweet Haan!

Click Next once you have completed the Personal Information section.

Configure Stack Options

Provide a suitable tag to make cost tracking and evaluation easier.

Permissions:

The stack does need suitable permissions to create instances and IAM roles for which Cloud Formation Admin Access is suitable.

Note: Absence of this field will result in a guaranteed failure as the template will be denied access.

Other Sections are optional.

You are now all set to execute the stack once you have reviewed all aspects of the form.

And we are all set!

Cloud Formation is now up and running trying to launch assets necessary for this template. It does take about 30–35 minutes for the stack to be launched, so feel free to grab a cup of coffee while you still can!

Alright! Looks like the stack is now up and running.

Lets login into our EC2 instance and check the status of our Server.

Before that; let us first activate the trail period/registration and restart the services.

We first login into our tsm account using the following command:

tsm login -u tabadmintsm status

Looks like the Services are up after which we shall register the product.

tsm licenses activate -t

You should now get a Trail Activated message after which it is necessary to bounce the server for the changes to take effect.

Commands to Start and stop services:

tsm stoptsm start

Once the services are up; be sure to take a look at the Tableau Services Manager UI to ensure that all the background processes are in harmony.

URL: <Elastic IP address/Ec2 host name>:8850

Login using the credentials that were set in the template

If you see green all over then your server is purring like a kitten.

Viola! Tableau Server is now good to go!

An Enthusiastic Data Eng. who is on a mission to unravel the possibilities of pipeline building with AWS and who believes in knowledge sharing.