Kubernetes

Requirements

  • Git

  • Kubernetes

  • Helm

Downloading Synthesized TDK Chart

git clone https://github.com/synthesized-io/helm-charts.git
cd helm-charts

Installing the chart

Set the following variables:

# Kubernetes namespace
export NAMESPACE="synthesized"

# Image repository and tag. You can specify private repository instead of provided.
export REPOSITORY="synthesizedio/synthesized-tdk-cli"
export TAG="v1.39.0"

# Your license key (premium version only)
export SYNTHESIZED_KEY="<YOUR_LICENSE_KEY>"

# Set TDK arguments
export SYNTHESIZED_INPUT_URL="<YOUR_INPUT_JDBC_URL>"
export SYNTHESIZED_INPUT_USERNAME="<YOUR_INPUT_USERNAME>"
export SYNTHESIZED_INPUT_PASSWORD="<YOUR_INPUT_PASSWORD>"
export SYNTHESIZED_OUTPUT_URL="<YOUR_OUTPUT_JDBC_URL>"
export SYNTHESIZED_OUTPUT_USERNAME="<YOUR_OUTPUT_USERNAME>"
export SYNTHESIZED_OUTPUT_PASSWORD="<YOUR_OUTPUT_PASSWORD>"

You can find the list of all parameters for the TDK docker image here.

Fill config.yaml with MASKING or GENERATION configuration, e.g:

default_config:
  mode: MASKING
safety_mode: RELAXED

Or, you could use the default preconfigured masking configuration file - charts/tdk/config.yaml.

Install the chart:

helm upgrade synthesized-tdk charts/tdk \
  --set-file env.SYNTHESIZED_USERCONFIG="charts/tdk/config.yaml" \
  --set image.repository="$REPOSITORY" \
  --set image.tag="$TAG" \
  --set envRenderSecret.SYNTHESIZED_KEY="$SYNTHESIZED_KEY" \
  --set envRenderSecret.SYNTHESIZED_INPUT_URL="$SYNTHESIZED_INPUT_URL" \
  --set envRenderSecret.SYNTHESIZED_INPUT_USERNAME="$SYNTHESIZED_INPUT_USERNAME" \
  --set envRenderSecret.SYNTHESIZED_INPUT_PASSWORD="$SYNTHESIZED_INPUT_PASSWORD" \
  --set envRenderSecret.SYNTHESIZED_OUTPUT_URL="$SYNTHESIZED_OUTPUT_URL" \
  --set envRenderSecret.SYNTHESIZED_OUTPUT_USERNAME="$SYNTHESIZED_OUTPUT_USERNAME" \
  --set envRenderSecret.SYNTHESIZED_OUTPUT_PASSWORD="$SYNTHESIZED_OUTPUT_PASSWORD" \
  --namespace "$NAMESPACE" \
  --create-namespace \
  --install

If everything went well, you will receive a message like this:

Release "synthesized-tdk" does not exist. Installing it now.
NAME: synthesized-tdk
LAST DEPLOYED: Tue Oct  3 16:26:50 2023
NAMESPACE: synthesized-tdk
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
1. Synthesized TDK is Installed.
2. To trigger the cronjob manually run:
   kubectl create job --from=cronjob/synthesized-tdk-cron synthesized-tdk-cron -n synthesized-tdk
3. To see logs for the job run:
   kubectl logs -f jobs/{JOB NAME} -n synthesized-tdk