Product Guide
Terraform Provider for Dell PowerFlex
Contents
- Provider
- Volume Resource
- SDC Resource
- Storage Pool Resource
- Snapshot Resource
- SDS Resource
- SDC Datasource
- Protection Domain Datasource
- SDS Datasource
- Storage Pool Datasource
- Snapshot Policy Datasource
- Volume Datasource
Provider
Configure the provider on Dell Powerflex
Synopsis
To create any resource / datasource , we need to provide authentication details to connect to the PowerFlex
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|
endpoint | The endpoint to which it needs to be connected. | Required | string | ||
username | The username required for authentication. | Required | string | ||
password | The password required for the authentication. | Required | string | ||
insecure | Specifies if the user wants to do SSL verification. | Optional | bool | ||
timeout | Specifies the timeout (in seconds) for any https request. | Optional | int64 |
Examples
provider "powerflex" {
username = "username"
password = "password"
endpoint = "10.10.10.1"
insecure = true
timeout = 120
}
Note
- Provider details must be provided to authenticate and connect to the PowerFlex Storage system before creating any resource / datasource
- If timeout value is not mentioned then the value for timeout becomes 0 which means indefinite time
- If we don't set the insecure attribute in provider block, the authentication will require SSL verification
- In order to execute all resource/datasource operations, the user role should be either 'Configure' or 'Administrator'.
Volume Resource
Manage volumes on Dell PowerFlex
Synopsis
Managing volumes on PowerFlex storage system includes creating new volume, mapping/unmapping volume to/from SDC, modifying attributes of volume and deleting volume.
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Can be updated
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|---|
name | The Name of the Volume. | Required | Yes | string | ||
storage_pool_id | Storage Pool id. | Optional And Computed | No | string | ||
storage_pool_name | Storage Pool Name. | Optional And Computed | No | string | ||
protection_domain_id | Protection Domain ID. | Optional And Computed | No | string | ||
protection_domain_name | Protection Domain Name. | Optional And Computed | No | string | ||
size | Size of the Volume. | Required | Yes | int64 | ||
capacity_unit | The unit of the volume size. | Optional And Computed | Yes | string | GB |
|
volume_type | Type of volume provisioning. | Optional And Computed | Yes | string | ThinProvisioned |
|
use_rm_cache | Whether to use RM Cache or not. | Optional And Computed | Yes | bool | ||
compression_method | Type of the compression method. | Optional And Computed | Yes | string |
|
|
id | The ID of the volume. | Computed | No | string | ||
size_in_kb | Size in KB. | Computed | No | int64 | ||
access_mode | The Access mode of Volume. | Optional And Computed | Yes | string | ReadOnly |
|
remove_mode | remove mode of Volume. | Optional And Computed | Yes | string | ONLY_ME |
|
sdc_list | mapped sdc info. | Optional And Computed | list | |||
sdc_id | The ID of the SDC. | Optional And Computed | No | string | ||
sdc_name | The Name of the SDC. | Optional And Computed | No | string | ||
limit_iops | Limit of volume IOPS. | Optional And Computed | Yes | int64 | ||
limit_bw_in_mbps | Limit of volume network bandwidth. | Optional And Computed | Yes | int64 | ||
access_mode | Define the access mode for all mappings of the volume. | Optional And Computed | Yes | string | ReadOnly |
|
Examples
resource "powerflex_volume" "avengers-volume-create"{ name = "avengers-volume-create" protection_domain_name = "domain1" storage_pool_name = "pool1" size = 8 use_rm_cache = true volume_type = "ThickProvisioned" access_mode = "ReadWrite" sdc_list = [ { sdc_name = "sdc_name" limit_iops = 11 limit_bw_in_mbps = 11 access_mode = "ReadOnly" }, ] }
Create Volume using Meta-Argument ‘count’
Sample code where 10 volume resources (with name vol-create-0 to vol-create-9 ) will be created using ‘count’ Meta-Argument
resource "powerflex_volume" "avengers-volume-create"{ count = 10 name = "vol-create-${count.index}" protection_domain_name = "domain1" storage_pool_name = "pool1" #pool1 have medium granularity size = 8 use_rm_cache = true volume_type = "ThickProvisioned" access_mode = "ReadWrite" sdc_list = [ { sdc_name = "Block_S34" limit_iops = 119 limit_bw_in_mbps = 19 access_mode = "ReadOnly" }, ] }
Note
- Volume creation or update is not atomic. In case of partially completed operations, Terraform can mark the resource as tainted. One can manually remove the taint and try applying the configuration (after making necessary adjustments). Warning: If the taint is not removed, Terraform will destroy and recreate the resource.
- Volume name is unique across the PowerFlex array.
- Either name or the id of the storage pool is required for creating / modifying a volume.
- Either name or the id of the protection domain is required for creating / modifying a volume.
- Size of the volume should be a multiple of 8.
- specify 0 for unlimited IOPS.
- To set no limit over bandwidth, 0 is to be passed.
- Specify either sdc_name or sdc_id, if sdc_list is specified
- User cannot provide empty value to any of these : name, storage_pool_id, storage_pool_name, protection_domain_id, protection_domain_name
- IOPS limit value should be specified greater than 10. if not specified unlimited IOPS with value 0
- Steps to import volume resource
- To update the imported resource , mandatory fields need to be present in the resource block
SDC Resource
Manage SDCs on Dell PowerFlex
Synopsis
Managing SDCs on PowerFlex storage system includes importing details of SDC and renaming SDC
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Can be updated
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|---|
id | SDC ID. | Required | No | string | ||
last_updated | Last updated timestamp. | Computed | No | string | ||
name | SDC Name. | Required | Yes | string | ||
sdc_guid | SDC GUID. | Computed | No | string | ||
on_vmware | Presence on VMware. | Computed | No | bool | ||
sdc_approved | Indicates whether an SDC has approved access to the system. | Computed | No | bool | ||
system_id | ID of the System. | Computed | No | string | ||
sdc_ip | IP of the SDC. | Computed | No | string | ||
mdm_connection_state | MDM connection state. | Computed | No | string | ||
links | Underlying REST API links. | Computed | list | |||
rel | Specifies the relationship with the SDC. | Computed | No | string | ||
href | Specifies the exact path to fetch the details. | Computed | No | string |
Examples
resource "powerflex_sdc" "sdc" {
id = "c423b09800000003"
name = "powerflex_sdc26"
}
Note
- name can't be empty
- Steps to import SDC resource
- To update the imported resource , mandatory fields need to be present in the resource block
Storage Pool Resource
Manage storage pools on Dell PowerFlex
Synopsis
Managing storage pools on PowerFlex storage system includes creating a new storage pool, and modifying the attributes of a storage pool and deleting a storage pool.
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Can be updated
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|---|
id | ID of the Storage pool. | Computed | No | string | ||
protection_domain_id | ID of the Protection domain. | Optional | No | string | ||
protection_domain_name | Name of the Protection domain. | Optional | No | string | ||
name | Name of the Storage pool. | Required | Yes | string | ||
media_type | Type of devices in the storage pool. | Required | Yes | string |
|
|
use_rmcache | Enable/Disable RMcache on a specific storage pool. | Optional And Computed | Yes | bool | ||
use_rfcache | Enable/Disable RFcache on a specific storage pool. | Optional And Computed | Yes | bool |
Examples
resource "powerflex_storagepool" "storagepool" {
name = "storagepool3"
protection_domain_id = "4eeb304600000000"
media_type = "HDD"
use_rmcache = true
use_rfcache = false
}
Note
- Either protection_domain_id or protection_domain_name is required in order to create / modify storage pool.
- Transitional media type is supported only during modification.
- Steps to import storage pool resource
- To update the imported resource , mandatory fields need to be present in the resource block
Snapshot Resource
Details about snapshot resource
Synopsis
Managing snapshots on PowerFlex storage system includes creating snapshot for a volume, modifying attributes of snapshot and deleting snapshot.
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Can be updated
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|---|
name | The name of the snapshot. | Required | Yes | string | ||
volume_id | The volume id for which snapshot is created. | Optional And Computed | No | string | ||
volume_name | The volume name for which snapshot is created. | Optional And Computed | No | string | ||
access_mode | The Access mode of snapshot. | Optional And Computed | Yes | string | ReadOnly |
|
id | The ID of the snapshot. | Computed | No | string | ||
size | Size of the snapshot. | Optional And Computed | Yes | int64 | ||
capacity_unit | The unit of the snapshot size. | Optional And Computed | Yes | string | GB |
|
size_in_kb | Size in KB. | Computed | No | int64 | ||
lock_auto_snapshot | lock auto snapshot. | Optional And Computed | Yes | bool | ||
desired_retention | desired retention of snapshot. | Optional | Yes | int64 | ||
retention_unit | retention unit of snapshot. | Optional And Computed | Yes | string | hours |
|
retention_in_min | retention of snapshot in min. | Computed | No | string | ||
remove_mode | remove mode of snapshot. | Optional And Computed | Yes | string | ONLY_ME |
|
sdc_list | mapped sdc info. | Optional And Computed | list | |||
sdc_id | The ID of the SDC. | Optional And Computed | No | string | ||
sdc_name | The Name of the SDC. | Optional And Computed | No | string | ||
limit_iops | Limit of volume IOPS. | Optional And Computed | Yes | int64 | ||
limit_bw_in_mbps | Limit of volume network bandwidth. | Optional And Computed | Yes | int64 | ||
access_mode | Define the access mode for all mappings of the volume. | Optional And Computed | Yes | string | ReadOnly |
|
Examples
resource "powerflex_snapshot" "snapshots-create-access-mode-sdc-map" {
name = "snapshots-create-epsilon"
volume_id = "4577c84000000120"
access_mode = "ReadWrite"
size = 16
capacity_unit = "GB"
remove_mode = "INCLUDING_DESCENDANTS"
sdc_list = [
{
sdc_id = "c423b09900000004"
limit_iops = 150
limit_bw_in_mbps = 20
access_mode = "ReadWrite"
},
]
}
Note
- Snapshot creation or update is not atomic. In case of partially completed operations, Terraform can mark the resource as tainted. One can manually remove the taint and try applying the configuration (after making necessary adjustments). Warning: If the taint is not removed, Terraform will destroy and recreate the resource.
- Either volume_id or volume_name is required in order to create / modify snapshot.
- Size of the volume should be a multiple of 8.
- specify 0 for unlimited IOPS.
- To set no limit over bandwidth, 0 is to be passed.
- Specify either sdc_name or sdc_id, if sdc_list is specified
- Steps to import snapshot resource
- To update the imported resource , mandatory fields need to be present in the resource block
SDS Resource
Manage SDS on Dell PowerFlex
Synopsis
Managing SDS on PowerFlex storage system includes creating new SDS, adding/removing IP and role to/from SDS, modifying attributes of SDS, and deleting SDS.
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Can be updated
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|---|
id | The id of the SDS. | Computed | No | string | ||
protection_domain_id | Protection domain id. | Optional | No | string | ||
protection_domain_name | Protection domain name. | Optional | No | string | ||
name | Name of SDS. | Required | Yes | string | ||
ip_list | IP list of SDS. | Required | list | |||
ip | IP address to be assigned to the SDS. | Required | Yes | string | ||
role | Role to be assigned to the IP address. | Required | Yes | string |
|
|
drl_mode | DRL mode of SDS. | Optional & Computed | Yes | string | ||
rmcache_frozen | RMcache frozen state of SDS. | Computed | No | bool | ||
fault_set_id | Fault set id of SDS. | Computed | No | string | ||
rmcache_memory_allocation_state | Rmcache memory allocation state of SDS. | Computed | No | string | ||
port | Port of SDS. | Optinal And Computed | Yes | int64 | ||
membership_state | Membership state of SDS. | Computed | No | string | ||
rmcache_enabled | Rmcache enabled state of SDS. | Optional And Computed | Yes | bool | ||
performance_profile | Performance Profile of SDS. | Optional And Computed | Yes | string | ||
rfcache_enabled | Rfcache enabled state of SDS. | Optional And Computed | Yes | bool | ||
is_on_vmware | Is on vmware state of SDS. | Computed | No | bool | ||
mdm_connection_state | Mdm connection state of SDS. | Computed | No | string | ||
rmcache_size_in_mb | Rmcache size in MB of SDS. | Optional And Computed | Yes | int64 | ||
num_of_io_buffers | Number of I/O buffers of SDS. | Computed | No | int64 | ||
sds_state | State of SDS. | Computed | No | string |
Examples
resource "powerflex_sds" "sds" {
name = "Tf_SDS_01"
ip_list = [
{
ip = "10.10.10.1"
role = "all"
},
{
ip = "10.10.10.2"
role = "sdcOnly"
}
]
performance_profile = "Compact"
rmcache_enabled = true
rmcache_size_in_mb = 156
rfcache_enabled = true
drl_mode = "NonVolatile"
protection_domain_id = "4eeb304600000000"
}
Note
- Either protection_domain_id or protection_domain_name is required in order to create / modify SDS.
- SDS creation or update is not atomic. In case of partially completed operations, Terraform can mark the resource as tainted. One can manually remove the taint and try applying the configuration (after making necessary adjustments). Warning: If the taint is not removed, Terraform will destroy and recreate the resource.
- Steps to import SDS resource
- To update the imported resource , mandatory fields need to be present in the resource block
SDC Datasource
Manage SDCs on Dell PowerFlex
Synopsis
Managing SDCs on PowerFlex storage system includes getting details of SDC using id or name of SDC
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|
id | SDC ID. | Optional And Computed | String | ||
name | SDC name. | Optional And Computed | string | ||
sdcs | result SDCs. | Computed | list | ||
id | SDC ID. | Computed | String | ||
name | SDC name. | Computed | string | ||
sdc_guid | SDC GUID. | Computed | string | ||
on_vmware | Presence on VMware. | Computed | bool | ||
sdc_approved | Indicates whether an SDC has approved access to the system. | Computed | bool | ||
system_id | SDC System ID. | Computed | string | ||
sdc_ip | SDC IP. | Computed | string | ||
mdm_connection_state | MDM connection state. | Computed | string | ||
links | Underlying REST API links. | Computed | List | ||
rel | Specifies the relationship with the SDC. | Computed | string | ||
href | Specifies the exact path to fetch the details. | Computed | string |
Examples
Get SDC details by id
data "powerflex_sdc" "selected" { id = "c423b09800000003" }
Get SDC details by name
data "powerflex_sdc" "selected" { name = "sdc-1" }
Get all SDC’s
data "powerflex_sdc" "selected" { }
Note
- id and name are mutually exclusive.
- id cannot be empty.
Protection Domain Datasource
Manage protection domain on Dell PowerFlex
Synopsis
Managing protection domain on PowerFlex storage system includes getting details of protection domain using id or name of protection domain
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|
id | Unique identifier of the protection domain instance. | Optional | String | ||
name | Unique name of the protection domain instance. | Optional | string | ||
protection_domains | List of protection domains fetched. | Computed | list | ||
id | Unique identifier of the protection domain instance. | Computed | String | ||
name | Unique name of the protection domain instance. | Computed | string | ||
state | State of a PD, which can be Active, ActivePending, Inactive or InactivePending. | Computed | string | ||
system_id | System ID of the PD. | Computed | string | ||
rf_cache_accp_id | Rf Cache Acceleration Pool ID. | Computed | string | ||
rf_cache_enabled | Whether SDS Rf Cache is enabled or not. | Computed | bool | ||
rf_cache_opertional_mode | Operational Mode of the SDS RF Cache. | Computed | string | ||
rf_cache_page_size_kb | Page size of the SDS RF Cache in KB. | Computed | int64 | ||
rf_cache_max_io_size_kb | Maximum io of the SDS RF Cache in KB. | Computed | int64 | ||
fgl_default_num_concurrent_writes | Fine Granularity default number of concurrent writes. | Computed | int64 | ||
fgl_metadata_cache_enabled | Whether Fine Granularity Metadata Cache is enabled or not. | Computed | bool | ||
fgl_default_metadata_cache_size | Fine Granularity Metadata Cache size. | Computed | int64 | ||
protected_maintenance_mode_network_throttling_enabled | Whether network throttling is enabled for protected maintenance mode. | Computed | bool | ||
protected_maintenance_mode_network_throttling_in_kbps | Maximum allowed io for protected maintenance mode in KBps. | Computed | int64 | ||
rebuild_network_throttling_enabled | Whether network throttling is enabled for rebuilding. | Computed | bool | ||
rebuild_network_throttling_in_kbps | Maximum allowed io for rebuilding in KBps. | Computed | int64 | ||
rebalance_network_throttling_enabled | Whether network throttling is enabled for rebalancing. | Computed | bool | ||
rebalance_network_throttling_in_kbps | PMaximum allowed io for rebalancing in KBps. | Computed | int64 | ||
vtree_migration_network_throttling_enabled | Whether network throttling is enabled for vtree migration. | Computed | bool | ||
overall_io_network_throttling_enabled | Whether network throttling is enabled for overall io. | Computed | bool | ||
overall_io_network_throttling_in_kbps | Maximum allowed io for protected maintenance mode in KBps. Must be greater than any other network throttling parameter. | Computed | int64 | ||
sdr_sds_connectivity | SDR-SDS Connectivity information. | Computed | list | ||
client_server_conn_status | Connectivity Status. | Computed | string | ||
disconnected_client_id | ID of the disconnected client. | Computed | string | ||
disconnected_client_name | Name of the disconnected client. | Computed | string | ||
disconnected_server_id | ID of the disconnected server. | Computed | string | ||
disconnected_server_name | Name of the disconnected server. | Computed | string | ||
disconnected_server_ip | IP address of the disconnected server. | Computed | string | ||
sds_decoupled_counter | SDS Decoupled Counter windows. | Computed | list | ||
short_window | Short Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
medium_window | Medium Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
long_window | Long Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
sds_configuration_failure_counter | SDS Configuration Failure Counter windows. | Computed | list | ||
short_window | Short Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
medium_window | Medium Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
long_window | Long Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
mdm_sds_network_disconnections_counter | MDM-SDS Network Disconnection Counter windows. | Computed | list | ||
short_window | Short Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
medium_window | Medium Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
long_window | Long Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
sds_sds_network_disconnections_counter | SDS-SDS Network Disconnection Counter windows. | Computed | list | ||
short_window | Short Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
medium_window | Medium Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
long_window | Long Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
sds_receive_buffer_allocation_failures_counter | SDS receive Buffer Allocation Failure Counter windows. | Computed | list | ||
short_window | Short Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
medium_window | Medium Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
long_window | Long Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
replication_capacity_max_ratio | Maximum Replication Capacity Ratio. | Computed | list | ||
short_window | Short Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
medium_window | Medium Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
long_window | Long Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
links | Underlying REST API links. | Computed | List | ||
rel | Specifies the relationship with the protection domain. | Computed | string | ||
href | Specifies the exact path to fetch the details. | Computed | string |
Examples
Get protection domain details by id
data "powerflex_protection_domain" "pd1" { id = "4eeb304600000000" }
Get protection domain details by name
data "powerflex_protection_domain" "pd2" { name = "domain1" }
Get all protection domains
data "powerflex_protection_domain" "pd3" { }
Note
- id and name are mutually exclusive.
SDS Datasource
Manage SDS on Dell PowerFlex
Synopsis
Managing SDS on PowerFlex storage system includes getting details of SDS using id or name of SDS
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|
protection_domain_id | Protection Domain ID. | Optional | string | ||
protection_domain_name | Protection Domain Name. | Optional | string | ||
sds_ids | List of SDS IDs. | Optional | list | ||
sds_names | List of SDS names. | Optional | list | ||
sds_details | List of SDS. | Computed | list | ||
id | SDS ID. | Computed | string | ||
name | SDS name. | Computed | string | ||
ip_list | List of IPs associated with SDS. | Computed | list | ||
ip | SDS IP. | Computed | string | ||
role | SDS IP role. | Computed | string | ||
port | SDS port. | Computed | int64 | ||
sds_state | SDS state. | Computed | string | ||
membership_state | Membership state. | Computed | string | ||
mdm_connection_state | MDM connection state. | Computed | string | ||
drl_mode | DRL mode. | Computed | string | ||
rmcache_enabled | Whether RM cache is enabled or not. | Computed | bool | ||
rmcache_size | Indicates the size of Read RAM Cache on the specified SDS in KB. | Computed | int64 | ||
rmcache_frozen | Indicates whether the Read RAM Cache is currently temporarily not in use. | Computed | bool | ||
on_vmware | Presence on VMware. | Computed | bool | ||
faultset_id | Fault set ID. | Computed | string | ||
num_io_buffers | Number of IO buffers. | Computed | int64 | ||
rmcache_memory_allocation_state | Indicates the state of the memory allocation process (in progress/done). | Computed | string | ||
performance_profile | Performance profile. | Computed | string | ||
software_version_info | Software version information. | Computed | string | ||
configured_drl_mode | Configured DRL mode. | Computed | string | ||
rfcache_enabled | Whether RF cache is enabled or not. | Computed | bool | ||
maintenance_state | Maintenance state. | Computed | string | ||
maintenance_type | Maintenance type. | Computed | string | ||
rfcache_error_low_resources | RF cache error for low resources. | Computed | bool | ||
rfcache_error_api_version_mismatch | RF cache error for API version mismatch. | Computed | bool | ||
rfcache_error_inconsistent_cache_configuration | RF cache error for inconsistent cache configuration. | Computed | bool | ||
rfcache_error_inconsistent_source_configuration | RF cache error for inconsistent source configuration. | Computed | bool | ||
rfcache_error_invalid_driver_path | RF cache error for invalid driver path. | Computed | bool | ||
rfcache_error_device_does_not_exist | RF cache error for device does not exist. | Computed | bool | ||
authentication_error | Authentication error. | Computed | string | ||
fgl_num_concurrent_writes | FGL concurrent writes. | Computed | int64 | ||
fgl_metadata_cache_state | FGL metadata cache state. | Computed | string | ||
fgl_metadata_cache_size | FGL metadata cache size. | Computed | int64 | ||
num_restarts | Number of restarts. | Computed | list | ||
last_upgrade_time | Last time SDS was upgraded. | Computed | int64 | ||
sds_decoupled | SDS decoupled windows. | Computed | list | ||
short_window | Short Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
last_oscillation_count | Last oscillation count. | Computed | int64 | ||
last_oscillation_time | Last oscillation time. | Computed | int64 | ||
max_failures_count | Maximum failures count. | Computed | int64 | ||
medium_window | Medium Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
last_oscillation_count | Last oscillation count. | Computed | int64 | ||
last_oscillation_time | Last oscillation time. | Computed | int64 | ||
max_failures_count | Maximum failures count. | Computed | int64 | ||
long_window | Long Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
last_oscillation_count | Last oscillation count. | Computed | int64 | ||
last_oscillation_time | Last oscillation time. | Computed | int64 | ||
max_failures_count | Maximum failures count. | Computed | int64 | sds_configuration_failure | SDS configuration failure windows. | Computed | list |
short_window | Short Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
last_oscillation_count | Last oscillation count. | Computed | int64 | ||
last_oscillation_time | Last oscillation time. | Computed | int64 | ||
max_failures_count | Maximum failures count. | Computed | int64 | ||
medium_window | Medium Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
last_oscillation_count | Last oscillation count. | Computed | int64 | ||
last_oscillation_time | Last oscillation time. | Computed | int64 | ||
max_failures_count | Maximum failures count. | Computed | int64 | ||
long_window | Long Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
last_oscillation_count | Last oscillation count. | Computed | int64 | ||
last_oscillation_time | Last oscillation time. | Computed | int64 | ||
max_failures_count | Maximum failures count. | Computed | int64 | ||
sds_receive_buffer_allocation_failures | SDS receive buffer allocation failure windows. | Computed | list | ||
short_window | Short Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
last_oscillation_count | Last oscillation count. | Computed | int64 | ||
last_oscillation_time | Last oscillation time. | Computed | int64 | ||
max_failures_count | Maximum failures count. | Computed | int64 | ||
medium_window | Medium Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
last_oscillation_count | Last oscillation count. | Computed | int64 | ||
last_oscillation_time | Last oscillation time. | Computed | int64 | ||
max_failures_count | Maximum failures count. | Computed | int64 | ||
long_window | Long Window Parameters. | Computed | list | ||
threshold | Threshold | Computed | int64 | ||
window_size_in_sec | Window Size in seconds. | Computed | int64 | ||
last_oscillation_count | Last oscillation count. | Computed | int64 | ||
last_oscillation_time | Last oscillation time. | Computed | int64 | ||
max_failures_count | Maximum failures count. | Computed | int64 | ||
certificate_info | Certificate Information. | Computed | list | ||
subject | Certificate subject. | Computed | string | ||
valid_from | The start date of the certificate validity. | Computed | string | ||
valid_to | The end date of the certificate validity. | Computed | string | ||
thumbprint | Certificate thumbprint.. | Computed | string | ||
valid_from_asn1_format | The start date of the Asn1 format. | Computed | string | ||
valid_to_asn1_format | The end date of the Asn1 format. | Computed | string | ||
raid_controllers | RAID controllers information. | Computed | list | ||
serial_number | Serial number. | Computed | string | ||
model_name | Model name. | Computed | string | ||
vendor_name | Vendor name. | Computed | string | ||
firmware_version | Firmware version. | Computed | string | ||
driver_version | Driver version. | Computed | string | ||
driver_name | Driver name. | Computed | string | ||
pci_address | PCI address. | Computed | string | ||
status | RAID status. | Computed | string | ||
battery_status | Battery status. | Computed | string | ||
links | Underlying REST API links. | Computed | List | ||
rel | Specifies the relationship with the SDS. | Computed | string | ||
href | Specifies the exact path to fetch the details. | Computed | string |
Examples
Get sds details by sds names and protection domain id
data "powerflex_sds" "example1" { protection_domain_id = "4eeb304600000000" sds_names = ["SDS_Test_Tf"] }
Get sds details by sds ids and protection domain id
data "powerflex_sds" "example2" { protection_domain_id = "4eeb304600000000" sds_ids = ["6ae199c500000007"] }
Get sds details by sds names and protection domain name
data "powerflex_sds" "example3" { protection_domain_name = "domain1" sds_names = ["SDS_Test_Tf"] }
Get sds details by sds id and protection domain name
data "powerflex_sds" "example4" { protection_domain_name = "domain1" sds_ids = ["6ae199c500000007"] }
Get all sds under a protection domain id
data "powerflex_sds" "example5" { protection_domain_id = "4eeb304600000000" }
Note
- protection_domain_id and protection_domain_name are mutually exclusive.
- sds_ids and sds_names are mutually exclusive.
- Either protection_domain_id or protection_domain_name must mentioned to fetch the details of an sds.
Storage Pool Datasource
Manage Storage Pool on Dell PowerFlex
Synopsis
Managing storage pool on PowerFlex storage system includes getting details of storage pool using id or name of storage pool
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|
protection_domain_id | Protection Domain ID. | Optional | string | ||
protection_domain_name | Protection Domain Name. | Optional | string | ||
storage_pool_ids | List of storage pool IDs. | Optional | list | ||
storage_pool_names | List of storage pool names. | Optional | list | ||
storage_pools | List of storage pools. | Computed | list | ||
id | Storage pool ID. | Computed | string | ||
name | Storage pool name. | Computed | string | ||
rebalance_io_priority_policy | Rebalance IO Priority Policy. | Computed | string | ||
rebuild_io_priority_policy | Rebuild IO Priority Policy. | Computed | string | ||
rebuild_io_priority_bw_limit_per_device_in_kbps | Rebuild Bandwidth Limit per Device. | Computed | int64 | ||
rebuild_io_priority_num_of_concurrent_ios_per_device | Number of Concurrent Rebuild IOPS per Device. | Computed | int64 | ||
rebalance_io_priority_num_of_concurrent_ios_per_device | Number of Concurrent Rebalance IOPS per Device. | Computed | int64 | ||
rebalance_io_priority_bw_limit_per_device_kbps | Rebalance Bandwidth Limit per Device. | Computed | int64 | ||
rebuild_io_priority_app_iops_per_device_threshold | Rebuild Application IOPS per Device Threshold. | Computed | int64 | ||
rebalance_io_priority_app_iops_per_device_threshold | Rebalance Application IOPS per Device Threshold. | Computed | int64 | ||
rebuild_io_priority_app_bw_per_device_threshold_kbps | Rebuild Application Bandwidth per Device Threshold. | Computed | int64 | ||
rebalance_io_priority_app_bw_per_device_threshold_kbps | Rebalance Application Bandwidth per Device Threshold. | Computed | int64 | ||
rebuild_io_priority_quiet_period_msec | Rebuild Quiet Period. | Computed | int64 | ||
rebalance_io_priority_quiet_period_msec | Rebalance Quiet Period. | Computed | int64 | ||
zero_padding_enabled | Zero Padding Enabled. | Computed | bool | ||
use_rm_cache | Use RAM Read Cache. | Computed | bool | ||
spare_percentage | Spare Percentage. | Computed | int64 | ||
rm_cache_write_handling_mode | RAM Read Cache Write Handling Mode. | Computed | string | ||
rebuild_enabled | Rebuild Enabled. | Computed | bool | ||
rebalance_enabled | Rebalance Enabled. | Computed | bool | ||
num_of_parallel_rebuild_rebalance_jobs_per_device | Number of Parallel Rebuild/Rebalance Jobs per Device. | Computed | int64 | ||
background_scanner_bw_limit_kbps | Background Scanner Bandwidth Limit. | Computed | int64 | ||
protected_maintenance_mode_io_priority_num_of_concurrent_ios_per_device | Number of Concurrent Protected Maintenance Mode IOPS per Device. | Computed | int64 | ||
data_layout | Data Layout. | Computed | string | ||
vtree_migration_io_priority_bw_limit_per_device_kbps | VTree Migration Bandwidth Limit per Device. | Computed | int64 | ||
vtree_migration_io_priority_policy | VTree Migration IO Priority Policy. | Computed | string | ||
address_space_usage | Address space usage. | Computed | string | ||
external_acceleration_type | External acceleration type. | Computed | string | ||
persistent_checksum_state | Persistent Checksum State. | Computed | string | ||
use_rf_cache | Use Read Flash Cache. | Computed | bool | ||
checksum_enabled | Checksum Enabled. | Computed | bool | ||
compression_method | Compression method. | Computed | string | ||
fragmentation_enabled | Fragmentation Enabled. | Computed | bool | ||
capacity_usage_state | Capacity usage state (normal/high/critical/full). | Computed | string | ||
capacity_usage_type | Usage state reason. | Computed | string | ||
address_space_usage_type | Address space usage reason. | Computed | string | ||
bg_scanner_compare_error_action | Scanner compare-error action. | Computed | string | ||
bg_scanner_read_error_action | Scanner read-error action. | Computed | string | ||
replication_capacity_max_ratio | Replication allowed capacity. | Computed | int64 | ||
persistent_checksum_enabled | Persistent checksum enabled. | Computed | bool | ||
persistent_checksum_builder_limit_kb | Persistent checksum builder limit. | Computed | int64 | ||
persistent_checksum_validate_on_read | Persistent checksum validation on read. | Computed | bool | ||
vtree_migration_io_priority_num_of_concurrent_ios_per_device | Number of concurrent VTree migration IOPS per device. | Computed | int64 | ||
protected_maintenance_mode_io_priority_policy | Protected maintenance mode IO priority policy. | Computed | string | ||
background_scanner_mode | Scanner mode. | Computed | string | ||
media_type | Media type. | Computed | string | ||
capacity_alert_high_threshold | Capacity alert high threshold. | Computed | int64 | ||
capacity_alert_critical_threshold | Capacity alert critical threshold. | Computed | int64 | ||
vtree_migration_io_priority_app_iops_per_device_threshold | VTree migration IO priority App IOPS per device threshold. | Computed | int64 | ||
vtree_migration_io_priority_app_bw_per_device_threshold_kbps | VTree migration IO priority App bandwidth per device threshold in Kbps. | Computed | int64 | ||
vtree_migration_io_priority_quiet_period_msec | VTree migration IO priority quiet period in Msec. | Computed | int64 | ||
fgl_accp_id | FGL ID. | Computed | string | ||
fgl_extra_capacity | FGL extra capacity. | Computed | int64 | ||
fgl_overprovisioning_factor | FGL overprovisioning factor. | Computed | int64 | ||
fgl_write_atomicity_size | FGL write atomicity size. | Computed | int64 | ||
fgl_nvdimm_write_cache_size_mb | FGL NVDIMM write cache size in Mb. | Computed | int64 | ||
fgl_nvdimm_metadata_amotization_x100 | FGL NVDIMM metadata amortization. | Computed | int64 | ||
fgl_perf_profile | FGL performance profile. | Computed | string | ||
protected_maintenance_mode_io_priority_bw_limit_per_device_kbps | Protected maintenance mode IO priority bandwidth limit per device in Kbps. | Computed | int64 | ||
protected_maintenance_mode_io_priority_app_iops_per_device_threshold | Protected maintenance mode IO priority app IOPS per device threshold. | Computed | int64 | ||
protected_maintenance_mode_io_priority_app_bw_per_device_threshold_kbps | Protected maintenance mode IO priority app bandwidth per device threshold in Kbps. | Computed | int64 | ||
protected_maintenance_mode_io_priority_quiet_period_msec | Protected maintenance mode IO priority quiet period in Msec. | Computed | int64 | ||
volumes | List of volumes associated with storage pool. | Computed | list | ||
id | Volume ID. | Computed | string | ||
name | Volume Name. | Computed | string | ||
sds | List of SDS associated with storage pool. | Computed | list | ||
id | SDS ID. | Computed | string | ||
name | SDS Name. | Computed | string | links | Underlying REST API links. | Computed | List |
rel | Specifies the relationship with the storage pool. | Computed | string | ||
href | Specifies the exact path to fetch the details. | Computed | string |
Examples
Get storage pool details by storage pool names and protection domain id
data "powerflex_storagepool" "example1" { protection_domain_id = "4eeb304600000000" storage_pool_names = ["pool2", "pool1"] }
Get storage pool details by storage pool ids and protection domain id
data "powerflex_storagepool" "example2" { protection_domain_id = "4eeb304600000000" storage_pool_ids = ["7630a24600000000", "7630a24800000002"] }
Get storage pool details by storage pool names and protection domain name
data "powerflex_storagepool" "example3" { protection_domain_name = "domain1" storage_pool_names = ["pool2", "pool1"] }
Get storage pool details by storage pool id and protection domain name
data "powerflex_storagepool" "example4" { protection_domain_name = "domain1" storage_pool_ids = ["7630a24600000000", "7630a24800000002"] }
Get all storage pools under a protection domain id
data "powerflex_storagepool" "example5" { protection_domain_name = "domain1" }
Note
- protection_domain_id and protection_domain_name are mutually exclusive.
- storage_pool_ids and storage_pool_names are mutually exclusive.
- Either protection_domain_id or protection_domain_name must be mentioned to fetch the details of an sds.
Snapshot Policy Datasource
Manage Snapshot Policy on Dell PowerFlex
Synopsis
Managing snapshot policy on PowerFlex storage system includes getting details of snapshot policy using id or name of snapshot policy
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|
id | ID of the snapshot policy instance. | Optional And Computed | string | ||
name | Name of the snapshot policy. | Optional | string | ||
snapshotpolicies | List of snapshot policies. | Computed | list | ||
id | ID of the snapshot policy instance. | Optional And Computed | string | ||
name | Name of the snapshot policy. | Optional | string | ||
snapshot_policy_state | Specifies the current state of the snapshot policy. | Computed | string | ||
auto_snapshot_creation_cadence_in_min | Auto snapshot creation cadence in min. | Computed | int64 | ||
max_vtree_auto_snapshots | Max vtree auto snapshots. | Computed | int64 | ||
num_of_source_volumes | Number of source Volumes. | Computed | int64 | ||
num_of_expired_but_locked_snapshots | Number of expired but locked snapshots. | Computed | int64 | ||
num_of_creation_failures | Number of creation failures. | Computed | int64 | ||
num_of_retained_snapshots_per_level | Number of retained snapshots per level. | Computed | list of int64 | ||
snapshot_access_mode | Snapshot Access Mode. | Computed | string | ||
secure_snapshots | Secure snapshots. | Computed | bool | ||
time_of_last_auto_snapshot | Time of last auto snapshot. | Computed | int64 | ||
next_auto_snapshot_creation_time | Next auto snapshot creation time. | Computed | int64 | ||
time_of_last_auto_snapshot_creation_failure | Time of last auto snapshot creation failure. | Computed | int64 | ||
last_auto_snapshot_creation_failure_reason | Last auto snapshot creation failure reason. | Computed | string | ||
last_auto_snapshot_failure_in_first_level | Last auto snapshot failure in first level. | Computed | bool | ||
num_of_auto_snapshots | Number of auto snapshots. | Computed | int64 | ||
num_of_locked_snapshots | Number of locked snapshots. | Computed | int64 | ||
system_id | System Identifier. | Computed | string | links | Underlying REST API links. | Computed | list |
rel | Specifies the relationship with the snapshot policy. | Computed | string | ||
href | Specifies the exact path to fetch the details. | Computed | string |
Examples
Get snapshot policy details by snapshot policy id
data "powerflex_snapshotpolicy" "sp1" { id = "15ad99b900000001" }
Get snapshot policy details by snapshot policy name
data "powerflex_snapshotpolicy" "sp2" { name = "sample_snap_policy_1" }
Get all the snapshot policies
data "powerflex_snapshotpolicy" "sp3" { }
Note
- id and name are mutually exclusive.
- id and name cannot be empty
Volume Datasource
Manage Volume on Dell PowerFlex
Synopsis
Managing volume on PowerFlex storage system includes getting details of volume using id or name of volume
List Of Parameters
Parameter Name
|
Description
|
Required/Optional/Computed
|
Type
|
Default Value
|
Choices
|
---|---|---|---|---|---|
id | ID of the volume instance. | Optional And Computed | string | ||
name | Name of the volume. | Optional | string | ||
storage_pool_id | ID of the storage pool instance. | Optional | string | ||
storage_pool_name | Name of the storage pool. | Optional | string | ||
volumes | List of volumes. | Computed | list | ||
id | ID of the volume instance. | Computed | string | ||
name | Name of the volume. | Computed | string | ||
creation_time | Specifies the time of creation. | Computed | int64 | ||
size_in_kb | Size of the volume in KB. | Computed | int64 | ||
ancestor_volume_id | The volume id to which the snapshot is linked to. | Computed | string | ||
vtree_id | Unique identifier of the VTree | Computed | string | ||
consistency_group_id | The unique id for the consistency group. | Computed | string | ||
volume_type | Specifies the type of that volume. | Computed | string | ||
use_rm_cache | Enable rm cache. | Computed | bool | ||
storage_pool_id | Specifies the unique identifier of the storage pool. | Computed | string | ||
data_layout | Specifies the layout for the data. | Computed | string | ||
not_genuine_snapshot | Specifies if not genuine snapshot. | Computed | bool | ||
access_mode_limit | Specifies the access mode limit. | Computed | string | ||
secure_snapshot_exp_time | Specifies the secure snapshot expiry time. | Computed | int64 | ||
managed_by | Specifies by whom it's managed by. | Computed | string | ||
locked_auto_snapshot | Specifies if it's a locked auto snapshot. | Computed | bool | ||
locked_auto_snapshot_marked_for_removal | Specifies if it's a locked auto snapshot marked for removal. | Computed | bool | ||
compression_method | Specifies the compression method. | Computed | string | ||
time_stamp_is_accurate | Specifies if the time stamp is accurate. | Computed | bool | ||
original_expiry_time | Specifies the original expiry time. | Computed | int64 | ||
volume_replication_state | Specifies the volume replication state. | Computed | string | ||
replication_journal_volume | Specifies the replication journal volume. | Computed | bool | ||
replication_time_stamp | Specifies the replication time stamp. | Computed | int64 | ||
mapped_sdc_info | Specifies the list of sdc's mapped to a volume. | Computed | List | ||
sdc_id | Unique identifier for sdc. | Computed | string | ||
sdc_ip | Ip of the sdc. | Computed | string | ||
limit_iops | Specifies the IOPS limits. | Computed | int64 | ||
limit_bw_in_mbps | Specifies the bandwidth limits in Mbps. | Computed | int64 | ||
sdc_name | Specifies the name of the sdc. | Computed | string | ||
access_mode | Specifies the access mode. | Computed | string | ||
is_direct_buffer_mapping | Specifies if it is direct buffer mapping. | Computed | bool | ||
links | Underlying REST API links. | Computed | list | ||
rel | Specifies the relationship with the volume. | Computed | string | ||
href | Specifies the exact path to fetch the details. | Computed | string |
Examples
Get volume details by volume id
data "powerflex_volume" "all" { id = "457752ff000000c7" }
Get volume details by volume name
data "powerflex_volume" "all" { name = "cicd-dbc5a5909d" }
Get all the volumes
data "powerflex_volume" "all" { }
Get all the volumes under a storage pool using storage pool id
data "powerflex_volume" "all" { storage_pool_id = "7630a24600000000" }
Get all the volumes under a storage pool using storage pool name
data "powerflex_volume" "all" { storage_pool_name = "pool1" }
Note
- id , name , storage_pool_id, storage_pool_name are mutually exclusive and cannot be empty.