Setting up Kubernetes Cluster on Azure AKS

Before registering the data plane, you must have the Kubernetes cluster created with the required infrastructure. Use the following steps to set up the required Kubernetes cluster infrastructure on Azure AKS.

Note: The following are ways recommended by TIBCO. There are many valid ways to set up the Kubernetes cluster and infrastructure on Azure AKS. You can choose the way suitable for you to set up the required infrastructure for data plane.

For Kubernetes compatibility, see System Requirements.

GitHub Workshop

For hands on experience to set up Kubernetes Cluster on Azure AKS, see Data Plane Cluster Workshop on GitHub.

Provisioning Infrastructure using Platform Provisioner

Platform Provisioner is a tool to help you quickly set up the cluster with all required infrastructure. For more information, see Platform Provisioner by TIBCO® available on GitHub.

Step 1: Create an AKS Cluster

You can create an AKS cluster by using Azure CLI. For more information, see Azure AKS documentation.

Step 2: Set up a DNS Service

DNS service helps users to route users to your resources or a web server in your data center. For complete steps on configuring the DNS service, see Azure DNS documentation.

Step 3: Set up a Certificate Manager

To manage certificates, it is recommended to use a certificate management service. cert-manager simplifies the process of creating, storing, and renewing public and private SSL or TLS certificates, which secure your applications. For more information about setting up a cert-manager, see cert-manager documentation.

Step 4: Set up an Ingress Controller

Ingress Controller is a load balancer for routing traffic from outside the Kubernetes platform to the pods running inside Kubernetes. TIBCO Control Plane supports NGINX Ingress Controller as a load balancer for the data plane. For more information, see NGINX documentation. You will need to provide this ingress class name nginx in TIBCO Control Plane when you provision capability.

To configure NGINX ingress controller to send traces to Observability tools, see Configuring NGINX Ingress Controller for Tracing.

Step 5: Configure a File Storage

Capabilities and applications need storage to store data. Before configuring persistent storage for the AKS cluster, you need to create storage accounts. For more information about setting up a storage account, see Create Storage Account.

AKS uses Kubernetes dynamic volume provisioning using Container Storage Interface (CSI) drivers. AKS Container Storage Interface (CSI) drivers are enabled by default on new AKS clusters. If they are not enabled during the cluster creation, you must explicitly enable the drivers. For more information, see Azure AKS documentation.

You must also create a storage class for dynamic provisioning of volumes. When provisioning capabilities, storage class is required.

Note: For TIBCO Enterprise Message Service capability, the following are recommended storage classes:
  • For a disk based StorageClass, it is recommended to use premium_lrs or premium_zrs SKU with the reclaimPolicy set to "Retain".

  • For a file based StorageClass, it is recommended to use premium_lrs or premium_zrs SKU and using NFS with the following mount options: soft, timeo=300, actimeo=1, retrans=2, vers=4.1, _netdev

What to do next

After setting up Kubernetes cluster with required infrastructure, you can register a cluster as a data plane and then provision capabilities on the data plane.

See the following topics: