Close Menu
DPC Virtual Tips
    Read More

    How to Investigate TCP Retransmissions on Linux

    August 11, 2026

    Slurm Node Is DRAINED: How to Find the Exact Reason

    August 10, 2026

    Why Is My Slurm Job Pending? How to Decode Every Common Reason

    August 9, 2026
    • Home
    • About Us
    • Contact
    • Cookie Policy
    • Comment Policy
    • Privacy Policy
    • Terms of Use
    • Disclaimer
    Tuesday, August 11
    DPC Virtual Tips
    • Home
    • Operating Systems
    • PowerFlex
    • HPC
    • Virtualization
    • About the Author
    • About Us
    • Contact
    DPC Virtual Tips
    Home » Dell PowerFlex SCLI Basics
    PowerFlex

    Dell PowerFlex SCLI Basics

    DaniloBy DaniloJanuary 13, 2025Updated:July 31, 2026No Comments6 Mins Read
    Facebook Twitter Pinterest LinkedIn Tumblr Email
    PowerFlex SCLI commands
    Share
    Facebook Twitter LinkedIn Pinterest Email

    PowerFlex SCLI Basics show some useful commands for managing a PowerFlex cluster by command line.

    PowerFlex CLI (SCLI) is installed as part of the MDM component. It can be found in the following operational systems:

    Before using most SCLI commands, you must log in using the following command (for the 4.5.2 version, for example):

    As we can see in the following picture, the “scli –login“ command has worked; however, since this MDM node is not the “Primary MDM node,” all subsequent commands fail:

    As showed you before, our Primary MDM is the “SDS03”. To switch the Primary MDM ownership to another MDM, we can execute the following command (in this example, we are switching the Primary MDM ownership from SDS03 (192.168.255.73) to SDS01 (192.168.255.71)):

    scli --login --management_system_ip pfmp.lab.local --username admin
    scli --switch_mdm_ownership --new_primary_mdm_ip 192.168.255.71

    As shown in the above picture, we have switched the Primary MDM ownership from SDS03 to SDS01. We have tried to execute a command from SDS03, and we have received an error since this node is not the Primary MDM node anymore 😉

    The best approach is to log in to SDS01 and run the commands from there!

    Querying MDM Cluster Details

    To query the MDM Cluster details:

    scli --query_cluster

    This command helps understand the MDM cluster topology (whether a 3-node or 5-node cluster). Moreover, we can see the following details:

    — Virtual IP addresses and their associated interfaces (if in use);
    — The Primary MDM node;
    — The Secondary MDM node;
    — Tie-Breakers nodes;
    — Standby MDMs;
    — All IP addresses for each MDM node.

    Querying Storage Data Server (SDS) Nodes

    To query all Storage Data Server (SDS) nodes:

    scli --query_all_sds

    As shown in the above picture, eleven (11) SDS nodes exist, divided into two different Protection Domains (PD-0 and PD-1).

    Querying Protection Domain Details

    To query details of each Protection Domain:

    scli --query_protection_domain --protection_domain_name PD-0
    scli --query_protection_domain --protection_domain_name PD-1

    Querying Storage Pool Details

    To query details of each Storage Pool:

    scli --query_storage_pool --protection_domain_name PD-0 --storage_pool_name SP-SW_SSD-0
    scli --query_storage_pool --protection_domain_name PD-1 --storage_pool_name SP-SW_SSD-1

    Querying Storage Data Client (SDC) Nodes

    To query all Storage Data Client (SDS) nodes:

    scli --query_all_sdc

    As shown in the above picture, fifteen (15) SDC nodes exist. The SDC ID, SDC Name, Ips, Connected GUID, OS Type, Version, and other details can be seen.

    Querying Details of a Specific Storage Data Server (SDS) Nodes

    To query details of a specific Storage Data Server (SDS) node:

    scli --query_sds --sds_name SDS01

    Querying Details of a Specific Disk Device on SDS Node

    To query details of a specific disk device for a Storage Data Server (SDS) node:

    scli --query_sds_device_info --sds_name SDS01 --device_path /dev/sdc

    Grabbing All Disk Devices of a Specific SDS

    As we know, each SDS node has local disk devices that are used to create a storage pool. If you need to get details of all disk devices of a specific SDS node, you can use the following command line – In this example, the SDS name is “SDS01” (replace it with your SDS name):

    scli --query_sds_device_info --sds_name SDS01 --all_devices | grep -i "Device ID:"

    As shown, this SDS node has four disk devices:

    Grabbing All Disk Devices on All SDS

    Otherwise, if you need to get all disk devices for all SDS nodes present on the PowerFlex environment, you can use the following command:

    scli --query_all_sds | grep "SDS ID" | awk -F':' '{print $3}' | sed 's/State//g' | sed 's/^ //' | while read sds; do
        echo "======================================================================="
    	echo "SDS Name: $sds"
        scli --query_sds_device_info --sds_name "$sds" --all_devices | egrep "Device ID:|Device State:|Aggregated State:"
        echo ""  # Adds a blank line for separation
    done

    This command has an enormous output, so it was cut (we are showing only the first entries).
    As shown, for each disk device, we can see its details such as device ID, device name, device path, and the device state – This command can be helpful to perform a disk device health check in a PowerFlex environment, for instance:

    Getting the SDS Connection Status

    Each SDS node has the “sds” daemon running on it. So, based on it, we can check the SDS connection status if the following command:

    scli --query_all_sds | grep "SDS ID:" | awk -F':' '{print $3, $4}' | sed 's/State //g' | awk '{print $1, "-", $2}' | sed 's/.$//'

    As shown, all SDS nodes are “Connected”:

    In case of problems with some SDS nodes (some network issues or something related that cause a network disconnection), we can see a different status than “Connected”. As shown, the SDS node “SDS05” is “Disconnected”:

    You can access the SDS as disconnected and perform some troubleshooting (e.g., checking the status of the SDS daemon and network connectivity).

    Checking SDS Maintenance Mode

    We can use the following command to check if there are any SDS nodes in maintenance mode:

    scli --query_all_sds | grep "SDS ID:" | grep "IN_MAINTENANCE" | awk -F' ' '{print $5 " - " $13}'

    If there is a node in maintenance mode, we will see it in the command output:

    Getting the SDC Connection Status

    In the same way as SDS, each SDC establishes a connection with the MDM cluster. So, we can see their connection status. We can use the following command:

    scli --query_all_sdc | grep "SDC ID:" | awk -F" " '{print $5 " - Status: " $9}'

    In the first output column, we can see the SDC name, followed by its status (Connected or Disconnected):

    Grabbing all PowerFlex Volumes

    To grab all volumes in the PowerFlex environment:

    scli --query_all_volumes

    We can see details of each PowerFlex Volume. So, if you need to get the creation time of all Volumes, the following command can be used:

    scli --query_all_volumes | grep "Volume ID:" | awk -F' ' '{print $5}' | while read volume; do
    	echo "================================================"
        echo "Volume Name: $volume"
        scli --query_volume --volume_name $volume | egrep "Creation time:"
        echo ""  # Adds a blank line for separation
    done

    Since the output was enormous, it was cut:

    Grabbing Current IOPS for Each PowerFlex Volume

    The following command will get the read-and-write IOPS details for all PowerFlex Volumes:

    scli --query_all_volumes | grep "Volume ID:" | awk -F' ' '{print $5}' | while read volume; do
    	echo "================================================"
        echo "Volume Name: $volume"
    	echo "Timestamp:" `date`
        scli --query_volume --volume_name $volume | egrep "Reads:|Writes:"
        echo ""  # Adds a blank line for separation
    done

    Grabbing the Mapping Details for Each PowerFlex Volume

    After creating a volume, we must map it to an SDC to use it effectively. The following command lists all Volumes and which SDCs are using it:

    scli --query_all_volumes | grep "Volume ID:" | awk -F' ' '{print $5}' | while read volume; do
    	echo "================================================"
        echo "Volume Name: $volume"
        scli --query_volume --volume_name $volume | egrep "Mapping:|Host ID:"
        echo ""  # Adds a blank line for separation
    done

    To Wrapping This Up

    PowerFlex CLI (SCLI) is an essential tool every PowerFlex Administrator must know.
    We showed some examples of using. However, there are many possibilities with this tool. I highly recommended to check the CLI reference to see it:

    https://dl.dell.com/content/manual32133496-dell-powerflex-4-5-x-cli-reference-guide.pdf?language=en-us

    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
    Previous ArticleWorking with Fault Sets on PowerFlex
    Next Article Creating an SMB File Server with PowerFlex
    Danilo

    Infrastructure Engineer with experience in Virtualization, Linux, Windows Server and learning automation using Python. DPC Virtual Tips was created to share practical tutorials, lab experiences and troubleshooting guides focused on enterprise infrastructure technologies.

    Related Posts

    An Introduction to PowerFlex REST API Operations

    February 27, 2025

    How to Switch the MDM Cluster Mode

    February 26, 2025

    Shutting Down the PowerFlex Manager Cluster

    February 17, 2025

    Comments are closed.

    Search
    Categories
    • HPC (10)
    • Operating Systems (83)
    • PowerFlex (22)
    • Virtualization (129)
    Read More
    Operating Systems

    How to Investigate TCP Retransmissions on Linux

    By DaniloAugust 11, 20260
    HPC

    Slurm Node Is DRAINED: How to Find the Exact Reason

    By DaniloAugust 10, 20260
    HPC

    Why Is My Slurm Job Pending? How to Decode Every Common Reason

    By DaniloAugust 9, 20260
    Operating Systems

    Linux Process Resource Usage: How to Find Heavy Processes

    By DaniloAugust 6, 20260
    HPC

    Lustre Filesystem Commands: A Practical Admin Guide

    By DaniloAugust 5, 20260
    Latest Posts

    How to Investigate TCP Retransmissions on Linux

    August 11, 2026

    Slurm Node Is DRAINED: How to Find the Exact Reason

    August 10, 2026

    Why Is My Slurm Job Pending? How to Decode Every Common Reason

    August 9, 2026
    Images from Gallery
    hpc main commands
    linux commands
    install rock linux
    lustre fs
    shell scripting
    vSAN Trace Files
    Categories
    • HPC
    • Operating Systems
    • PowerFlex
    • Virtualization
    • Home
    • About Us
    • Contact
    • Cookie Policy
    • Comment Policy
    • Privacy Policy
    • Terms of Use
    • Disclaimer
    Copyright © 2026, DPC Virtual Tips. All rights reserved.

    Type above and press Enter to search. Press Esc to cancel.

    We use cookies to ensure your best experience on our website. If you continue using our website, we'll assume you agree to our cookie policy