Contents:
This guide steps through the process of acquiring and deploying a Docker image of the Designer Cloud Powered by Trifacta® platform in your Docker environment. Optionally, you can build the Docker image locally, which enables further configuration options.
Deployment Scenario
- Designer Cloud Enterprise Edition deployed into a customer-managed environment: On-premises, AWS, or Azure.
- PostgreSQL 9.6 installed either:
- Locally
- Remote server
Limitations
- You cannot upgrade to a Docker image from a non-Docker deployment.
- You cannot switch an existing installation to a Docker image.
- Supported distributions of Cloudera or Hortonworks:
- The base storage layer of the platform must be HDFS. Base storage of S3 is not supported.
- High availability for the Designer Cloud Powered by Trifacta platform in Docker is not supported.
- SSO integration is not supported.
Requirements
Support for orchestration through Docker Compose only
- Docker version 17.12 or later
- Docker-Compose 1.11.2 or later. Version must be compatible with your version of Docker.
Docker Daemon
Minimum | Recommended | |
---|---|---|
CPU Cores | 2 CPU | 4 CPU |
Available RAM | 8 GB RAM | 10+ GB RAM |
Preparation
Review the Desktop Requirements.
NOTE: Designer Cloud Enterprise Edition requires the installation of Google Chrome on each desktop. For more information, see Desktop Requirements.
Acquire your License Key.
Acquire Image
You can acquire the latest Docker image using one of the following methods:
- Acquire from FTP site.
- Build your own Docker image.
Acquire from FTP site
Steps:
- Download the following files from the FTP site:
trifacta-docker-setup-bundle-x.y.z.tar
trifacta-docker-image-x.y.z.tar
NOTE:
x.y.z
refers to the version number (e.g.6.4.0
).
Untar the
setup-bundle
file:
tar xvf trifacta-docker-setup-bundle-x.y.z.tar
Files are extracted into a
docker
folder. Key files:
File Description docker-compose-local-postgres.yaml Runtime configuration file for the Docker image when PostgreSQL is to be running on the same machine. More information is provided below. docker-compose-local-mysql.yaml Runtime configuration file for the Docker image when MySQL is to be running on the same machine. More information is provided below. docker-compose-remote-db.yaml Runtime configuration file for the Docker image when the database is to be accessed from a remote server.
NOTE: You must manage this instance of the database.
More information is provided below.
README-running-trifacta-container.md Instructions for running the Alteryx container
NOTE: These instructions are referenced later in this workflow.
README-building-trifacta-container.md Instructions for building the Alteryx container
NOTE: This file does not apply if you are using the provided Docker image.
Load the Docker image into your local Docker environment:
docker load < trifacta-docker-image-x.y.z.tar
Confirm that the image has been loaded. Execute the following command, which should list the Docker image:
docker images
You can now configure the Docker image. Please skip that section.
Build your own Docker image
As needed, you can build your own Docker image.
Requirements
Docker version 17.12 or later
Docker Compose 1.11.2 or newer. It should be compatible with above version of Docker.
Build steps
Acquire the RPM file from the FTP site:
NOTE: You must acquire the el7 RPM file for this release.
- In your Docker environment, copy the
trifacta-server\*.rpm
file to the same level as theDockerfile
. - Verify that the
docker-files
folder and its contents are present. Use the following command to build the image:
docker build -t trifacta/server-enterprise:latest .
This process could take about 10 minutes. When it is completed, you should see the build image in the Docker list of local images.
NOTE: To reduce the size of the Docker image, the Dockerfile installs the trifacta-server RPM file in one stage and then copies over the results to the final stage. The RPM is not actually installed in the final stage. All of the files are properly located.
- You can now configure the Docker image.
Configure Docker Image
Before you start the Docker container, you should review the properties for the Docker image. In the provided image, please open the appropriate docker-compose
file:
File | Description |
---|---|
docker-compose-local-postgres.yaml | Database properties in this file are pre-configured to work with the installed instance of PostgreSQL, although you may wish to change some of the properties for security reasons. |
docker-compose-local-mysql.yaml | Database properties in this file are pre-configured to work with the installed instance of MySQL, although you may wish to change some of the properties for security reasons. |
docker-compose-remote-db.yaml | The Alteryx databases are to be installed on a remote server that you manage. NOTE: Additional configuration is required. |
NOTE: You may want to create a backup of this file first.
Key general properties:
NOTE: Avoid modifying properties that are not listed below.
Property | Description |
---|---|
image | This reference must match the name of the image that you have acquired. |
container_name | Name of container in your Docker environment. |
ports | Defines the listening port for the Designer Cloud application. Default is NOTE: If you must change the listening port, additional configuration is required after the image is deployed. See Change Listening Port For more information, see System Ports. |
Database properties:
These properties pertain to the installation of the database to which the Designer Cloud application connects.
Property | Description |
---|---|
DB_INIT | If set to NOTE: This step applies only if you are starting the container for the first time, and PostgreSQL databases will be installed locally. |
DB_TYPE | Set this value to postgresql or mysql . |
DB_HOST_NAME | Hostname of the machine hosting the databases. Leave value as localhost for local installation. |
DB_HOST_PORT | (Remote only) Port number to use to connect to the databases. Default is NOTE: If you are modifying, additional configuration is required after installation is complete. See Change Database Port. |
DB_ADMIN_USERNAME | Admin username to be used to create DB roles/databases. Modify this value for remote installation. NOTE: If you are modifying this value, additional configuration is required. Please see the documentation for your database version. |
DB_ADMIN_PASSWORD | Admin password to be used to create DB roles/databases. Modify this value for remote installation. |
Kerberos properties:
If your Hadoop cluster is protected by Kerberos, please review the following properties.
Property | Description |
---|---|
KERBEROS_KEYTAB_FILE | Full path inside of the container where the Kerberos keytab file is located. Default value: /opt/trifacta/conf/trifacta.keytab NOTE: The keytab file must be imported and mounted to this location. Configuration details are provided later. |
KERBEROS_KRB5_CONF | Full path inside of the container where the Kerberos /opt/krb-config/krb5.conf |
Hadoop distribution client JARs:
Please enable the appropriate path to the client JAR files for your Hadoop distribution. In the following example, the Cloudera path has been enabled, and the Hortonworks path has been disabled:
# Mount folder from outside for necessary hadoop client jars # For CDH - /opt/cloudera:/opt/cloudera # For HDP #- /usr/hdp:/usr/hdp
Please modify these lines if you are using Hortonworks.
Volume properties:
These properties govern where volumes are mounted in the container.
NOTE: These values should not be modified unless necessary.
Property | Description |
---|---|
volumes.conf | Full path in container to the Alteryx configuration directory. Default: /opt/trifacta/conf |
volumes.logs | Full path in container to the Alteryx logs directory. Default: /opt/trifacta/logs |
volumes.license | Full path in container to the Alteryx license directory. Default: /trifacta-license |
Start Server Container
After you have performed the above configuration, execute the following to initialize the Docker container:
docker-compose -f <docker-compose-filename>.yaml run trifacta initfiles
When the above is started for the first time, the following directories are created on the localhost:
Directory | Description |
---|---|
./trifacta-data | Used by the Alteryx container to expose the |
Import Additional Configuration Files
After you have started the new container, additional configuration files must be imported.
Import license key file
The Alteryx license file must be staged for use by the platform. Stage the file in the following location in the container:
NOTE: If you are using a non-default path or filename, you must update the <docker-compose-filename>
.yaml
file.
trifacta-license/license.json
Import Hadoop distribution libraries
If the container you are creating is on the edge node of your Hadoop cluster, you must provide the Hadoop libraries.
- You must mount the Hadoop distribution libraries into the container. For more information on the libraries, see the documentation for your Hadoop distribution.
- The Docker Compose file must be made aware of these libraries. Details are below.
Import Hadoop cluster configuration files
Some core cluster configuration files from your Hadoop distribution must be provided to the container. These files must be copied into the following directory within the container:
./trifacta-data/conf/hadoop-site
For more information, see Configure for Hadoop in the Configuration Guide.
Install Kerberos client
If Kerberos is enabled, you must install the Kerberos client and keytab on the node container. Copy the keytab file to the following stage location:
/trifacta-data/conf/trifacta.keytab
See Configure for Kerberos Integration in the Configuration Guide.
Perform configuration changes as necessary
The primary configuration file for the platform is in the following location in the launched container:
/opt/trifacta/conf/trifacta-conf.json
NOTE: Unless you are comfortable working with this file, you should avoid direct edits to it. All subsequent configuration can be applied from within the application, which supports some forms of data validation. It is possible to corrupt the file using direct edits.
Configuration topics are covered later.
Start and Stop the Container
Stop container
Stops the container but does not destroy it.
NOTE: Application and local database data is not destroyed. As long as the <docker-compose-filename>
.yaml
properties point to the correct location of the *-data
files, data should be preserved. You can start new containers to use this data, too. Do not change ownership on these directories.
docker-compose -f <docker-compose-filename>.yaml stop
Restart container
Restarts an existing container.
docker-compose -f <docker-compose-filename>.yaml start
Recreate container
Recreates a container using existing local data.
docker-compose -f <docker-compose-filename>.yaml up --force-recreate -d
Stop and destroy the container
Stops the container and destroys it.
The following also destroys all application configuration, logs, and database data. You may want to back up these directories first.
docker-compose -f <docker-compose-filename>.yaml down
Local PostgreSQL:
sudo rm -rf trifacta-data/ postgres-data/
Local MySQL or remote database:
sudo rm -rf trifacta-data/
Verify Deployment
Verify access to the server where the Designer Cloud Powered by Trifacta platform is to be installed.
Cluster Configuration: Additional steps are required to integrate the Designer Cloud Powered by Trifacta platform with the cluster. See Prepare Hadoop for Integration with the Platform.
- Start the platform within the container. See Start and Stop the Platform.
Configuration
After installation is complete, additional configuration is required. You can complete this configuration from within the application.
Steps:
- Login to the application. See Login.
- The primary configuration interface is the Admin Settings page. From the left menu, select Settings menu > Settings > Admin Settings. For more information, see Admin Settings Page in the Admin Guide.
- Workspace-level configuration can also be applied. From the left menu, select Settings menu > Settings > Workspace Admin. For more information, see Workspace Admin Page in the Admin Guide.
The Designer Cloud Powered by Trifacta platform requires additional configuration for a successful integration with the datastore. Please review and complete the necessary configuration steps. For more information, see Configure in the Configuration Guide.
This page has no comments.