» linode_volume

Provides a Linode Volume resource. This can be used to create, modify, and delete Linodes Block Storage Volumes. For more information, see How to Use Block Storage with Your Linode and the Linode APIv4 docs.

» Example Usage

The following example shows how one might use this resource to configure a Block Storage Volume attached to a Linode Instance.

resource "linode_instance" "foobaz" {
    root_pass = "3X4mp13"
    type = "g6-nanode-1"
    region = "us-west"
    tags = ["foobaz"]

}

resource "linode_volume" "foobar" {
    label = "foo-volume"
    region = "${linode_instance.foobaz.region}"
    linode_id = "${linode_instance.foobaz.id}"
}

Volumes can also be attached using the Linode Instance config device map.

resource "linode_instance" "foo" {
  region             = "us-east"
  type               = "g6-nanode-1"

  config {
    label = "boot-existing-volume"
    kernel = "linode/latest-64bit"
    devices {
      sda = { volume_id = "123" }
    }
  }
}

» Argument Reference

The following arguments are supported:

  • label - (Required) The label of the Linode Volume

  • region - (Required) The region where this volume will be deployed. Examples are "us-east", "us-west", "ap-south", etc. Changing region forces the creation of a new Linode Volume..


  • size - (Optional) Size of the Volume in GB.

  • linode_id - (Optional) The ID of a Linode Instance where the the Volume should be attached.

  • tags - (Optional) A list of tags applied to this object. Tags are for organizational purposes only.

» Timeouts

The timeouts block allows you to specify timeouts for certain actions:

  • create - (Defaults to 10 mins) Used when creating the volume (until the volume is reaches the initial active state)
  • update - (Defaults to 20 mins) Used when updating the volume when necessary during update - e.g. when resizing the volume
  • delete - (Defaults to 10 mins) Used when deleting the volume

» Attributes

This resource exports the following attributes:

  • status - The label of the Linode Volume.

  • filesystem_path - The full filesystem path for the Volume based on the Volume's label. The path is "/dev/disk/by-id/scsi-0Linode_Volume_" + the Volume label

» Import

Linodes Volumes can be imported using the Linode Volume id, e.g.

terraform import linode_volume.myvolume 1234567