Instructions
Instance:
========================
Note - All properties here are connected to delta mechanism - the way to send a query per object about the changes from last time such a query was sent. It works as following:
For each object type we store the latest version it s an incremental counter, every time an object is changed, the version is increased.
Every object knows what was version last time it was modified. The client sends request with the last version he knows.
MDM responds with: list of all objects that were updated after that version
list of objects deleted since that version
last version sent
Example for such a query (for ProtectionDomain):
GET /api/types/ProtectionDomain/instances?systemId={system id}&sessionTag={session tag}&lastVersion={last version}
isDirty - the version on some objects changed while the MDM created the response, dirty flag that is set if there were changes during the response generation (to encourage the client to send follow-up request sooner)
last<Object>Version - "serial number" of last delta sent per Object. next delta query should contain this value, and will send delta from this point.
sessionTag - session tag used for delta mechanism request. might be changed by mdm (e.g. when switch mdm occurs). sessionTag is actually MDM restarts counter, if it is mismatched that means MDM was restarted. If the client or MDM was restarted, full response that contains all objects will be sent.
System:
========================
capacityTimeLeftInDays - The amount of time left until the license expires
enterpriseFeaturesEnabled - Indicates whether enterprise features are enabled, part of licensing info. Example of enterprise features- snapshots, QoS. The default value is TRUE .
isInitialLicense - Is the current license is the one assigned to the system on initialization
managementClientSecureCommunicationEnabled - Is secure communication MDM <=> Clients (CLI, REST, GUI) enabled
mdmToSdsPolicy - MDM <=> SDS communication policy (regular / authenticated)
upgradeState - Whether the system upgrade is currently in progress and what is its state
remoteReadOnlyLimitState - Flag that indicates that a remote client is only allowed to perform query operations on MDMrestrictedSdcModeEnabled - Indicates whether users on remote clients are restricted to read-only access (enabled=read-only access; disabled=full read-write access)
SDS:
========================
rfcacheErrorInconsistentCacheConfiguration - Whether there is an error in rfCache configuration
rfcacheErrorInconsistentSourceConfiguration - Whether there is an error in rfCache source device
rmcacheFrozen - Whether the read-cache is currently frozen (= temporary not used)
rmcacheMemoryAllocationState - State of the memory allocation process (in-progress/done)
rmcacheSizeInKb - Size of read-cache on that SDS
sdsDecoupled - whether the SDS is currently in decoupled state
sdsReceiveBufferAllocationFailures - Counter of buffer allocation failures on SDS (helps to identify performance degradation issues)
========================
Volume:
========================
consistencyGroupId - Identifier that is assigned to all snapshots taken in a single command (they are consistent across the gropup)
mappingToAllSdcsEnabled - Whether the volume is mapped to all SDCs (deprecated!!!)
deviceList
===============
longSuccessfulIos - troubleshooting counter for IOs to disk that took longer than expected, but still ended successfully. Helps to identify malfunctioning disks.
activeMovingInNormRebuildJobs
activeMovingOutNormRebuildJobs
activeNormRebuildCapacityInKb
========================
Counters representing backward rebuild triggered from NORMAL state (AKA normal-need-rebuild) - when primary and secondary have different values, but did not ACK'ed the write, so we can pick any value of these two.
The "Jobs" counter represents number of combs; active - combs that are in move right now, "MovingIn" - meaning this is the target SDS.
/api/instances/Sds/relationships/Statistics
===============
inMaintenanceCapacityInKb
inMaintenanceVacInKb - XXXCapacityInKb is the PHYSICAL capacity, XXXVacInKb is ALLOCATED capacity.
The difference is significant in thin volumes and snapshots - consider a 10TB thin volume, with 1TB actual written data on it, so allocated=10TB, physical=1TB
inMaintenanceCapacityInKb
inMaintenanceVacInKb
Capacity that is currently in maintenance (on the SDS that is currently in maintenance mode)
normRebuildCapacityInKb - Capacity that is considered "normal-need-rebuild"
normRebuildReadBwc - Bandwidth of reads as part of "rebuild from normal" (there is the same for writes, for some reason not in the list)
pendingMovingInNormRebuildJobs
pendingMovingOutNormrebuildJobs - Combs that should be rebuilt, but are currently waiting in queue
rmPendingAllocatedInKb - Capacity that is marked for removal (e.g during remove device/SDS)
semiProtectedVacInKb - The "other side" of the capacity in maintenance
ThinCapacityAllocatedInKm -it should be ThinCapacityAllocatedInKb. It's a REST API bug, which will be fixed in 3.
"OscillatingCounterParameters" and "OscillatingCounter"
"OscillatingCounterWindowParameters" and "OscillatingCounterWindow"
===============
Each osc. counter consists of 3 sliding windows short, med, long, each is configures with threshold and window size (in seconds)
Once the threshold is reached within the current window, the relevant alert is issued.
Hence,
"OscillatingCounterParameters" contains 3 "OscillatingCounterWindowParameters";
"OscillatingCounter" contains 3 "OscillatingCounterWindow".
===============
Affected Products
PowerFlex Software
Products
PowerFlex Software