Skip to main content
openstack_blockstorage_volume_v3
Last update:

openstack_blockstorage_volume_v3

For your information

This instruction is a copy of the official OpenStack Terraform provider's OpenStack Terraform documentation in the Terraform Registry.

Manages a V3 volume resource within OpenStack.

Example Usage

resource "openstack_blockstorage_volume_v3" "volume_1" {
region = "RegionOne"
name = "volume_1"
description = "first test volume"
size = 3
}

Argument Reference

The following arguments are supported:

  • region — (Optional) The region in which to create the volume. If omitted, the region argument of the provider is used. Changing this creates a new volume.

  • size — (Required) The size of the volume to create (in gigabytes).

  • enable_online_resize — (Optional) When this option is set it allows extending attached volumes. Note: updating size of an attached volume requires Cinder support for version 3.42 and a compatible storage driver.

  • availability_zone — (Optional) The availability zone for the volume. Changing this creates a new volume.

  • consistency_group_id — (Optional) The consistency group to place the volume in.

  • description — (Optional) A description of the volume. Changing these updates the volume's description.

  • image_id — (Optional) The image ID from which to create the volume. Changing this creates a new volume.

  • metadata — (Optional) Metadata key/value pairs to associate with the volume. Changing this updates the existing volume metadata.

  • name — (Optional) A unique name for the volume. Changing this updates the volume's name.

  • snapshot_id — (Optional) The snapshot ID from which to create the volume. Changing this creates a new volume.

  • source_replica — (Optional) The volume ID to replicate with.

  • source_vol_id — (Optional) The volume ID from which to create the volume. Changing this creates a new volume.

  • volume_type — (Optional) The type of volume to create. Changing this creates a new volume.

  • multiattach — (Optional) Allow the volume to be attached to more than one Compute instance.

  • scheduler_hints — (Optional) Provide the Cinder scheduler with hints on where to instantiate a volume in the OpenStack cloud. The available hints are described below.

The scheduler_hints block supports:

  • different_host — (Optional) The volume should be scheduled on a different host from the set of volumes specified in the list provided.

  • same_host — (Optional) A list of volume UUIDs. The volume should be scheduled on the same host as another volume specified in the list provided.

  • local_to_instance — (Optional) An instance UUID. The volume should be scheduled on the same host as the instance.

  • query — (Optional) A conditional query that a back-end must pass in order to host a volume. The query must use the JsonFilter syntax which is describedhere. At this time, only simple queries are supported. Compound queries usingand, oror not are not supported. An example of a simple query is:

    [=”, “$backend_id”, “rbd:vol@ceph#cloud”]
  • additional_properties — (Optional) Arbitrary key/value pairs of additional properties to pass to the scheduler.

Attributes Reference

The following attributes are exported:

  • region — See Argument Reference above.
  • size — See Argument Reference above.
  • name — See Argument Reference above.
  • description — See Argument Reference above.
  • availability_zone — See Argument Reference above.
  • image_id — See Argument Reference above.
  • source_vol_id — See Argument Reference above.
  • snapshot_id — See Argument Reference above.
  • metadata — See Argument Reference above.
  • volume_type — See Argument Reference above.
  • attachment — If a volume is attached to an instance, this attribute will display the Attachment ID, Instance ID, and the Device as the Instance sees it.
  • multiattach — See Argument Reference above.

Import

Volumes can be imported using the id, e.g.

$ terraform import openstack_blockstorage_volume_v3.volume_1 ea257959-eeb1-4c10-8d33-26f0409a755d