Validate that the LoadBalancer service's external IP address is configured:
kubectl --namespace ingress-nginx get services -o wide -w ingress-nginx-controller
The Ingress-Nginx Controller is responsible for exposing application services externally to the cluster.
Step 4: Prepare Violet Configuration
Create a violet-values.yml configuration file for the deployment:
domain: # The domain where Violet will be served. Subdomain must be "violet": violet.mydomain.com
customerName: # The customer name of your license. Provided by Violet
licenseKey: # Your license key. Provided by Violet
adminEmail: # Admin user email for the customer
adminName: # Admin user full name ("Firstname Lastname") for the customer
aws:
accessKeyId: # Leave blank or remove if not applicable
accessKeySecret: # Leave blank or remove if not applicable
global:
storageClass: nutanix-sc
# optional: This is required if you wish to use an external database
# instead of an internal postgres db automatically spun up by the helm chart.
# Do not add if using the internal db.
postgresql:
enabled: false # Disable internal database if using an external database
auth:
host: # hostname for external db
password: # db user password
username: # db user username
adminPassword: # admin user password
adminUsername: # admin username
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:
image:
versionTag: # use correct version tag to lock a version and not always pull latest. Provided by Violet for initial deployment.
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.
$ aws configure —profile violet-external
AWS Access Key ID [None]:[AWS_ACCESS_KEY from 1Pass]
AWS Secret Access Key [None]: [AWS_SECRET_ACCESS_KEY from 1Pass]
Default region name [None]: us-west-1
Default output format [None]: json
Create a namespace for Violet:
kubectl create namespace violet
Create a secret that allows Kubernetes to access the Violet Helm Chart repository:
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:
Check the status of the pods in the Violet namespace:
kubectl get pods -n violet
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 violet_admin@violetlabs.com account.
Violet changelog (& version tags) can be found here