terraform-iaas-api-basic-ha.../04-master.tf
Mauritz Uphoff 6a5f928648
All checks were successful
CI / Terraform Format & Validate (push) Successful in 14s
CI / TruffleHog Secrets Scan (push) Successful in 55s
Initial commit
2025-06-10 16:32:16 +02:00

44 lines
1.6 KiB
HCL

/*
Copyright 2023 Schwarz IT KG <markus.brunsch@mail.schwarz>
Copyright 2024-2025 STACKIT GmbH & Co. KG <markus.brunsch@stackit.cloud>
Use of this source code is governed by an MIT-style
license that can be found in the LICENSE file or at
https://opensource.org/licenses/MIT.
*/
# Create virtual Server
resource "stackit_server" "example01" {
project_id = var.STACKIT_PROJECT_ID
name = "example01"
boot_volume = {
size = 64
source_type = "image"
source_id = var.debian_image
performance_class = "storage_premium_perf6"
delete_on_termination = true
}
machine_type = "c1.4"
availability_zone = "eu01-1"
keypair_name = stackit_key_pair.admin-keypair.name
depends_on = [stackit_network_interface.example01]
}
resource "stackit_network_interface" "example01" {
project_id = var.STACKIT_PROJECT_ID
network_id = stackit_network.default.network_id
allowed_addresses = [format("%s/%s", stackit_network_interface.vip01.ipv4, "32")]
security_group_ids = [stackit_security_group.active-passive.security_group_id]
}
resource "stackit_server_network_interface_attach" "example01-nic-attachment" {
project_id = var.STACKIT_PROJECT_ID
server_id = stackit_server.example01.server_id
network_interface_id = stackit_network_interface.example01.network_interface_id
}
resource "stackit_public_ip" "example01-wan" {
project_id = var.STACKIT_PROJECT_ID
network_interface_id = stackit_network_interface.example01.network_interface_id
depends_on = [stackit_server_network_interface_attach.example01-nic-attachment]
}