Since CloudStack 4.20.0.0, the Dell EMC PowerFlex storage plugin has gained several improvements, including managing SDC connections through MDM IP addresses instead of service restarts, new configuration parameters for safer and more consistent SDC and MDM connection handling, a new agent wait-time property for SDC service operations, and support for collecting PowerFlex/ScaleIO volume metrics on KVM Hosts. These changes make SDC connectivity more predictable and improve reliability during storage operations.
CloudStack has continued to expand the capabilities of its Dell EMC PowerFlex storage plugin across the 4.20.x and 4.21.x release cycles. These updates strengthen reliability and bring more predictable behaviour when handling SDC (Storage Data Client) connections, MDM (Meta Data Manager) validation, and volume monitoring.
This article summarises the technical improvements introduced since version 4.20.0.0 and explains how they enhance day-to-day operations for environments running PowerFlex with KVM Hosts.
SDC Client Connections Managed Through MDM IP Addresses
Available since: 4.21.0.0
Earlier versions controlled PowerFlex SDC connections by starting and stopping the scini service on the KVM Host. Since 4.21.0.0, CloudStack now manages these connections directly through the MDM IP addresses.
When the setting powerflex.connect.on.demand is enabled:
- Auto-connect adds the PowerFlex MDM IPs to the SDC on the Host.
- Auto-disconnect removes those MDM IPs from the SDC configuration on the Host. SDC service restart is not required only when the option ‘–remove_mdm’ is supported in drv_cfg cmd.
This avoids unnecessary service restarts and brings a more granular, consistent process for managing SDC connectivity. Hosts update their MDM list dynamically, improving stability during volume attach/detach operations on the storage pool.
New Configuration Parameters for SDC Client Connection Management
Available since: 4.21.0.0
Three new Zone-level configuration settings improve how CloudStack validates and manages SDC connectivity:
powerflex.mdm.change.apply.wait
- Timeout (default: 1000 ms) added after automatic MDM addition and before/after automatic MDM removal on the KVM host.
- Reduces race conditions and ensures the Host has finished updating internal SDC metadata.
powerflex.block.sdc.unprepare
- Boolean flag (default: false).
- When enabled, CloudStack blocks SDC service scini restart if the Host still has attached volumes and the MDM removal requires a scini restart (because drv_cfg lacks –remove_mdm option support).
- Adds validation to prevent Host disconnect from the Storage Pool when volumes are still in use.
powerflex.mdm.validate.on.connect
- Boolean flag (default: false).
- When enabled, CloudStack validates MDM entries by comparing:
- MDM configuration file on the host (usually, /etc/emc/scaleio/drv_cfg.txt)
- Output from ‘drv_cfg –query_mdms’ cmd
- MDM addresses supplied during pool registration
- Prevents misconfiguration and ensures the Host’s SDC configuration is consistent before connecting the Storage Pool.
New Agent Property Controlling Wait Time After SDC Service Operations
Available since: 4.21.0.0 and 4.20.2
A new agent property, powerflex.sdc.service.wait, defines how long (in seconds) CloudStack should wait after starting, restarting, or stopping the SDC service (scini).
This avoids cases where CloudStack attempts to update configuration or run drv_cfg while the service is still initialising.
Metrics Support for PowerFlex / ScaleIO Volumes
Available since: 4.20.2
CloudStack now collects metrics for PowerFlex/ScaleIO volumes attached to Instances running on KVM Hosts.
This enables monitoring systems to track storage behaviour more accurately, improving visibility for operators.
Conclusion
Since 4.20.0.0, Apache CloudStack has introduced a series of targeted improvements to the Dell EMC PowerFlex plugin. These updates offer more reliable handling of SDC client connections, stronger validation of MDM configurations, smoother service operations, and expanded observability through volume metrics.
The changes reduce operational friction and help administrators maintain consistency across PowerFlex-backed Storage Pools. As part of the continued evolution of the storage integration layer, these enhancements ensure CloudStack remains dependable for environments that rely on PowerFlex for performance and scale.
Suresh Anaparti has over 15 years of end-to-end product development experience in Cloud Infrastructure, Telecom and Geospatial technologies. He is an active Apache CloudStack committer. He has been working on CloudStack development for more than 5 years.
You can learn more about Suresh and his background by reading his Meet The Team blog.