Search Knowledge Base by Keyword

Dell Powerflex

< Back

Overview

Dell PowerFlex is a software-defined block storage platform, previously sold as VxFlex OS and before that as ScaleIO. Instead of a purpose-built array it pools the local drives of a cluster of standard servers into shared capacity. That capacity is carved into Storage Pools, grouped for fault isolation into Protection Domains, and presented to hosts as volumes through the SDC kernel driver that runs on each consuming machine. The whole cluster is managed from the PowerFlex Management Platform, or PFMP.

The ReadyWorks connector talks to the PFMP REST API. It posts the username and password to the login endpoint, reads the bearer token out of the access_token node in the response, and then sends that token on every subsequent call. Five shipped jobs walk the object model from the top down and write each level into its own staging table in the estate.

The value of that shape is the chain it gives you. A volume record names the storage pool it came from, a pool names its protection domain, and the SDC records say which client machines have volumes mapped to them. Reconciled against the server and application records already in the fabric, that tells you which workloads sit on which slice of PowerFlex capacity. Before a data centre exit or a storage refresh, that is the difference between knowing a host uses shared storage and knowing exactly which pool and protection domain it depends on.

The connector is inbound only. It reads from PFMP and writes to ReadyWorks staging. No outbound job fields are exposed and no outbound templates ship, so nothing is written back to PowerFlex.

NOTE: All five templates ship enabled on a Daily schedule, and the connection ships with placeholder defaults for the PFMP address. Edit the connection fully before saving, or you will schedule five jobs that call a host name that does not resolve.

Connector Properties

Property Value
Identifier POWERFLEX
Name Dell PowerFlex
Description Dell PowerFlex is a software-defined block storage platform (formerly known as VxFlex/ScaleIO). Volumes are presented to clients via the SDC kernel driver.
Job Types Inbound Only
Order 170
Enabled Yes
Locked Yes
Block Update No
Single Authentication Yes
Windows Only No
Connector Version 2026-05-17
Hooks None
Additional Job Fields None
Image

Authentication Methods

One authentication method is shipped, matching the PFMP login flow.

Method Identifier Base Method Script Order Enabled Config Fields
Dell PowerFlex: User/Pass to Bearer Token POWERFLEX_8a3b1c5e92 POWERFLEX_8a3b1c5e92 json_rest_api.php 10 Yes 7

Method 1: Dell PowerFlex: User/Pass to Bearer Token (POWERFLEX_8a3b1c5e92)

Username and Password to PFMP Bearer Token

Posts the username and password as a JSON body to the PFMP login endpoint, extracts the bearer token from the access_token node in the response, and attaches it as Authorization: Bearer on every data call. Both the endpoint and the token node are required fields with working defaults, so the only values you normally supply are the PFMP address and a PFMP service account. Use an account with read access to the system, protection domain, storage pool, SDC and volume objects.

Connection Configuration Fields (7)

Order Label Type Required Default Max Len Tooltip
10 API Domain text Yes https://PFMP_FQDN_REPLACE 255 Enter the PowerFlex Management Platform (PFMP) URL
30 Server Temporary Working Path text Yes storage/etl5 255 Enter path where temporary files are stored during data processing (exclude starting and ending backslash)
40 Username text No 1024 PFMP username
50 Password password No 64000 PFMP password
190 Authentication Token End Point text Yes https://PFMP_FQDN_REPLACE/rest/auth/login 500 PowerFlex Management Platform login endpoint
200 Authentication Token JSON Node text Yes access_token 255 JSON node containing the access token in the auth response
250 Additional Job Fields fields_list No Enter list of additional fields to add to staging data for all jobs

Authentication Configuration

Headers sent on the authentication call:

Header Value Base64
Content-Type: application/json Off

Headers sent on the data calls:

Header Value Base64
Content-Type: application/json Off
Authorization: Bearer %auth_data% Off

Authentication request body:

Key Value
username %user_name%
password %user_pass%

cURL options:

Option Authentication Call Data Calls
USERAGENT Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0 Same
SSL_VERIFYHOST false Same
SSL_VERIFYPEER false Same
RETURNTRANSFER true Same
FOLLOWLOCATION true Same
FAILONERROR true Same

NOTE: This connector authenticates once per run rather than on every pagination and enumeration loop, which is the correct behaviour for a token-fetch method. The setting is fixed at the connector level and is not offered on the connection form.

NOTE: The Authentication Token End Point is an absolute URL that repeats the PFMP host name, so the host appears in two fields on this form. Change both together.

Inbound Job Fields Enabled (44)

The inbound job form carries the full generic REST field set, including pagination, the three enumeration levels and the raw JSON body.

