Skip to content

mastodon/terraform-ovh-k8s

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 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
ovh ~> 2.5.0

Providers

Name Version
ovh 2.5.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. string 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, "")
availability_zones = optional(list(string), [])
monthly_billed = optional(bool, false)
template = optional(
object({
annotations = optional(map(any), {})
labels = optional(map(any), {})
finalizers = optional(list(string), [])
unschedulable = optional(bool, false)
taints = optional(list(object({
effect = string
key = string
value = string
})), [])
}),
null
)
}))
[] no
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
subnet_id ID of the subnet in the private network in which nodes should be created. string n/a yes
update_policy How the cluster should perform updates. string "MINIMAL_DOWNTIME" 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

About

Module to create a managed k8s cluster in OVH

Resources

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages