Installation via Helm
Nova can be installed using a Helm Chart. You can download the yaml easily when adding a Node, and follow the guide below.
Refer to prerequisites and the sample nova.yaml.
Download From AutoJoin
You can download
nova.yaml from the AutoJoin page which will be prefilled for your installation.
helm repo add nova-helm https://snapt.github.io/nova-helm helm repo update helm install <release_name> -f nova.yaml nova-helm/nova
- Make a copy of the nova.yaml file from the sample below, or download an autogenerated one from AutoJoin on Nova.
- If you copied the sample nova.yaml file, fetch your ADC AutoJoin Key from AutoJoin and insert it as the
- Edit port mappings for the deployment and service as required. Only add ports that you have bound to in your Nova ADC configuration.
Check the ports in nova.yaml!
Enabling ports you don't plan on using immediately may cause issues on the load balancer service. Ports can be enabled later, so it's recommended to only enable active ports currently set on your ADC configuration.
Three Kubernetes elements are created:
- A Namespace following the following convention: $release_name-ns
- A Deployment with a single replica using the
novaadc/nova-clientcontainer. From this a pod will be generated which is the Nova Node itself. To scale your Nova Nodes up or down, simply increase or decrease the replicas.
- A Service with type LoadBalancer.
LoadBalancer services can be replaced with other types of services, such as ClusterIP, NodePort, or a Nova External Service Load Balancer.
Scaling Nova Nodes
In order to take full advantage of the AutoJoin functionality of Nova Nodes, scaling up and down is as simple as setting the replicas. See below for an example of setting the nodes to 2 using native kubernetes scaling
kubectl scale deployments/nova-dpl --replicas=2 -n nova-ns
Make use of the below as input during the installation and pre-requisites step.
Download From AutoJoin
Instead of manually creating the file below, use Nova AutoJoin to create your helm chart.
replicaCount: 1 image: repository: novaadc/nova-client:latest tag: 0.1.0 pullPolicy: IfNotPresent serviceAccount: create: false nova_auto_conf: 'Insert your AutoJoin Key here' nova_auto_conf_host: 'nova.snapt.net' host: 'poll.nova-adc.com' # IMPORTANT: do not add ports not used in your ADC deployment_port_map: port80: containerPort: 80 protocol: TCP port443: containerPort: 443 protocol: TCP service_port_map: port80: name: 'port80' port: 80 targetPort: 80 port443: name: 'port443' port: 443 targetPort: 443
Nova Hosted Notes
If you are not using nova.snapt.net but rather a self-hosted or partner Nova installation you need to ensure your
host fields are correct.