If you already have a cluster (with another provider or whatever), you can still use this Terraform to deploy all the mentioned tools on it, if and only if you use ingress-nginx as your ingress controller. For this, you will need a kubeconfig
file to access your cluster. (or your credentials, if so, you will have to modify by yourself the terraform.tf
file).
This part will install :
- Cert-manager, provisionned with issuers
- Prometheus along Grafana
- ArgoCD provisionned with a default repository
- Velero
- Hashicorp Vault
- Loki
Ingress-nginx must be configured with some values:
controller:
metrics:
enabled: true
serviceMonitor:
additionalLabels:
release: prometheus
enabled: true
extraArgs:
enable-ssl-passthrough: true
Follow the following steps (every command must be run at the root of the repository):
- Run
bin/bootstrap.sh standalone
and fill the asked variables;- Only the most common variables are prompted, if you want to change other variables, you will have to edit the
standalone/terraform.tfvars
file by yourself. (the complete list of variables is available in thestandalone/variables.tf
file)
- Only the most common variables are prompted, if you want to change other variables, you will have to edit the
- Run
bin/terraform-init.sh standalone
to initialize the Terraform state; - Put your
kubeconfig
file in thestandalone
folder; - Run
bin/terraform-plan.sh standalone
to see what will be deployed; - Run
bin/terraform-apply.sh standalone
to deploy.