--- # generated by https://github.com/hashicorp/terraform-plugin-docs page_title: "stackit_affinity_group Resource - stackit" subcategory: "" description: |- Affinity Group schema. Must have a region specified in the provider configuration. Usage with server resource "stackit_affinity_group" "affinity-group" { project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" name = "example-key-pair" policy = "soft-affinity" } resource "stackit_server" "example-server" { project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" name = "example-server" boot_volume = { size = 64 source_type = "image" source_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" } affinity_group = stackit_affinity_group.affinity-group.affinity_group_id availability_zone = "eu01-1" machine_type = "g1.1" } Policies hard-affinity- All servers launched in this group will be hosted on the same compute node. hard-anti-affinity- All servers launched in this group will be hosted on different compute nodes. soft-affinity- All servers launched in this group will be hosted on the same compute node if possible, but if not possible they still will be scheduled instead of failure. soft-anti-affinity- All servers launched in this group will be hosted on different compute nodes if possible, but if not possible they still will be scheduled instead of failure. --- # stackit_affinity_group (Resource) Affinity Group schema. Must have a `region` specified in the provider configuration. ### Usage with server ```terraform resource "stackit_affinity_group" "affinity-group" { project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" name = "example-key-pair" policy = "soft-affinity" } resource "stackit_server" "example-server" { project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" name = "example-server" boot_volume = { size = 64 source_type = "image" source_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" } affinity_group = stackit_affinity_group.affinity-group.affinity_group_id availability_zone = "eu01-1" machine_type = "g1.1" } ``` ### Policies * `hard-affinity`- All servers launched in this group will be hosted on the same compute node. * `hard-anti-affinity`- All servers launched in this group will be hosted on different compute nodes. * `soft-affinity`- All servers launched in this group will be hosted on the same compute node if possible, but if not possible they still will be scheduled instead of failure. * `soft-anti-affinity`- All servers launched in this group will be hosted on different compute nodes if possible, but if not possible they still will be scheduled instead of failure. ## Example Usage ```terraform resource "stackit_affinity_group" "example" { project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" name = "example-affinity-group-name" policy = "hard-anti-affinity" } ``` ## Schema ### Required - `name` (String) The name of the affinity group. - `policy` (String) The policy of the affinity group. - `project_id` (String) STACKIT Project ID to which the affinity group is associated. ### Read-Only - `affinity_group_id` (String) The affinity group ID. - `id` (String) Terraform's internal resource identifier. It is structured as "`project_id`,`affinity_group_id`". - `members` (List of String) The servers that are part of the affinity group.