powerflex_storage_pool (Data Source)

This datasource is used to query the existing storage pools from PowerFlex array. The information fetched from this datasource can be used for getting the details / for further processing in resource block.

Note: Either protection_domain_name or protection_domain_id is required. But not both.

Note: Either storage_pool_names or storage_pool_ids is required. But not both.

Example Usage

/*
Copyright (c) 2023-2024 Dell Inc., or its subsidiaries. All Rights Reserved.

Licensed under the Mozilla Public License Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://mozilla.org/MPL/2.0/


Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

# commands to run this tf file : terraform init && terraform apply --auto-approve
# To read storage pool, either protection_domain_name or protection_domain_id must be provided
# This datasource reads a list of storage pools either by storage_pool_ids or storage_pool_names where user can provide a list of ids or names
# if both storage_pool_ids and storage_pool_names are not provided , then it will read all the storage pool under the protection domain
# Both storage_pool_ids and storage_pool_names can't be provided together .
# Both protection_domain_name and protection_domain_id can't be provided together


data "powerflex_storage_pool" "example" {
  //protection_domain_name = "domain1"
  protection_domain_id = "202a046600000000"
  //storage_pool_ids = ["c98ec35000000002", "c98e26e500000000"]
  storage_pool_names = ["pool2", "pool1"]
}


output "storagePoolresult" {
  value = data.powerflex_storage_pool.example.storage_pools
}

After the successful execution of above said block, We can see the output by executing terraform output command. Also, we can fetch information via the variable: data.powerflex_storage_pool.example.attribute_name where attribute_name is the attribute which user wants to fetch.

Schema

Optional

  • protection_domain_id (String) ID of the Protection Domain from which storage pools will be fetched. Conflicts with protection_domain_name.
  • protection_domain_name (String) Name of the Protection Domain from which storage pools will be fetched. Conflicts with protection_domain_id.
  • storage_pool_ids (List of String) List of storage pool IDs. Conflicts with storage_pool_names.
  • storage_pool_names (List of String) List of storage pool names. Conflicts with storage_pool_ids.

Read-Only

  • id (String) Placeholder identifier attribute.
  • storage_pools (Attributes List) List of fetched storage pools. (see below for nested schema)

Nested Schema for storage_pools

Read-Only:

  • address_space_usage (String) Address space usage.
  • address_space_usage_type (String) Address space usage reason.
  • background_scanner_bw_limit_kbps (Number) Background Scanner Bandwidth Limit.
  • background_scanner_mode (String) Scanner mode.
  • bg_scanner_compare_error_action (String) Scanner compare-error action.
  • bg_scanner_read_error_action (String) Scanner read-error action.
  • capacity_alert_critical_threshold (Number) Capacity alert critical threshold.
  • capacity_alert_high_threshold (Number) Capacity alert high threshold.
  • capacity_usage_state (String) Capacity usage state (normal/high/critical/full).
  • capacity_usage_type (String) Usage state reason.
  • checksum_enabled (Boolean) Checksum Enabled.
  • compression_method (String) Compression method.
  • data_layout (String) Data Layout.
  • external_acceleration_type (String) External acceleration type.
  • fgl_accp_id (String) FGL ID.
  • fgl_extra_capacity (Number) FGL extra capacity.
  • fgl_nvdimm_metadata_amotization_x100 (Number) FGL NVDIMM metadata amortization.
  • fgl_nvdimm_write_cache_size_mb (Number) FGL NVDIMM write cache size in Mb.
  • fgl_overprovisioning_factor (Number) FGL overprovisioning factor.
  • fgl_perf_profile (String) FGL performance profile.
  • fgl_write_atomicity_size (Number) FGL write atomicity size.
  • fragmentation_enabled (Boolean) Fragmentation Enabled.
  • id (String) Storage pool ID.
  • links (Attributes List) Specifies the links asscociated with storage pool. (see below for nested schema)
  • media_type (String) Media type.
  • name (String) Storage pool name.
  • num_of_parallel_rebuild_rebalance_jobs_per_device (Number) Number of Parallel Rebuild/Rebalance Jobs per Device.
  • persistent_checksum_builder_limit_kb (Number) Persistent checksum builder limit.
  • persistent_checksum_enabled (Boolean) Persistent checksum enabled.
  • persistent_checksum_state (String) Persistent Checksum State.
  • persistent_checksum_validate_on_read (Boolean) Persistent checksum validation on read.
  • protected_maintenance_mode_io_priority_app_bw_per_device_threshold_kbps (Number) Protected maintenance mode IO priority app bandwidth per device threshold in Kbps.
  • protected_maintenance_mode_io_priority_app_iops_per_device_threshold (Number) Protected maintenance mode IO priority app IOPS per device threshold.
  • protected_maintenance_mode_io_priority_bw_limit_per_device_kbps (Number) Protected maintenance mode IO priority bandwidth limit per device in Kbps.
  • protected_maintenance_mode_io_priority_num_of_concurrent_ios_per_device (Number) Number of Concurrent Protected Maintenance Mode IOPS per Device.
  • protected_maintenance_mode_io_priority_policy (String) Protected maintenance mode IO priority policy.
  • protected_maintenance_mode_io_priority_quiet_period_msec (Number) Protected maintenance mode IO priority quiet period in Msec.
  • rebalance_enabled (Boolean) Rebalance Enabled.
  • rebalance_io_priority_app_bw_per_device_threshold_kbps (Number) Rebalance Application Bandwidth per Device Threshold.
  • rebalance_io_priority_app_iops_per_device_threshold (Number) Rebalance Application IOPS per Device Threshold.
  • rebalance_io_priority_bw_limit_per_device_kbps (Number) Rebalance Bandwidth Limit per Device.
  • rebalance_io_priority_num_of_concurrent_ios_per_device (Number) Number of Concurrent Rebalance IOPS per Device.
  • rebalance_io_priority_policy (String) Rebalance IO Priority Policy.
  • rebalance_io_priority_quiet_period_msec (Number) Rebalance Quiet Period.
  • rebuild_enabled (Boolean) Rebuild Enabled.
  • rebuild_io_priority_app_bw_per_device_threshold_kbps (Number) Rebuild Application Bandwidth per Device Threshold.
  • rebuild_io_priority_app_iops_per_device_threshold (Number) Rebuild Application IOPS per Device Threshold.
  • rebuild_io_priority_bw_limit_per_device_in_kbps (Number) Rebuild Bandwidth Limit per Device.
  • rebuild_io_priority_num_of_concurrent_ios_per_device (Number) Number of Concurrent Rebuild IOPS per Device.
  • rebuild_io_priority_policy (String) Rebuild IO Priority Policy.
  • rebuild_io_priority_quiet_period_msec (Number) Rebuild Quiet Period.
  • replication_capacity_max_ratio (Number) Replication allowed capacity.
  • rm_cache_write_handling_mode (String) RAM Read Cache Write Handling Mode.
  • sds (Attributes List) List of SDS associated with storage pool. (see below for nested schema)
  • spare_percentage (Number) Spare Percentage.
  • use_rf_cache (Boolean) Use Read Flash Cache.
  • use_rm_cache (Boolean) Use RAM Read Cache.
  • volumes (Attributes List) List of volumes associated with storage pool. (see below for nested schema)
  • vtree_migration_io_priority_app_bw_per_device_threshold_kbps (Number) VTree migration IO priority App bandwidth per device threshold in Kbps.
  • vtree_migration_io_priority_app_iops_per_device_threshold (Number) VTree migration IO priority App IOPS per device threshold.
  • vtree_migration_io_priority_bw_limit_per_device_kbps (Number) VTree Migration Bandwidth Limit per Device.
  • vtree_migration_io_priority_num_of_concurrent_ios_per_device (Number) Number of concurrent VTree migration IOPS per device.
  • vtree_migration_io_priority_policy (String) VTree Migration IO Priority Policy.
  • vtree_migration_io_priority_quiet_period_msec (Number) VTree migration IO priority quiet period in Msec.
  • zero_padding_enabled (Boolean) Zero Padding Enabled.

Read-Only:

  • href (String) Specifies the exact path to fetch the details.
  • rel (String) Specifies the relationship with the storage pool.

Nested Schema for storage_pools.sds

Read-Only:

  • id (String) SDS ID.
  • name (String) SDS name.

Nested Schema for storage_pools.volumes

Read-Only:

  • id (String) Volume ID.
  • name (String) Volume name.