# Deploying CData Sync in a Kubernetes Environment

**URL:** <https://community.cdata.com/t/deploying-cdata-sync-in-a-kubernetes-environment/133>\
**Category:** How-to with CData\
**Tags:** article\
**Created:** [March 31, 2023, 5:05pm UTC](https://community.cdata.com/t/deploying-cdata-sync-in-a-kubernetes-environment/133 "2023-03-31T17:05:04Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![anonymous](https://avatars.discourse-cdn.com/v4/letter/a/8491ac/32.png) [@anonymous](https://community.cdata.com/u/anonymous)\
**Post date:** [March 31, 2023, 5:05pm UTC](https://community.cdata.com/t/deploying-cdata-sync-in-a-kubernetes-environment/133/1 "2023-03-31T17:05:04Z")

</div>

CData Sync provides automated, continuous replication of your enterprise data to any data store.

[Containerization technology](https://en.wikipedia.org/wiki/Containerization_(computing))&nbsp;enables you to create applications rapidly and securely and to deploy your application containers to any infrastructure. However, manually installing and managing each container in your system can be time-consuming, error prone, and resource intensive. To avoid these issues, you need a tool that automates the processes for deployment, scaling, and managing your containerized applications.

[Kubernetes](https://kubernetes.io/), a popular open-source platform built on&nbsp;[fifteen years of container-management experience at Google](https://queue.acm.org/detail.cfm?id=2898444), solves those issues by automating and managing all processes that are involved in deployment and scaling of containerized applications. By deploying CData Sync in a Kubernetes environment, you can take advantage of Kubernetes’ orchestration functionality, including high availability (no downtime), scalability of loads, and backup-and-restore capabilities.

This article provides step-by-step instructions for deploying Sync in the Kubernetes environment, and it lists the tools that you need for that process.

## Requirements

The following tools are required in order to deploy Sync in Kubernetes:

- [Docker Desktop](https://docs.docker.com/desktop/install/windows-install/)
- [Windows System for Linux (WSL) 2](https://learn.microsoft.com/en-us/windows/wsl/install)
- Ubuntu (available from the Microsoft Store)
- [kubectl command-line tool](https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/#install-kubectl-binary-with-curl-on-windows)
- [Azure Kubernetes Services (AKS)](https://azure.microsoft.com/en-us/products/kubernetes-service/)
- [Microsoft Azure Command-Line Interface (CLI) - Windows](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli-windows?tabs=azure-cli)
- [Microsoft Azure Command-Line Interface (CLI) - Linux](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli-linux?pivots=apt)
- [Docker on Ubuntu](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04)

## Deploying CData Sync in a Kubernetes Environment

The basic steps for deploying Sync in Kubernetes are as follows:

1. Gather resources and build a Docker image.
2. Build a Docker container.
3. Deploy the container to Kubernetes.

Each of these main steps are broken into multiple steps in the following sections:

### Step 1: Gather Resources and Build a Docker Image

1. Create a new folder locally. Include the following items in this folder:

2. Create a file named Dockerfile in the same folder that you created in Step 1. Include the following content in that file:

3. Create a database server to use as the application database (ApplicationDatabase).

4. Create an Azure volume for ApplicationDirectory.

### Step 2: Build a Docker Container

1. Navigate in the shell (if you are not already there) to the local folder that you created earlier.

2. Build the Docker container.

3. Run the container.

4. Confirm that your image is running by opening your browser to [http://localhost](http://localhost).

### Step 3: Deploy the Docker Container to Kubernetes

1. Create&nbsp;[Kubernetes services on Azure](https://azure.microsoft.com/en-us/solutions/kubernetes-on-azure/get-started/)

2. Login to your Azure account from a Microsoft Windows PowerShell. You should have the Azure CLI installed already.

3. Navigate to your resource group in the Azure Kubernetes Service and locate the container registry. You need this registry to retrieve the login server.

4. Login to the container registry by using your username, password, and login server. (Note: The use of a username and password is optional.)

5. Add a tag in the container registry by submitting these statements

6. Navigate to the Kubernetes Service in Azure and click Connect. Then, Azure displays the commands that must be run in order to connect to the cluster and apply changes.

7. Validate the nodes by submitting this command:

8. Create a manifest file of type YAML. Name the file sync.yaml. An example of this file is shown below.

9. Deploy this YAML file to the cluster.

10. Retrieve the external IP address for the service.

With these steps completed, you should be able to connect to Sync at http://_External-IP._

### &nbsp;

### Deploying CData Sync in Kubernetes

A brief overview of deploying CData Sync in a Kubernetes environment.

[![](https://us1.discourse-cdn.com/cdata/original/2X/2/2324b7b2f23c17ae09de7086c7cbbe8dfbaea478.jpeg "How to Deploy CData Sync to Kubernetes") ](https://www.youtube.com/watch?v=1s3BKKdTn54)

## Free Trial & More Information

Now that you have seen how to deploy Sync in the Kubernetes environment, visit our&nbsp;[CData Sync page](https://www.cdata.com/sync)&nbsp;to read more information about CData Sync and download a free trial. Start consolidating your enterprise data to a cloud data warehouse today! As always, our world-class&nbsp;[Support Team](https://www.cdata.com/support/submit.aspx)&nbsp;is ready to answer any questions you may have.