Order Label Type Required Default Tooltip
10 Job Description text Yes Enter description of the Job
20 Job Schedule lookup Yes Daily Select frequency Job should run
30 Enabled radio Yes Yes Choose if Job is enabled
40 Use Unparsed Data radio No No Choose if you wish to parse the incoming data, or leave it in its raw format
50 Log Raw API Calls radio Yes No Choose if raw API calls are logged
70 Destination Table text Yes Enter name of the destination table
80 Data Identity text No Enter identity of the Job
120 Append New Data to Existing Tables radio No No Choose if new data will append to the existing destination table, or will create a new destination table
130 Fields to Index text No Enter fields to index
170 Method Type select Yes GET Select method type of the Job
190 API End Point text No Enter API end point of the Job
200 API Data Parameters fields_list No Enter API data parameters of the Job
210 Body Data Sending Method select Yes JSON Encoded Data Select method for sending the body data
220 Raw JSON Body Data textarea No Enter the raw JSON body to send. Do not use body selections in the API Parameters if this is used.
230 API Return Data Node text No Enter API return data node of the Job
250 Pagination Type select No None Select request paging type of the Job
270 API Pagination Node text No Enter API pagination node of the Job
280 Pagination Offset Start text No Enter request paging offset start of the Job
290 Pagination Limit text No Enter request pagination limit of the Job
300 Pagination Termination Node text No Enter request paging termination node and value of the Job
310 Maximum API Calls text No Enter maximum number of API calls for the Job to make
320 Enumeration 1 Type select No None Enter enumeration level 1 type
330 Enumeration 1 ETL Job lookup No Select ETL job for the enumeration values
340 Enumeration 1 Data Type data_type No Select the data type and fields for enumeration 1 values
350 Enumeration 1 Keys End Point text No Enter enumeration 1 keys end point of the Job
360 Enumeration 1 Node text No Enter enumeration 1 node of the Job
370 Enumeration 1 Fields fields_list No Enter enumeration 1 fields of the Job
380 Enumeration 2 Type select No None Enter enumeration level 2 type
390 Enumeration 2 ETL Job lookup No Select ETL job for the enumeration 2 values
400 Enumeration 2 Data Type data_type No Select the data type and fields for enumeration 2 values
410 Enumeration 2 Keys End Point text No Enter enumeration 2 keys end point of the Job
420 Enumeration 2 Node text No Enter enumeration 2 node of the Job
430 Enumeration 2 Fields fields_list No Enter enumeration 2 fields of the Job
440 Enumeration 3 Type select No None Enter enumeration level 3 type
450 Enumeration 3 ETL Job lookup No Select ETL job for the enumeration 3 values
460 Enumeration 3 Data Type data_type No Select the data type and fields for enumeration 3 values
470 Enumeration 3 Keys End Point text No Enter enumeration 3 keys end point of the Job
480 Enumeration 3 Node text No Enter enumeration 3 node of the Job
490 Enumeration 3 Fields fields_list No Enter enumeration 3 fields of the Job
500 Pause Enumeration text No Enter values for pausing enumeration every X calls for Y seconds
510 Kill Enumeration on Error radio No No Choose to stop the enumeration loop on an error or continue processing the loop
520 Additional Fields fields_list No Enter list of additional fields to add to staging data
550 Retry Pause text No Enter values for retrying a failed API connection. Retry X times, waiting Y seconds between each try, with an API timeout of Z seconds.
560 Order text Yes Enter order of the Job

NOTE: Several labels and tooltips carry unedited text from the shared templates. Enumaration 1 Node is misspelled and the tooltip on Enumeration 1 Keys End Point refers to enumeration 2. The fields behave as their level numbers say.

Inbound Job Templates (5)

Five inbound templates ship, all enabled on a Daily schedule. They walk the PowerFlex object model from the cluster down to the individual volume, each writing to its own staging table.

# Job Description Destination Table API End Point Enabled What It Pulls
1 GET System powerflex_system /api/types/System/instances Yes The cluster-level record from /api/types/System/instances: the PowerFlex system’s identity, version, overall capacity and configuration. Usually one row, and the anchor everything else hangs off.
2 GET ProtectionDomain powerflex_protection_domain /api/types/ProtectionDomain/instances Yes The fault-isolation groupings from /api/types/ProtectionDomain/instances: each protection domain’s name, identifier, state and the system it belongs to. This is the boundary within which a rebuild is contained.
3 GET StoragePool powerflex_storage_pool /api/types/StoragePool/instances Yes The capacity tiers from /api/types/StoragePool/instances: each pool’s name, identifier, parent protection domain, data layout and capacity and utilisation figures. This is where you see how much of the estate’s block capacity is actually consumed.
4 GET SDC powerflex_sdc /api/types/Sdc/instances Yes The storage data clients from /api/types/Sdc/instances: one row per host running the SDC kernel driver, with its identifier, IP address, connection state and driver version. This is the join back to the server records in the estate.
5 GET Volume powerflex_volume /api/types/Volume/instances Yes The provisioned volumes from /api/types/Volume/instances: each volume’s name, identifier, size, type and the storage pool it was carved from. Typically the largest collection of the five.

Job Template Configuration

Settings Common to All Five Templates

Setting Value
Enabled Yes
Job Schedule Daily (15 1 * * *)
Allow Empty Table Yes
Append Files to Same Destination Table No
Append New Data to Existing Tables No
Use Unparsed Data No
Convert UUID-Keyed Objects to Rows No
Ignore XML Attributes No
Log Raw API Calls No
Method Type GET
Body Data Sending Method JSON Encoded Data

Settings That Vary by Template

Template ID Order Destination Table Data Identity API End Point
GET System 152 40000 powerflex_system powerflex_system /api/types/System/instances
GET ProtectionDomain 153 40001 powerflex_protection_domain powerflex_protection_domain /api/types/ProtectionDomain/instances
GET StoragePool 154 40002 powerflex_storage_pool powerflex_storage_pool /api/types/StoragePool/instances
GET SDC 155 40003 powerflex_sdc powerflex_sdc /api/types/Sdc/instances
GET Volume 156 40004 powerflex_volume powerflex_volume /api/types/Volume/instances

NOTE: None of the five sets Pagination Type, so each job takes whatever a single call returns. Review this on GET Volume and GET SDC before the first scheduled run.

NOTE: There is no template for the SDS storage data servers or for the underlying devices, so the server-side contribution of physical drives to each pool is not retrieved. Copy the connector’s job form and add one if you need it.

Outbound Job Templates (0)

This connector is inbound only, so no outbound templates are shipped and the outbound job form is not available.