37 lines
1.1 KiB
HCL
37 lines
1.1 KiB
HCL
resource "rke_cluster" "cluster" {
|
|
kubernetes_version = var.kubernetes_version
|
|
cluster_name = "hcloud_test"
|
|
dynamic nodes {
|
|
for_each = hcloud_server.k8s-control
|
|
iterator = node
|
|
content {
|
|
hostname_override = node.value.name
|
|
address = node.value.ipv4_address
|
|
internal_address = node.value.network.*.ip[0]
|
|
user = "ansible"
|
|
role = ["controlplane", "etcd"]
|
|
ssh_key = "${file("../ssh-terraform-hetzner")}"
|
|
}
|
|
}
|
|
dynamic nodes {
|
|
for_each = hcloud_server.k8s-worker
|
|
iterator = node
|
|
content {
|
|
hostname_override = node.value.name
|
|
address = node.value.ipv4_address
|
|
internal_address = node.value.network.*.ip[0]
|
|
user = "ansible"
|
|
role = ["worker"]
|
|
ssh_key = "${file("../ssh-terraform-hetzner")}"
|
|
}
|
|
}
|
|
addons_include = [
|
|
"https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.1/aio/deploy/recommended.yaml"
|
|
]
|
|
}
|
|
|
|
resource "local_sensitive_file" "kube_config" {
|
|
filename = "${path.root}/kube_config_single.yml"
|
|
content = "${rke_cluster.cluster.kube_config_yaml}"
|
|
}
|