Static Snowflake agent

Target Snowflake

Prerequisites

To have Gluesync working on your Snowflake instance you will need to have:

  • Valid user credentials with permission to read, and write to the target tables and respective database;

  • Warehouse name.

Setup via Web UI

  • Hostname / IP Address: DNS record or IP Address of your Snowflake tenant;

  • Database name: Name of your target database;

  • Username: Username with read & write access to the target tables;

  • Password: Password belonging to the given username.

Custom properties

  • Warehouse: (defaults to COMPUTE_WH) The warehouse name where your Snowflake tenant belongs to;

Specific configuration

This agent has no specific configuration properties.

Using the Snowflake agent in Docker compose and Kubernetes

Snowflake agent comes bundled with Snowflake’s JDBC driver. Unlike other agents, this requires you to set a custom environment variable property to the agent’s service definition. See below for more information.

To run the agent in a Docker compose or Kubernetes environment, you will need to set the following environment variable property to the agent’s service definition:

environment:
  - addJavaNioAllUnnamed=true

See Snowflake JDBC Driver Compatibility Issue With JDK 16 and Later for more information.

Setup via Rest APIs

Here following an example of calling the CoreHub’s Rest API via curl to setup the connection for this Agent.

Connect the agent

curl --location --request PUT 'http://core-hub-ip-address:1717/pipelines/{pipelineId}/agents/{agentId}/config/credentials' \
--header 'Content-Type: application/json' \
--header 'Authorization: ••••••' \
--data '{
        "hostCredentials": {
        "connectionName": "myAgentNickName",
        "host": "XYZ-123.snowflakecomputing.com",
        "port": 443,
        "databaseName": "db_name",
        "username": "",
        "password": "",
        "maxConnectionsCount": 100,
        "enableTls": true,
        "certificatePath": "/myPath/cert.pem"
      },
      "customHostCredentials": {
        "warehouse": "COMPUTE_WH"
      }
}'