Terraform Configurations
Terraform configurations are used for provisioning Kubernetes cluster and node pools required for deployment of services.
Last updated
Terraform configurations are used for provisioning Kubernetes cluster and node pools required for deployment of services.
Last updated
You can find the configurations required for provisioning on your cloud provider on the following GitHub repository.
It is possible to customize the following provisioning variables as needed:
region
Cloud region to provision the cluster on
"eu-north-1"
ID of VPC to add cluster to
-
zones
Zones to user for the cluster
["eu-north-1b"]
cluster_name
Name to assign to provisioned cluster
"rierino-cluster"
static_ips
Names of static ips to allocate for services
[ "admin-gateway-lb-ip", "h2owave-lb-ip", "admin-ui-lb-ip" ]
node_pools
List of node pool definitions to provision
[
{ name = "admin" instance_size = "small" desired_size = 1 min_size = 1 max_size = 2 },
{ name = "ui" instance_size = "medium" desired_size = 1 min_size = 1 max_size = 2 },
{ name = "infra" instance_size = "small" desired_size = 1 min_size = 1 max_size = 2 },
{ name = "ops" instance_size = "large" desired_size = 1 min_size = 1 max_size = 2 }
]
admin_cidr
CIDR for static IP addresses to grant admin access to
-
Where do we draw the line between Terraform & Ansible?
We use Terraform strictly for provisioning of cloud vendor specific resources (e.g. cluster, node pools, security groups).
Any application installation, configuration or kubernetes deployment is done using Ansible.