Onboard a Cluster
Once you have downloaded and configured tctl
, the next step is to onboard a new workload cluster to your TSB installation. You can then deploy applications and services to that cluster, and use TSB to manage the security, traffic management and observability for those applications.
The onboard-cluster.sh
script is a helper for users of the Hosted TSB management plane. You can also download the TSB software images, install them and configure your cluster manually, using the following instructions:
Before You Begin
Before you begin, ensure that you have the following tools available and configured to manage your workload cluster:
kubectl
helm
Select a name for your cluster, such as cluster-1. This name will be used in the TSB configuration to refer to resources on that cluster.
Cluster Prerequisites
Before onboarding a cluster, you may wish to install some prerequisites. These are not strictly required, but will make it simpler to manage services on that cluster:
- AWS EKS
- Azure AKS
- Google GCP
PrivateLink
Your workload cluster will send metrics and traces to your hosted Tetrate Management Plane. The location of your management plane (AWS region) is shared in your welcome email.
The egress costs you may incur with cross-region traffic can be high. For high-volume testing and for production usage, it's more cost-effective to establish a PrivateLink connection to reduce these costs. Please contact Tetrate support to establish this.
AWS Load Balancer Controller
Tetrate recommends installing AWS Load Balancer Controller on each workload cluster.
For more background information, check out the Amazon resource Network load balancing on Amazon EKS.
There are no recommended or required prerequisites for Azure AKS clusters.
There are no recommended or required prerequisites for Google GCP clusters.
Onboard the Cluster
Download the Helper Script
curl -sLO https://charts.dl.tetrate.io/public/raw/files/onboard-cluster.sh
Onboard the cluster
Chose a cluster name, such as cluster-1. Your default kubectl context should point to the cluster you intend to onboard:
bash ./onboard-cluster.sh cluster-1
Expect to see output resembling the following:
[INFO] Starting Tetrate cluster onboarding for: cluster-1
[SUCCESS] Prerequisites check passed
[SUCCESS] Cluster service account registered
[SUCCESS] Configuration template generated
[SUCCESS] Configuration patches applied
[SUCCESS] Helm repository updated
[SUCCESS] Tetrate Control Plane installed
[SUCCESS] Tetrate Hosted Agent installed
[SUCCESS] Tetrate cluster onboarding completed for 'cluster-1'Check the status
The cluster will take several minutes to onboard and then start syncing status.
You can view the installation progress by following the logs from the tsb-operator:
kubectl logs -f -n istio-system -l name=tsb-operator
Once the control plane software is installed, you can view the onboarding status with the following
tctl
command:tctl get cluster
Your cluster status can also be viewed in the TSB UI:
What has happened?
The TSB controlplane and Istio software will have been installed in the istio-system
namespace in the cluster:
kubectl get pods -n istio-system
The ControlPlane reports status back to the Management Plane. The installation will also have created namespaces tetrate-system
and xcp-multicluster
which are used by the TSB system.
Next steps
Once you have onboarded a Workload Cluster, you may wish to proceed with the Getting Started examples.