Infrastructure cluster control plane

1.0

Universe requires a Kubernetes control plane to be able to run Universe Infrastructure components.

This document describes requirements for Kubernetes control plane. Once the control plane is available, install Universe Infrastructure components using the Helm charts.

1.1. Network requirements

Kubernetes’ primary network should be the same as the DPUs’ uplinks network. For Infiniband, the primary network should be on DPUs’ management port network. The DPU management port network should be accessible from control plane for BMC provisioning.

Universe includes Ironic component, who runs in the host network mode; it requires to reserve ports 5050, 6385, 8080, 67, 68 and 69 on the host to provide service.

1.2. Service dependencies

During DPU provisioning, the following components/servers maybe used:

  • NTP Server: ntp server is used to synchronize time between DPU & Control Plane; configurable by helm during installation, default value is “time.google.com”

  • Image Registry: for on-prem environment, image registry is required for DPU to download container images when deploying services; configurable by helm during installation, default value is empty for internet

In order to be able to use an existing Kubernetes control plane for DCM Infrastructure, the following requirements must be met:

  • Kubernetes version: 1.24 and above.

Carefully check the document describing the maximum version skew supported between various Kubernetes components.

If Cluster API is installed:

  • core: cluster-api: v1.2.2 and above

  • bootstrap: kubeadm v1.2.2 and above

  • control plane: kubeadm v1.2.2 and above

  • Infrastructure: metal3 v1.2.0 and above

System setup should meet 1. System requirements.

To install a new Kubernetes cluster follow Create Kubernetes cluster with Kubespray doc.

For DPU provisioning, CAPI components are required.

3.1. Install clusterctl:

Copy
Copied!
            

curl -L https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.2.1/clusterctl-linux-amd64 -o clusterctl chmod +x ./clusterctl sudo mv ./clusterctl /usr/local/bin/clusterctl

3.2. Install CAPI components and Metal3:

Copy
Copied!
            

clusterctl init --core cluster-api:v1.2.2 --bootstrap kubeadm:v1.2.2 --control-plane kubeadm:v1.2.2 -v5 --infrastructure metal3:v1.2.0

In order to install Universe Infrastructure components, follow Helm charts documentation.

Previous universe-k8s-tenant-workload-rule-plugin
Next Installing with Helm
© Copyright 2023, NVIDIA. Last updated on Feb 7, 2024.