Prerequisites - Kubernetes

YugabyteDB Anywhere first needs to be installed on a Kubernetes cluster, and then you configure YugabyteDB Anywhere to work in your Kubernetes cluster, on-premises private cloud, or in a public cloud environment.

Hardware requirements

A Kubernetes node is expected to meet the following requirements:

  • 5 cores (minimum) or 8 cores (recommended)
  • 15 GB RAM (minimum)
  • 250 GB SSD disk (minimum)
  • 64-bit CPU architecture

Prepare the cluster

The YugabyteDB Anywhere Helm chart has been tested using the following software versions:

  • Kubernetes 1.22
  • Helm 3.10

Before installing YugabyteDB Anywhere, verify that you have the following:

  • A Kubernetes cluster with nodes configured according to the hardware requirements.
  • A client environment with the kubectl and Helm command-line tools configured with a service account or user that has admin access to a single namespace on the subject Kubernetes cluster.
  • A Kubernetes secret obtained from Yugabyte Support.

In addition, ensure the following:

Multi cluster Kubernetes environment

When you want to create a multi-region YugabyteDB universe or two universes from different regions replicating using xCluster, you need to use one Kubernetes cluster per region. In the common case, following are the prerequisites for YugabyteDB Anywhere to work across multiple Kubernetes clusters:

  • Pod IP address connectivity should be present between the clusters. Each pod and service should have a unique IP address across the clusters (non-overlapping addresses).
  • There should be DNS connectivity between the clusters. ClusterIP and headless service FQDNs (including the individual pod FQDNs) exposed in one Kubernetes cluster should be resolvable in all the other Kubernetes clusters.
  • YugabyteDB Anywhere should have access to the control plane of all the Kubernetes clusters, typically via a kubeconfig file of a service account. It should be installed on one of the connected clusters.

Alternatively, you can set up Multi-Cluster Services API (MCS). For more details on the setup, see Configure Kubernetes multi-cluster environment. Note that MCS support in YugabyteDB Anywhere is currently in Beta.