Skip to content

mastodon/terraform-ovh-k8s

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mastodon Terraform - OVHCloud Kubernetes Cluster

Terraform module for creating a managed kubernetes cluster in OVHCloud.

Requirements

Name Version
terraform >= 1.0.0

Providers

Name Version
ovh 0.44.0

Modules

No modules.

Resources

Name Type
ovh_cloud_project_kube.cluster resource
ovh_cloud_project_kube_nodepool.node_pool resource
ovh_cloud_project_kube_oidc.oidc resource

Inputs

Name Description Type Default Required
cluster_name Name of the cluster to create. string n/a yes
cluster_version Kubelet version to use when creating the cluster. string n/a yes
network_openstack_id Openstack ID of the private network in which the cluster should be placed. any n/a yes
node_pools Node pools to create for the cluster.
list(object({
flavor_name = string
nodes = number
min_nodes = optional(number, 0)
max_nodes = optional(number, 0)
name = optional(string, "")
template = optional(map(any), {})
monthly_billed = optional(bool, false)
}))
n/a yes
oidc_client_id OIDC client ID to give the cluster for login. string "" no
oidc_groups_claim Groups to include in the OIDC claim. list(string) [] no
oidc_groups_prefix Prefix to add to all groups connecting to the cluster. string "" no
oidc_provider_url URL to use for OIDC authentication. Enables OIDC if specified. string "" no
oidc_username_claim OIDC Property to use for username. string "" no
oidc_username_prefix Prefix to add to all usernames connecting to the cluster. string "" no
project_id The ID of the Public Cloud project the resources will be created in. string n/a yes
region Region in which to create the various resources. string "DE1" no

Outputs

Name Description
id The ID of the cluster
kubeconfig kubeconfig to use when connecting to the cluster
name Name of the cluster
nodes_url URLs of the nodes attached to the cluster