Nutanix AHV Deployment

Prerequisites

  1. Ensure you have access to your Nutanix AHV cluster.

  2. Install the following tools on your workstation:

Step 1: Kubernetes Cluster Requirements

Set up a Kubernetes cluster on Nutanix. Nutanix Kubernetes Engine docs here.

Step 2: Configure Persistent Storage

Nutanix AHV uses the Nutanix CSI (Container Storage Interface) driver for Kubernetes to manage persistent storage. Install and configure the CSI driver:

  1. Install the Nutanix CSI driver for Kubernetes following the Nutanix CSI documentation.

  2. Create a default StorageClass in Kubernetes for dynamic provisioning:

    kind: StorageClass
    apiVersion: storage.k8s.io/v1
    metadata:
      name: nutanix-sc
    provisioner: csi.nutanix.com
    parameters:
      csi.storage.k8s.io/fstype: ext4

Step 3: Configure Kubernetes Networking

Ensure an ingress controller is installed for external access to your services.

  1. Initialize the Ingress-Nginx repository:

  2. Deploy the Ingress-Nginx Helm chart:

  3. Validate that the LoadBalancer service's external IP address is configured:

The Ingress-Nginx Controller is responsible for exposing application services externally to the cluster.

Step 4: Prepare Violet Configuration

  1. Create a violet-values.yml configuration file for the deployment:

Deploying or Updating Version-Locked Violet [OPTIONAL]

If you would like to lock the version of Violet that you are using and not automatically pull the latest version, add the following entry to your violet-values.yml file:

Violet changelog (& version tags) can be found here VioletLabs changelog | Productlane

If you are deploying Violet in this environment for the first time, continue to Step 5: Fetch Internal Secrets from Violet.

If you have already deployed Violet and are just locking the version or updating to a specific version of Violet, enter that versionTag in the violet-values.yml file and then skip to Step 6: Deploy Violet Helm Chart.

Step 5: Fetch Internal Secrets from Violet

For managing secrets securely on Nutanix, you can use Kubernetes Secrets or integrate with Nutanix Vault or HashiCorp Vault. This is used to load some customer-specific secrets from the Violet AWS cloud into the On-Prem Violet Deployment.

  1. Install External Secrets:

  2. Set up an AWS profile called violet-external

  3. Create a namespace for Violet:

  4. Create a secret that allows Kubernetes to access the Violet Helm Chart repository:

  5. Install the mezmo logging agent. This streams logs from your cluster to the violet team for troubleshooting and monitoring assistance

Step 6: Deploy Violet Helm Chart

  1. Log into the Violet Helm Chart Repository

  2. Install the Violet Helm Chart:

Step 7: Verify Installation

Note that it may take up to 5 minutes to run the database provisioning scripts. You can check the status of the deployment by looking at the pods:

  1. Check the status of the pods in the Violet namespace:

Step 8: Post-Installation Configuration

After installation is complete the helm chart will print our some information and commands including the URL to access your new deployment, how to get the IP Address that the deployment is served at (for setting up DNS rules) and how to obtain the auto-generated password for the [email protected] account.

Last updated

Was this helpful?