Install common resources on Kubernetes clusters required by tenants
- working Kubernetes cluster deployed from Cosmo Tech terraform-provider (like terraform-azure for example)
- terraform
If using Windows, Terraform must be accessible from PATH
- clone & open the repository
git clone https://github.com/Cosmo-Tech/terraform-shared.git --branch <tag> cd terraform-shared - deploy
- fill terraform.tfvars variables according to your needs
- run pre-configured script
ℹ️ comment/uncomment the terraform apply line at the end to get a plan without deploy anything
- Linux
./_run-terraform.sh - Windows
./_run-terraform.ps1
- Linux
- None known error for now !
resolution description will takes place here
- modules
- chart_cert_manager = install Cert Manager
- chart_harbor = install Harbor
- chart_ingress_nginx = install Ingress Nginx
- chart_keycloak = Keycloak
- chart_prometheus_stack = Prometheus Stack (Prometheus/Grafana)
- kube_namespaces = create namespaces for all others modules
- Terraform state
- The state is stored beside the cluster Terraform state, in the current cloud s3/blob storage service (generally called
cosmotech-statesorcosmotechstates, depending on what the cloud provider allows in naming convention)
- The state is stored beside the cluster Terraform state, in the current cloud s3/blob storage service (generally called
- File backend.tf
- dynamically created at each run of
_run-terraform - permit to have multi-cloud compatibility with Terraform
- it instanciate the needed Terraform providers based on the variable
cloud_providerfrom terraform.tfvars - this file is a workaround to avoid having unwanted variables related to cloud providers not targetted in current deployment
- dynamically created at each run of
Made with ❤️ by Cosmo Tech DevOps team