Create a PostgreSQL Instance on Google Cloud
Beginning in version 2021.4, you can host Tableau Server External Repository on the Google Cloud Platform. This topic describes how to create a PostgreSQL instance on Google Cloud to use as your Tableau Server external repository.
To see a full list of hosts that you can use for your external repository, see Tableau Server External Repository.
Requirements and Recommendations
-
At a minimum, use high memory machine type with 8vCPUs and 32GB RAM. This is the minimum recommended PostgreSQL instance size to use for Tableau Server external repository, but the exact requirements will vary with your requirements and usage. We recommend high memory instance type with 16 vCPUs and 128GB RAM for good performance in most scenarios.
-
Secure communication between Tableau Server and the external PostgreSQL DB instance using SSL connections is not required but recommended.
-
The PostgreSQL instance must be reachable by all nodes in the Tableau Server cluster. One of the ways you can do this is by making the PostgreSQL instance a member of a security group that has the necessary permissions to be accessed by all the nodes in the Tableau Server cluster.
-
The version of PostgreSQL must should be a supported version. For more information, see Product Compatibility for supported version information.
-
Tableau auto-generates passwords for internal use by internal database users. These passwords are 32 characters long and consist of lower-case letters and numbers. They cannot be accessed or configured by an admin. Your external PostgreSQL instance may allow you to set a password policy (this will depend on the platform you are using). If you specify a policy that includes character types other than numbers and lower-case letters, this can cause errors while configuring Tableau Server to use the external repository.
Create a Database PostgreSQL instance on Google Cloud
Step 1: Create a new PostgreSQL instance
Create a PostgreSQL instance using the directions provided on the Google website, here.
We recommend using a high memory machine type, with 16 vCPUs, and 128GB RAM.
Step 2: Configure database flags for your PostgreSQL Instance
From the Tableau Server perspective, most of the parameters values for the instance can be set to defaults. You can modify the parameter values if you have specific performance or logging requirements, but we strongly recommend that the following parameters be left to default values and not be changed:
-
standard_conforming_strings
-
escape_string_warning
We also recommend the value for the work_mem
be set to at least 16384 to help avoid performance issues.
For more information on database flags, see this topic on the Google website.
Step 3: Get the PostgreSQL DB Instance Endpoint
Once the instance is ready, get the endpoint information that you will use to configure Tableau Server to use this instance for the Tableau Server Repository.
Step 4: Download the SSL certificate file
Secure communications between Tableau Server and the External Repository using SSL is not required but recommended.
To setup secure connections between Tableau Server and the External Repository, you must use the certificate file when you configure Tableau Server to use this external repository. For more information, see Configuring SSL/TLS certificates on the Google website.
Configuring High Availability for your PostgreSQL DB
Tableau Server does not manage or setup high availability for the external repository. Google Cloud offers high availability features that can be used to provide high availability. For more information, see Enable High Availability on an Instance on the Google website.
Disaster Recovery for your PostgreSQL DB
In the event of a disaster, you may need to set up a new PostgreSQL Database for the PostgreSQL instance. There are other scenarios where you may need to recover from an issue with the database instance. In such scenarios, to configure your Tableau Server to use the new PostgreSQL instance, use the following steps:
-
Restore the backup to a new PostgreSQL instance.In the Google Cloud platform, you can choose to either restore to the same instance or create a new instance. For more information, see Restoring an instance on the Google website.
We recommend creating a new instance and do the following steps to recover.
-
If this is an new instance, Create a new JSON settings file containing connection information for the new Azure Database for PostgreSQL instance. For more information on creating a JSON settings file, see Step 1 in Install Tableau Server with External PostgreSQL Repository.
-
Use the
tsm topology external-services repository replace-host
command to point your Tableau Server to the new Azure Database for PostgreSQL instance.For more information on the
tsm topology external-services repository replace-host
command, see tsm topology.
Who can do this
Only Tableau Server Administrators can configure Tableau Server to use the external repository. You will also need an Google Cloud account to create the PostgreSQL database instance.
Next Steps
For new installs: Install Tableau Server with External PostgreSQL Repository
If you want to configure your existing Tableau Server to use an external repository, see Re-Configure Tableau Server Repository.