This commit is contained in:
30
main.tf
30
main.tf
@ -0,0 +1,30 @@
|
||||
# getting lastest supported k8s version
|
||||
data "scaleway_k8s_version" "latest" {
|
||||
name = "latest"
|
||||
region = "fr-par"
|
||||
}
|
||||
|
||||
resource "scaleway_k8s_cluster" "cluster" {
|
||||
name = var.cluster_name
|
||||
|
||||
# versions have the form region/version, so trimming the region part
|
||||
version = trimprefix(data.scaleway_k8s_version.latest.id, "fr-par/")
|
||||
cni = "cilium"
|
||||
|
||||
region = "fr-par"
|
||||
|
||||
# referencing the created network
|
||||
private_network_id = scaleway_vpc_private_network.network.id
|
||||
|
||||
# set to true to delete all that wes created when destroying the cluster
|
||||
delete_additional_resources = true
|
||||
}
|
||||
|
||||
resource "scaleway_k8s_pool" "pool" {
|
||||
# referencing the created cluster id
|
||||
cluster_id = scaleway_k8s_cluster.cluster.id
|
||||
|
||||
name = "${var.node_type}-pool"
|
||||
node_type = var.node_type
|
||||
size = var.node_count
|
||||
}
|
||||
|
@ -0,0 +1,8 @@
|
||||
# scaleway cluster needs a private network
|
||||
resource "scaleway_vpc_private_network" "network" {
|
||||
name = "k8s-network"
|
||||
|
||||
ipv4_subnet {
|
||||
subnet = "10.50.70.0/24"
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,4 @@
|
||||
output "cluster_kubeconfig" {
|
||||
description = "the contents of generated KUBECONFIG file"
|
||||
value = nonsensitive(scaleway_k8s_cluster.cluster.kubeconfig[0].config_file)
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
scaleway = {
|
||||
source = "scaleway/scaleway"
|
||||
version = "~> 2.41.0"
|
||||
}
|
||||
}
|
||||
required_version = ">= 1.8"
|
||||
}
|
21
variables.tf
21
variables.tf
@ -0,0 +1,21 @@
|
||||
variable "cluster_name" {
|
||||
type = string
|
||||
description = "le nom du cluster à créer"
|
||||
}
|
||||
|
||||
variable "node_count" {
|
||||
type = number
|
||||
description = "nombre d'instances à créer dans le pool de nœuds de cluster"
|
||||
default = 1
|
||||
|
||||
validation {
|
||||
condition = var.node_count > 0
|
||||
error_message = "Le nombre de nœuds doit être supérieur à 0"
|
||||
}
|
||||
}
|
||||
|
||||
variable "node_type" {
|
||||
type = string
|
||||
description = "le type de nœud à créer dans le pool de nœuds de la grappe"
|
||||
default = "DEV1-M"
|
||||
}
|
Reference in New Issue
Block a user