Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Before You Start

Infrastructure Requirements

The following Nutanix environment components are required.

Table 1: Nutanix Environment
Component Version or Type Purpose
Nutanix AHV 10.0.1.1 or later Hypervisor for VM workloads
Nutanix AOS 7.3.0.5 or later Nutanix operating system
Prism Central Deployed and accessible Centralized management console for Nutanix environments
Network Access Prism Central accessible via HTTPS (port 9440) API connectivity to Prism Central
Credentials Admin user credentials API access

The following Nutanix environment components are required.

Table 2: Apstra Environment
Component Version or Type Purpose
Apstra 6.0 or 6.1 Data center fabric management
Day-0 Onboarding Devices are discovered and blueprints are created. Devices are onboarded
Network Access Apstra server accessible via HTTPS (port 443) Access the Apstra server
Credentials Admin user credentials API access
Blueprints At least one blueprint configured and committed Required for automation
Table 3: Existing Kubernetes Cluster
Component Version or Type Purpose
Kubernetes 1.31 or later Container orchestration platform
Cluster Type Single-node or multi-mode (both are supported) Type of cluster
kubectl Connected and configured to cluster per Kubernetes 1.31 or later Command-line tool for communicating with a Kubernetes cluster's control plane
Storage Persistent volume support (local-path, NFS, or other) Persistent data storage
Helm 3.0 or later Package manager for Kubernetes
Resources Minimum of 4 CPU cores, 8GB RAM, and 50GB storage System Requirements
CPU Architecture x86-64-v2 or newer Required by AWX's PostgreSQL 15 container
Note:

QEMU/KVM VMs with CPU model "qemu64" or "QEMU Virtual CPU v2.5+" will fail at the PostgreSQL pod start-up with this error: "Fatal glibc error: CPU does not support x86-64-v2". Fix this in your hypervisor: set CPU model to "host" (pass-through) or at minimum "Skylake-Client" before deploying.

Verify that the CPU architecture support with the following command:

grep -m1 flags /proc/cpuinfo | tr ' ' '\n' | grep -E 'sse4_1|sse4_2|ssse3|popcnt' # All four flags must appear in the output.

If you need to create a new Kubernetes cluster using the automated script, the following components are required.

Table 4: Using a Script to Create a Kubernetes Cluster
Component Version or Type Purpose
Linux Server Ubuntu 20.04 or later, CentOS 8 or later, or RHEL 8 or later Required for Kubernetes cluster
Resources Minimum 2 CPU cores, 4GB RAM, and 20GB storage Install Kubernetes
Root/Sudo Access N/A Required for Kubernetes installation
Python 3.10 or later (script is installed if it isn't already) Required to execute installed scripts
Internet Access Minimum 4 CPU cores, 8GB RAM, 50GB storage Required to download Kubernetes components
CPU Architecture x86-64-v2 or newer Same requirement as existing Kubernetes cluster in Table 3.

Network Connectivity Requirements

The following components must have network connectivity:

  • Kubernetes Cluster ←→ Nutanix Prism Central (port 9440)

  • Kubernetes Cluster ←→ Apstra Server (port 443)

  • Event Service <-> AWX (via NodePort)

  • AWX <-> Apstra Server (port 443)

Software Requirements on Deployment Host

For existing Kubernetes users, the following software is required:

  • Git — Used to clone repositories

  • kubectl — Kubernetes command-line tool (configured)

  • Helm — Package manager for Kubernetes v3.0 and later

  • Docker — Required to load the Nutanix plugin image. Install with: sudo apt-get install -y docker.io, then add your user to the docker group: sudo usermod -aG docker $USER (re-login required)

  • Bash — Shell environment for running script

For new Kubernetes installations, the following software is required:

Note:

The k8s_deploy.sh script will automatically install kubectl, Helm, and Docker.

  • Git — Used to clone repositories

  • Sudo Access — Required for Kubernetes installation

  • Internet Access — Required to download components

  • Bash — Shell environment for running scripts

  • Python 3.10 or later — Script will install if missing

Required Credentials

You need to create the following credentials:

  • Nutanix Prism Central

  • Username/password with admin privileges

  • Apstra

    Username/password combination with admin privileges

  • Kubernetes

    kubectl access with cluster-admin privileges