powerflex_storage_pool (Resource)

This resource can be used to manage Storage Pools on a PowerFlex array.

Note: Exactly one of protection_domain_name and protection_domain_id is required.

Example Usage

# terraform init && terraform plan && terraform apply
# Create, Update, Delete is supported for this resource
# To import , check storagepool_resource_import.tf for more info
# To create / update, either protection_domain_id or protection_domain_name must be provided
# name and media_type is the required parameter to create or update
# other  atrributes like : use_rmcache, use_rfcache are optional 
# To check which attributes of the storage pool can be updated, please refer Product Guide in the documentation

resource "powerflex_storage_pool" "sp" {
  name                 = "storagepool3"
  protection_domain_id = "202a046600000000"
  # protection_domain_name = "domain1"
  media_type  = "HDD"
  use_rmcache = true
  use_rfcache = false

output "created_storagepool" {
  value = powerflex_storage_pool.sp



  • media_type (String) Media Type of the storage pool. Valid values are HDD, SSD and Transitional
  • name (String) Name of the Storage pool


  • protection_domain_id (String) ID of the Protection Domain under which the storage pool will be created. Conflicts with protection_domain_name. Cannot be updated.
  • protection_domain_name (String) Name of the Protection Domain under which the storage pool will be created. Conflicts with protection_domain_id. Cannot be updated.
  • use_rfcache (Boolean) Enable/Disable RFcache on a specific storage pool
  • use_rmcache (Boolean) Enable/Disable RMcache on a specific storage pool


  • id (String) ID of the Storage pool


Import is supported using the following syntax:

# Below are the steps to import storage pool :
# Step 1 - To import a storage pool , we need the id of that storage pool 
# Step 2 - To check the id of the storage pool we can make use of storage pool datasource . Please refer storagepool_datasource.tf for more info.
# Step 3 - create a tf file with empty resource block . Refer the example below.
# Example :
# resource "powerflex_storage_pool" "resource_block_name" {
# }
# Step 4 - execute the command: terraform import "powerflex_storage_pool.resource_block_name" "id_of_the_storage_pool" (resource_block_name must be taken from step 3 and id must be taken from step 2)
# Step 5 - After successful execution of the command , check the state file