Terraform module to create Production Grade CIVO Kubernetes cluster and associated resources
Features enabled:
- Network Creation
- Firewall Creation with access via Authorized Network
- Application Installation
You can find a fully functional, production-ready example on the examples/ folder.
| Name | Version |
|---|---|
| terraform | >= 1.0.0 |
| civo | >= 1.1.2 |
| Name | Version |
|---|---|
| civo | >= 1.1.2 |
| Name | Type |
|---|---|
| civo_firewall.this | resource |
| civo_kubernetes_cluster.this | resource |
| civo_kubernetes_node_pool.this | resource |
| civo_network.this | resource |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| authorized_networks | Authorized networks for Kubernetes API server | set(string) |
[ |
no |
| cluster_name | name of the kubernetes cluster | string |
"initializ-sandbox" |
yes |
| cni | The cni for the k3s to install | string |
"cilium" |
no |
| cluster_version | supported version of the kubernetes cluster | string |
"1.28.7-k3s1" |
no |
| cluster_type | supported type of the kubernetes cluster - k3s or talos | string |
"k3s" |
no |
| network_name | name of the network to be created | string |
"initializ-sandbox" |
no |
| node_count | Number of nodes into the cluster | number |
1 |
no |
| node_instance_size | Instance type of the target nodes. | string |
"g4s.kube.medium" |
no |
| node_label | Label of the main node pool | string |
"initializ-sandbox" |
no |
| node_pool_labels | Additional Node Pool Labels | map(string) |
{} |
no |
| taint | Node Taints | list(object({ |
[] |
no |
| node_pools | Addons node pools | list(object({ |
[] |
no |
| region | The region in which the cluster should be created. | string |
"NYC1" |
no |
| tags | Tags | string |
"initializ-sandbox" |
no |
| Name | Description |
|---|---|
| kubernetes_cluster_name | The name of the CIVO Kubernetes cluster |
| kubernetes_cluster_endpoint | Endpoint for your Kubernetes API server |
| kubernetes_cluster_id | The id of the CIVO Kubernetes cluster |
| kubernetes_cluster_status | Status of the Cluster if it's Active or not |
| kubernetes_cluster_ready | Is cluster really ready |
| kubernetes_cluster_version | Kubernetes Cluster version |
| network_id | The ID of the Civo Network |
| node_pool_ids | List of IDs of the Civo Kubernetes Node Pools |
| node_pool_instance_names | List of instance names in each node pool |