Docker Compose setup
Prerequisites
-
Download the latest version of the Snowflake Profiler from the Delphix download page.
-
Ensure that the host running the profiler has Docker and Docker Compose installed.
-
Set up the Hyperscale Snowflake Connector and add the required ConnectorInfo details.
-
For accessing Snowflake warehouse, we will require a service account user with key pair authentication for enhanced authentication security as an alternative to basic authentication.
-
To configure key-pair authentication for a Snowflake service account, follow the steps provided in the Snowflake’s configuring key-pair authentication.
-
Use the following commands to generate base64 encoded value of encrypted private key and passphrase.
To generate base64 encoded value of encrypted private key:
echo -n `cat /home/delphix/keys/MKK_TEST_SFHSC_ADMIN_key.p8 | base64`
To generate base64 encode value of passphrase:
echo -n <passphrase> | base64 -w 0
-
Similarly, the profiler needs the Controller API Key to authenticate to the controller which also needs to be provided in base64 encoded format. To generate base64 encode value of Controller API key:
echo –n “<controller_api_key>” | base64 –w 0
Procedure
-
Untar the profiler downloaded from Delphix download page. It should contain the Docker images for the profiler and the snowflake-profiler-compose.tar
tar -xf snowflake-profler.tar.gz
-
Load the delphix-snowflake-profiler.tar Docker image:
cd snowflake-profiler
docker load --input delphix-snowflake-profiler.tar
-
Untar the snowflake-profiler-compose.tar.gz
tar –xf snowflake-profiler-compose.tar.gz
cd snowflake-profiler-compose
-
Edit the .env file:
-
Configure the ‘CONTROLLER_URL’ with the controller URL, IP or hostname:
CONTROLLER_URL= delphix-controller.com
-
Configure the credentials required to connect to Snowflake instance:
SNOWFLAKE_PRIVATE_KEY=user_encrypted_private_key_base64_encoded
SNOWFLAKE_PASSPHRASE=passhrase_base64_encoded
CONTROLLER_API_KEY=controller_api_key_base64_encoded
-
Optionally, see additional configurations for further details.
-
Start the Snowflake profiler service:
docker-compose –f profiler-docker-compose.yaml up -d
-
Access the profiler Swagger UI at http://<host-ip>:8080/profiler