Redgate Clone

Installing on Azure Kubernetes Service (AKS)

This page provides step-by-step instructions on how to create AKS infrastructure and deploy the Redgate Clone solution onto it.

Contents

Create Kubernetes service

On the landing page of the Azure Portal, click on "Create a resource". Search for "Azure Kubernetes Service (AKS)".

Click on "Azure Kubernetes Service (AKS)" and then click "Create".

Select the Azure subscription you want to store the Kubernetes service in and create a new resource group for it.

Configuration

You'll need to configure the AKS instance. We have some required settings here that differ from the defaults and are necessary for Redgate Clone to function correctly.

After changing settings from the four tabs shown below, click on "Review + create" and Azure will start creating your cluster. Wait for the creation process to complete before continuing.

SettingExpected value
SubscriptionThe Azure subscription you want to place the resource in
Resource groupWe recommend creating a new one for this service
Kubernetes cluster nameThis will name the Azure resource itself. "rgclone" is fine
Kubernetes version1.30.0
Automatic upgradeDisabled.  (This upgrades Kubernetes. Please upgrade manually to versions we've tested redgate clone on.)
Node security channel type

Node Image.  (Updates to the latest VM image, including security updates)

If you choose the unmanaged option, security updates are never done.

Please read Managing AKS Updates for more guidance.

By default AKS uses one or two node pools (agentpool and/or userpool). The agentpool is used by AKS, not Redgate Clone. We recommend leaving the agentpool and deleting the userpool.

AKS uses the agentpool to manage the cluster. There needs to be at least one instance of the agentpool.


Redgate Clone can then be run on either one or two node pools additional to the agentpool.  

Nodes on a pool share configurations, including labels. The label defines the workloads for a node. The distribution of workloads should help determine how many pools you need.

For example, If you want to run oracle on different nodes to mssql, create another pool and add the oracle label to that pool only.


Running on one node pool:

Poolrginfrapool
Node sizeE8s_v5 (Recommended minimum)
Scale methodManual
Node count1 .. x
Max pods per node250
Mode

User

Labels

redgate.com/infrastructure-node=true

redgate.com/cloning-node=true

redgate.com/cloning-mssql-node=true

redgate.com/cloning-oracle-node=true

 


Running on two node pools:

Poolrginfrapool
Node sizeE8s_v5 (Recommended minimum)
Scale methodManual
Node count
Max pods per node250
Mode

User

Labels

redgate.com/infrastructure-node=true

Poolrgclonepool
Node sizeE8s_v5 (Recommended minimum)
Scale methodManual
Node count1 .. x
Max pods per node250
Mode

User

Labels

redgate.com/cloning-node=true

redgate.com/cloning-mssql-node=true

redgate.com/cloning-oracle-node=true


SettingExpected value
Container networking configuration

Choose Azure CNI Node Subnet.  

NOTE: There's a new version of the Azure CNI called Azure CNI Overlay. We do not support the overlay version.

The Redgate Clone installation includes the Grafana monitoring UI.  We suggest you turn off the AKS monitoring by setting all the features with Azure monitor.

SettingExpected value
Azure MonitorOff

Install Redgate Clone to the AKS instance

Locate the "Kubernetes service" in the resource group created earlier.

You will need to complete some of the following steps in a bash shell. On Windows, please use WSL.

Connect to the AKS instance

From the Kubernetes service, there are instructions on how to connect that appear when you press the "Connect" button in the command bar at the top of the page.  Follow the instructions for the "Azure CLI".

N.B. You'll connect from you're computer remotely to the kubernetes cluster and to the kots admin console.   The remote connection is the main way to run the kubectl cli for the kubernetes cluster.

Verify the connection is working with the command:

kubectl get nodes

You should see output similar to this:

If you have an error using kubectl see this troubleshooting page.

Install Redgate Clone

Execute the following command in a shell on mac, linux (WSL on windows). 

sudo bash -c "$(curl -fsSL https://kots.io/install)"


Accept the default installation directory.

Execute the following command:

kubectl kots install cloning-capability-app

When prompted, enter "default" as the namespace to deploy to.

When prompted, choose and enter a password to use for connecting to the admin console. Remember this for later.

Access the Kots admin console

From the terminal on your computer you must always run the same sequence of commands to connect to the kubernetes cluster first.

After you've gotten the credentials, type this command to port forward the kots console to your localhost on port 8800:  

kubectl kots admin-console


AKS Services and Ingresses

In the the AKS menu, you can reach the "Services and Ingresses" page.

This shows you all the running services on the kubernetes cluster.

Public IP address

The external IP address of the nginx service is the public ip address.

Configure Redgate Clone

Visit the admin console in a browser to continue setup at the location given by the previous command.

Continue as per the instructions given in the installation quick start guide, but with the following AKS-specific configuration values.

SettingExpected value
Disk sizeSize in GiB of the disk for data images and data containers. Default value is 100 GiB
Azure DNS Label

Must be unique to the Azure location of your AKS instance.

To learn more visit the Microsoft learn page on the DNS label.



Didn't find what you were looking for?