home-cloud/k3s_cluster_v2/agents.tf

30 lines
929 B
HCL

resource "hcloud_server" "agents" {
count = var.compute_count
name = "k3s-agent-${count.index}"
image = data.hcloud_image.ubuntu.name
server_type = var.compute_server_type
location = var.server_location
ssh_keys = [data.hcloud_ssh_key.default.id]
labels = {
provisioner = "terraform",
engine = "k3s",
node_type = "agent",
}
}
resource "hcloud_server_network" "agents_network" {
count = length(hcloud_server.agents)
server_id = hcloud_server.agents[count.index].id
subnet_id = hcloud_network_subnet.k3s_nodes.id
ip = cidrhost(hcloud_network_subnet.k3s_nodes.ip_range, 1 + var.control_count + count.index)
}
resource "hcloud_load_balancer_target" "ingress" {
count = var.compute_count
type = "server"
load_balancer_id = hcloud_load_balancer.k3s.id
server_id = hcloud_server.agents[count.index].id
use_private_ip = true
}