Deploying TDV as a Single Mode instance

TDV application can be deployed as a single mode or a cluster mode. This section describes how to deploy TDV as a single mode using the quick start script.

Refer to the section TDV Container Orchestration Architecture to understand the implementation of TDV Container Orchestration. As illustrated, each pod contains a TDV container (which consists of the TDV Repo, Cache and the Server).

Example to run TDV as a Single Mode

Run the following command to run a TDV instance as a Single Mode:

 

$./run_tdv_helmchart.sh —set tdv.deploymentMode=single,tdv.image= "<REPO_URL>/tdvk8s:8.5"

Note: By default, the no. of replicas is set to "1" and the application deploymentMode is set to "cluster". To change these settings, you can use the -set flag. For example, to deploy 2 pods, run the following command:

 

$ ./run_tdv_helmchart.sh --set tdv.replicas=2,tdv.deploymentMode=single,tdv.image="<REPO_URL>/tdvk8s:8.5"

You will see a log like the one below, indicating the number of pods that will be starting, the number of worker nodes in the cluster, the name of the worker node, and a series of elapsed times. When the pod is ready you will see a message indicating the which pod has started to run.

 

Request to start "1" TDV server pod(s).
Available worker nodes: "3"
Worker node names: "tdv-k8s-1 tdv-k8s-2 tdv-k8s-3"
Waiting for TDV Server pod "tdv-0" to start.
............................ (30s elapsed)
TDV pod "tdv-0" is now running after 30s

You will also see the service ports that the TDV server is running on:

NAME TYPE CLUSTER-IP EXTERNAL-IP PORTS(S) AGE SELECTOR
tdv-svc NodePort x.x.x.x <None> 9400:31400,TCP,9401:31401/TCP,9402:31402/TCP,9403:31403/TCP,9407:31407/TCP,9393:31303/TCP 11s app=tdv

Run the following command to check the status of a specific pod:

$ kubectl describe pod <pod name> -n tdv

After you see the output of run_tdv_helmchart.sh indicating that the pod and services are ready, then you need to run "run_tdv_haproxy.sh" in order to create a service that exposes one of your TDV pods for access with an external IP. Note that you can only setup one TDV HAProxy service at a time because the service is tied to the TDV pod and requires a unique external IP for its service.