terraform-provider-stackitp.../docs/resources/postgresflexalpha_instance.md

4.2 KiB

page_title subcategory description
stackitprivatepreview_postgresflexalpha_instance Resource - stackitprivatepreview

stackitprivatepreview_postgresflexalpha_instance (Resource)

Example Usage

resource "stackitprivatepreview_postgresflexalpha_instance" "msh-instance-only" {
  project_id      = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
  name            = "example-instance"
  acl             = ["XXX.XXX.XXX.X/XX", "XX.XXX.XX.X/XX"]
  backup_schedule = "0 0 * * *"
  retention_days  = 30
  flavor_id       = "flavor.id"
  replicas        = 1
  storage = {
    performance_class = "premium-perf2-stackit"
    size              = 10
  }
  encryption = {
    kek_key_id      = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    kek_key_ring_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    kek_key_version = 1
    service_account = "service@account.email"
  }
  network = {
    acl             = ["XXX.XXX.XXX.X/XX", "XX.XXX.XX.X/XX"]
    access_scope = "PUBLIC"
  }
  version = 17
}

# Only use the import statement, if you want to import an existing postgresflex instance
import {
  to = stackitprivatepreview_postgresflexalpha_instance.import-example
  id = "${var.project_id},${var.region},${var.postgres_instance_id}"
}

import {
  to = stackitprivatepreview_postgresflexalpha_instance.import-example
  identity = {
    project_id  = var.project_id
    region      = var.region
    instance_id = var.postgres_instance_id
  }
}

Schema

Required

  • backup_schedule (String) The schedule for on what time and how often the database backup will be created. The schedule is written as a cron schedule.
  • flavor_id (String) The id of the instance flavor.
  • name (String) The name of the instance.
  • network (Attributes) The access configuration of the instance (see below for nested schema)
  • replicas (Number) How many replicas the instance should have.
  • retention_days (Number) How long backups are retained. The value can only be between 32 and 365 days.
  • storage (Attributes) The object containing information about the storage size and class. (see below for nested schema)
  • version (String) The Postgres version used for the instance. See Versions Endpoint for supported version parameters.

Optional

  • encryption (Attributes) The configuration for instance's volume and backup storage encryption.

⚠︝ Note: This feature is in private preview. Supplying this object is only permitted for enabled accounts. If your account does not have access, the request will be rejected. (see below for nested schema)

  • instance_id (String) The ID of the instance.
  • project_id (String) The STACKIT project ID.
  • region (String) The region which should be addressed

Read-Only

  • acl (List of String) List of IPV4 cidr.
  • connection_info (Attributes) The DNS name and port in the instance overview (see below for nested schema)
  • id (String) The ID of the instance.
  • is_deletable (Boolean) Whether the instance can be deleted or not.
  • status (String) The current status of the instance.

Nested Schema for network

Required:

  • acl (List of String) List of IPV4 cidr.

Optional:

  • access_scope (String) The access scope of the instance. It defines if the instance is public or airgapped.

Read-Only:

  • instance_address (String)
  • router_address (String)

Nested Schema for storage

Required:

  • performance_class (String) The storage class for the storage.
  • size (Number) The storage size in Gigabytes.

Nested Schema for encryption

Required:

  • kek_key_id (String) The encryption-key key identifier
  • kek_key_ring_id (String) The encryption-key keyring identifier
  • kek_key_version (String) The encryption-key version
  • service_account (String)

Nested Schema for connection_info

Read-Only:

  • host (String) The host of the instance.
  • port (Number) The port of the instance.