This directory is still under development -- Ansible playbooks are the ONLY currently supported deployment mechanism
This directory contains Helm charts for deploying AIS along with its dependencies. It assumes a properly configured K8s cluster with drives already formatted and mounted for use (see the host-config ansible playbooks).
- Local Kubectl configured to access the cluster
- Kubernetes nodes configured with formatted drives
- Helm installed locally
- Helm-diff plugin:
helm plugin install https://github.com/databus23/helm-diff
- Helmfile: https://github.com/helmfile/helmfile?tab=readme-ov-file
- Helm-diff plugin:
- Configure access to your cluster with a new context. See the k8s docs.
- Check your current context with
kubectl config current-context
- Set the context to your cluster with
kubectl config use-context <your-context>
To create a new release, add it to the environments section at the top of ais/helmfile.yaml
.
Next, copy each values-sample.yaml
file for each chart in ./ais/config/ to a new values file with the same name as the new environment.
Then modify the values in each new file for your desired cluster.
To install the charts provided, we use helmfile. Update the helmfile.yaml
to configure the destination namespaces and set and environment for your deployment.
First, install the operator from the operator
directory:
helmfile sync
Verify the operator installation by checking that the pod is in 'Ready' state:
kubectl get pods -n ais-operator-system
Then from the ais
directory run:
helmfile sync --environment <your-env>
To uninstall:
helmfile delete --environment <your-env>
If you only want to modify one part of the installation, it is possible to run the charts individually in ./ais/charts
with their own values.yaml
files.
Chart | Description |
---|---|
ais-operator | Deploy the AIS operator -- our helmfile deploys the chart generated from our latest AIS operator release |
ais-cluster | Create an AIS cluster resource, with the expectation the operator is already deployed |
ais-create-pv | Create persistent volumes to be used by AIS targets |
tls-issuer | Create a cert-manager Issuer for self-signed certs |
tls-cert | Create a cert-manager certificate |