AWS EKS

Find video instruction on how to start an AWS free trial using the EKS deployment option:

Requirements

  • Kubernetes

  • Helm

Downloading the Chart

The chart is currently only available if the product was purchased on AWS Marketplace.

Installing the Chart

To install the chart with the release name my-tdk and properties specified in the file values.yaml:

helm install my-tdk synthesized-tdk \
    --namespace synthesized-tdk \
    -f values.yaml \
    --set image.repository=<ENTER_DOCKER_IMAGE_REPOSITORY> \
    --set image.tag=<ENTER_VERSION> \
    --set serviceAccount.name=synthesized-tdk \
    --set serviceAccount.enabled=true \
    --set serviceAccount.create=false

The example of values.yaml with overridden properties:

# Environment variables
env:
  SYNTHESIZED_INPUT_URL: <ENTER_INPUT_JDBC_URL>
  SYNTHESIZED_OUTPUT_URL: <ENTER_OUTPUT_JDBC_URL>
  SYNTHESIZED_USERCONFIG: |
    default_config:
      mode: "KEEP"

# Sensitive environment variables that will be rendered as new secret object
envRenderSecret:
  SYNTHESIZED_INPUT_USERNAME: <ENTER_INPUT_USERNAME>
  SYNTHESIZED_INPUT_PASSWORD: <ENTER_INPUT_PASSWORD>
  SYNTHESIZED_OUTPUT_USERNAME: <ENTER_OUTPUT_USERNAME>
  SYNTHESIZED_OUTPUT_PASSWORD: <ENTER_OUTPUT_PASSWORD>
  SYNTHESIZED_KEY: <ENTER_LICENSE_KEY>

After executing the command, the TDK cronjob is installed.

You can find the list of supported environment variables for the TDK docker image here.

Running the job

By default, a cronjob is created that runs on a schedule.

To trigger the cronjob manually run:

kubectl create job --from=cronjob/my-tdk-synthesized-tdk-cron my-tdk-synthesized-tdk-cron -n <ENTER_NAMESPACE>

Values

Key Type Default Description

affinity

object

{}

containerSecurityContext

object

{}

cronJobFailedJobsLimit

int

1

Number of failed cronjobs to retain.

cronJobLimit

int

3

Number of successful cronjobs to retain.

cronJobPodAnnotations

object

{}

cronJobPodLabels

object

{}

env

object

{}

Environment variables. List of supported variables: https://docs.synthesized.io/tdk/latest/user_guide/reference/docker_environment_variables

envRenderSecret

object

{}

Sensitive environment variables that will be rendered as a new secret object

fullnameOverride

string

""

image.pullPolicy

string

"IfNotPresent"

image.repository

string

"synthesizedio/synthesized-tdk-cli"

image.tag

string

""

imagePullSecrets

list

[]

nameOverride

string

""

nodeSelector

object

{}

resources.limits.cpu

string

"2000m"

resources.limits.memory

string

"2048Mi"

resources.requests.cpu

string

"1000m"

resources.requests.memory

string

"512Mi"

restartPolicy

string

"Never"

schedule

string

"0 0 */1 * *"

Schedule fetch time At 00:00 on every day-of-month. More information at: https://crontab.guru/#0_0_***

secretRef

string

nil

Reference to an external secret that contains sensitive environment variables This option is useful to avoid store sensitive values in Git. You need to create the secret manually and reference it. If secretRef is used, the envRenderSecret parameter will be omitted (in case that it has content).

securityContext

object

{}

serviceAccount.annotations

object

{}

serviceAccount.create

bool

true

serviceAccount.name

string

""

tolerations

list

[]

tplConfig

bool

false

Pass the configuration directives and envRenderSecret through Helm’s templating engine. # ref: https://helm.sh/docs/developing_charts/#using-the-tpl-function

volumeMounts

string

nil

volumes

string

nil

ttlSecondsAfterFinished

string

60

Seconds after which Completed and Failed jobs will be removed by the TTL mechanism provided by the TTL controller.

Uninstalling the Chart

To uninstall/delete the release my-tdk:

helm delete my-tdk

The command removes all the Kubernetes components associated with the chart and deletes the release. Use the option --purge to delete all history too.