Dell - Storage Quotas
Overview
The Dell Storage Quotas plugin connects to Dell PowerScale (formerly Isilon) storage clusters and enriches your Diskover indices with quota metadata. This integration brings storage quota visibility directly into the Diskover interface, eliminating the need to switch between management tools when investigating storage consumption.
When you browse directories in Diskover, you'll see quota thresholds, current usage, and enforcement status right alongside your file metadata. This makes it easy to identify directories approaching their limits, track how different users and groups consume shared storage, and generate compliance reports that combine quota data with Diskover's powerful search and analytics capabilities.
The plugin supports all PowerScale quota types including directory quotas, user quotas, group quotas, and default user/group quotas.
Use Cases
Storage Quota Visibility — View quota thresholds (soft, hard, advisory) and current usage directly in the Diskover web UI when browsing directories. This eliminates the need to access the PowerScale management interface for routine quota checks.
Capacity Planning and Monitoring — Identify directories with high quota utilization to proactively manage storage capacity before limits are reached. Combine quota data with Diskover's analytics to understand storage trends.
Identifying Directories Approaching Quota Limits — Search for directories where usage is approaching configured thresholds to take preventive action before users encounter write failures.
Compliance and Governance Reporting — Generate reports on quota allocations and usage across organizational units by combining quota data with Diskover's reporting capabilities.
Multi-Persona Quota Tracking — Track user-specific and group-specific quotas on shared directories, understanding how different personas contribute to overall storage consumption.
Sample data from a Dell - Storage Quotas execution:
Here we can see the entire Dell Quotas metadata set!
Installation
Prerequisites
Before installing the Dell Storage Quotas plugin, ensure you have:
Component |
Requirement |
|---|---|
Python |
3.9 or higher |
Diskover |
Core installation with plugin support |
Elasticsearch |
7.x or 8.x (as supported by Diskover) |
Dell PowerScale Cluster |
Running OneFS with REST API enabled |
Network Connectivity |
HTTPS access to PowerScale (default port 8080) |
API Credentials |
PowerScale user account with |
Installation Steps
The Dell Storage Quotas plugin is included with Diskover Professional Edition and higher. The plugin files are located in the post-index plugins directory.
Linux:
/opt/diskover/plugins_postindex/diskover_dell_quotas/
Windows:
C:\Program Files\Diskover\plugins_postindex\diskover_dell_quotas\
To verify the installation, check that the plugin directory contains these files:
diskover_dell_quotas.py— Main plugin scriptREADME.md— Plugin documentationisilib/— PowerScale API library
Linux verification:
ls -la /opt/diskover/plugins_postindex/diskover_dell_quotas/
Windows verification:
dir "C:\Program Files\Diskover\plugins_postindex\diskover_dell_quotas\"
Configuring the Web UI to Display Quota Data
Important: To view quota information in the Diskover web interface, you must add the quota field to your Extra Fields configuration.
Navigate to Web > General Settings and add the following to the EXTRA_FIELDS configuration:
{"Dell Quota Info": "dell_quotas"}
This configuration displays all quota details (thresholds, usage, paths, personas) in the "Extra fields" section when viewing a directory in the file browser.
Configuration
Configuration is managed through the Diskover Admin Panel. Navigate to Plugins → Post Index → Dell Quotas to access the settings.
Sample Configuraiton in Diskover Admin:
Here is the beginning of our sample configuration There are many other configuraitons for the Dell Quotas plugin - covered in detail below!
Configuration Parameters
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
string |
|
Dell PowerScale API hostname or IP address |
|
integer |
|
Dell PowerScale API port (HTTPS) |
|
string |
|
PowerScale API username |
|
secret |
(empty) |
PowerScale API password |
|
boolean |
|
Verify SSL certificates when connecting to PowerScale |
|
list |
(see below) |
Maps Diskover index paths to PowerScale paths |
Path Mappings
Path mappings are essential when the file system paths in your Diskover index differ from the paths on PowerScale. This is common when:
Diskover scans NFS/SMB mounted shares with different mount points
Multiple PowerScale clusters are consolidated under different mount paths
Access zones present different path views
Each path mapping contains:
Field |
Description |
Example |
|---|---|---|
|
Path as it appears in the Diskover index |
|
|
Corresponding path on PowerScale |
|
Example Configuration
host: powerscale.example.com
port: 8080
user: diskover_svc
password: ********
verify_ssl: true
path_mappings:
- from_path: /mnt/data
to_path: /ifs/data
- from_path: /mnt/home
to_path: /ifs/home
- from_path: /nfs/projects
to_path: /ifs/projects
Path Mapping Behavior
Exact matches are handled first
Prefix matching handles subdirectories automatically
If no mapping matches, the path is used as-is
Mappings are applied bidirectionally (index-to-PowerScale and PowerScale-to-index)
Execution
The Dell Storage Quotas plugin can be executed manually from the command line or automatically as part of your indexing workflow.
Manual Execution
Command Syntax
Linux:
python3 /opt/diskover/plugins_postindex/diskover_dell_quotas/diskover_dell_quotas.py [OPTIONS] [INDEX]
Windows:
python "C:\Program Files\Diskover\plugins_postindex\diskover_dell_quotas\diskover_dell_quotas.py" [OPTIONS] [INDEX]
Command-Line Options
Option |
Description |
|---|---|
|
Show help message and exit |
|
Use a named configuration defined in Diskover Admin |
|
Auto-find the most recent index based on top path |
|
Enable verbose logging |
|
Print version number and exit |
Examples
Basic execution with a specific index name:
Linux:
python3 /opt/diskover/plugins_postindex/diskover_dell_quotas/diskover_dell_quotas.py diskover-data-2026.01.15
Windows:
python "C:\Program Files\Diskover\plugins_postindex\diskover_dell_quotas\diskover_dell_quotas.py" diskover-data-2026.01.15
Auto-find the latest index by top path:
Linux:
python3 /opt/diskover/plugins_postindex/diskover_dell_quotas/diskover_dell_quotas.py -l /mnt/data
Windows:
python "C:\Program Files\Diskover\plugins_postindex\diskover_dell_quotas\diskover_dell_quotas.py" -l /mnt/data
Use a named configuration:
Linux:
python3 /opt/diskover/plugins_postindex/diskover_dell_quotas/diskover_dell_quotas.py -c production diskover-data-2026.01.15
Windows:
python "C:\Program Files\Diskover\plugins_postindex\diskover_dell_quotas\diskover_dell_quotas.py" -c production diskover-data-2026.01.15
Enable verbose logging for troubleshooting:
Linux:
python3 /opt/diskover/plugins_postindex/diskover_dell_quotas/diskover_dell_quotas.py -v diskover-data-2026.01.15
Windows:
python "C:\Program Files\Diskover\plugins_postindex\diskover_dell_quotas\diskover_dell_quotas.py" -v diskover-data-2026.01.15
Automated Execution
The Dell Storage Quotas plugin can be scheduled to run automatically using Diskover's built-in task scheduling.
Option 1: Custom Task
Create a Custom Task in the Diskover Admin UI to run the plugin on a schedule independent of indexing.
Sample Custom Task Configuration:
Here we can see the Run Command & args needed for the Custom Task - Note that in this case you cannot use the {indexname} variable as this is not a task that creates an index, so we must use the -l (toppath) CLI option and pass in our top path!
Option 2: Post-Crawl Command (Index Task)
Configure the plugin to run automatically after each index completes by adding it as a Post-Crawl Command in your Index Task.
Linux Configuration:
Field |
Value |
|---|---|
Post-Crawl Command |
|
Post-Crawl Command Args |
|
Windows Configuration:
Field |
Value |
|---|---|
Post-Crawl Command |
|
Post-Crawl Command Args |
|
Available Index Task Tokens:
{indexname}— The name of the index that was just created
With verbose logging enabled:
Field |
Value |
|---|---|
Post-Crawl Command |
|
Post-Crawl Command Args |
|
Sample Post-Crawl Command configuraiton for Dell Quotas executing with an Index Task:
In your system ensure to replace the ConfigurationName above with a named configuraiton that you’ve created at Diskover Admin → Plugins → Post-Index → Dell Quotas – If you are not using a custom configuration and you’re just using Default than the -c flag and the ConfigurationName is not required!
Reviewing the Output
Console Output
When the plugin runs, it displays progress information including connection status, quota discovery, and document updates.
Example output:
Starting Dell Quota metadata collection...
Target index: diskover-data-2026.01.15
Getting index information...
================================================================================
DISKOVER INDEX INFORMATION
================================================================================
Index Name: diskover-data-2026.01.15
Top Path: /mnt/data
Total Documents: 1,234,567
Creation Date: 2026-01-15 02:00:00
================================================================================
Querying quotas from PowerScale...
Found 15 quotas on PowerScale(root@192.168.202.10:8080) using config: Default
Path Mappings Configuration:
[0] from_path: "/mnt/data" -> to_path: "/ifs/data"
Top Level Path: /mnt/data -> PowerScale Path: /ifs/data
SELECTED: /mnt/data/projects -> /ifs/data/projects -> ID: AABjAQEAAAA...
SELECTED: /mnt/data/users/john -> /ifs/data/users/john -> ID: AABjAQEBBBB...
NOT SELECTED: /ifs/archive -> /ifs/archive -> ID: AABjAQECCCC...
Processing 2 quota(s) for path /mnt/data/projects:
- directory quota (ID: AABjAQEAAAA...) -> quota_directory
- user quota for john (ID: AABjAQEBBBB...) -> quota_user_john
Quota structure keys: ['quota_directory', 'quota_user_john']
Updated document for path /mnt/data/projects with 2 quota(s)
Dell Quota plugin completed successfully
Understanding the Output
SELECTED — Quotas that match your indexed paths and will be added to Diskover
NOT SELECTED — Quotas on PowerScale that don't fall under your indexed top path
Processing X quota(s) — Shows each quota being attached to a directory document
Viewing Quota Data in Diskover
After the plugin completes, browse to any directory with quota data in the Diskover web interface. The quota information appears in the "Extra fields" section of the file info panel (assuming you configured EXTRA_FIELDS as described in the Installation section).
Quota Data Structure
The plugin stores quota information in a structured format under the dell_quotas field. Each quota type uses a specific naming convention:
Quota Type |
Field Name Pattern |
Example |
|---|---|---|
Directory quota |
|
|
User quota |
|
|
Group quota |
|
|
Default user quota |
|
|
Default group quota |
|
|
Key Quota Fields
Field |
Description |
|---|---|
|
Unique quota identifier from PowerScale |
|
Quota type: |
|
PowerScale path where quota is applied |
|
Whether quota limits are actively enforced |
|
Hard limit in bytes (writes blocked when exceeded) |
|
Soft limit in bytes (grace period applies) |
|
Advisory limit in bytes (notifications only) |
|
Logical data size in bytes |
|
Physical storage used in bytes |
|
Number of inodes used |
|
Username or group name (for user/group quotas) |
Searching in Diskover
The Dell Storage Quotas plugin creates searchable fields that enable powerful queries for quota-related information.
Basic Quota Searches
Find all directories with quota data:
dell_quotas:*
Find directories with directory quotas:
dell_quotas.quota_directory:*
Find directories with a specific user's quota:
dell_quotas.quota_user_john:*
Searching by Quota Status
Find directories with enforced quotas:
dell_quotas.quota_directory.enforced:true
Find directories with hard limits configured:
dell_quotas.quota_directory.thresholds_on.hard:true
Find directories with soft limits configured:
dell_quotas.quota_directory.thresholds_on.soft:true
Searching by Usage
Find directories using more than 500GB logical storage:
dell_quotas.quota_directory.usage.logical:[536870912000 TO *]
Find directories using more than 1TB physical storage:
dell_quotas.quota_directory.usage.physical:[1099511627776 TO *]
Searching by Quota Type
Find directories with group quotas for a specific group:
dell_quotas.quota_group_developers:*
Find directories with default user quotas configured:
dell_quotas.quota_user_default:*
Find directories with default group quotas configured:
dell_quotas.quota_group_default:*
Combined Searches
Find large directories that also have quotas:
dell_quotas:* AND size:[1073741824 TO *]
Find directories with quotas modified in the last 30 days:
dell_quotas:* AND mtime:[now-30d TO now]
Find directories owned by a specific user that have quota data:
dell_quotas:* AND owner:jsmith
Sample Diskover query output for Quotas where the Advisory Limit has been exceeded in a specific directory:
Troubleshooting
Connection Issues
Symptom: Plugin fails with connection timeout or "Connection refused"
Solutions:
-
Verify network connectivity to PowerScale:
curl -k -I https://192.168.202.10:8080/session/1/session
-
Check if the PowerScale API port is open:
nc -zv 192.168.202.10 8080
Verify firewall rules allow outbound HTTPS to PowerScale
Confirm the PowerScale API is enabled and listening on the configured port
Authentication Problems
Symptom: Plugin fails with "401 Unauthorized" or "AuthenticationError"
Solutions:
Verify the username and password in the plugin configuration
Ensure the user account has
ISI_PRIV_QUOTAprivilege or equivalentCheck if the account is locked or expired on PowerScale
-
Test credentials directly:
curl -k -X POST https://192.168.202.10:8080/session/1/session \ -H "Content-Type: application/json" \ -d '{"username":"root","password":"YOUR_PASSWORD","services":["platform"]}'
Path Mapping Mismatches
Symptom: "No quotas found" or all quotas show "NOT SELECTED"
Solutions:
Review the path mappings in your configuration
Ensure
from_pathmatches exactly what Diskover scanned (check the index top path)Ensure
to_pathmatches the PowerScale quota pathsVerify no extra slashes or whitespace in path configurations
-
Run with verbose logging to see path mapping details:
python3 /opt/diskover/plugins_postindex/diskover_dell_quotas/diskover_dell_quotas.py -v INDEX_NAME
Documents Not Updated
Symptom: Plugin completes but quota data not visible in Diskover
Solutions:
Confirm you added
{"Dell Quota Info": "dell_quotas"}to EXTRA_FIELDS in Web settingsVerify the directory exists in the index before running the quota plugin
Check path case sensitivity matches between the index and PowerScale
-
Refresh the Elasticsearch index:
curl -X POST "localhost:9200/INDEX_NAME/_refresh"
Debug Logging
For detailed troubleshooting, enable verbose logging and capture the output:
Linux:
python3 /opt/diskover/plugins_postindex/diskover_dell_quotas/diskover_dell_quotas.py -v INDEX_NAME 2>&1 | tee dellquota_debug.log
Windows:
python "C:\Program Files\Diskover\plugins_postindex\diskover_dell_quotas\diskover_dell_quotas.py" -v INDEX_NAME 2>&1 | Tee-Object -FilePath dellquota_debug.log
Key log entries to look for:
Attempting to connect to PowerScale at...— Connection attemptFound X quotas on PowerScale— API responseSELECTED:/NOT SELECTED:— Path filtering resultsUpdated document for path...— Successful updatesNo document found for path...— Missing directories
Support
Last Updated: April 2026
Comments
0 comments
Please sign in to leave a comment.