#pragma autorecover #pragma classflags(64) #pragma namespace("\\\\.\\root\\SDDC\\Management") instance of __namespace{ name="MS_409";}; #pragma namespace("\\\\.\\root\\SDDC\\Management\\MS_409") [Description("Health Alert in SDDC") : Amended ToSubclass,AMENDMENT, LOCALE("MS_409")] class SDDC_Alert { [Description("Guid to identify the fault") : Amended ToSubclass] string Id; [Description("A short title for the fault") : Amended ToSubclass] string Title; [Description("Fault urgency the same to enum HEALTH_URGENCY") : Amended ToSubclass,Values{"Unknown", "Healthy", "Warning", "Unhealthy"} : Amended ToSubclass] uint16 Severity; [Description("Fault reason") : Amended ToSubclass] string Description; [Description("Description on the faulting object") : Amended ToSubclass] string FaultingObjectDescription; [Description("Location of the faulting object") : Amended ToSubclass] string FaultingObjectLocation; [Description("Timestamp for the fault") : Amended ToSubclass] datetime Time; [Description("Recommended actions to take") : Amended ToSubclass] string Actions; }; [Description("A single metric value.") : Amended ToSubclass,AMENDMENT, LOCALE("MS_409")] class SDDC_Datapoint { [Description("Timestamp for this metric value.") : Amended ToSubclass] datetime Timestamp; [Description("Value of the metric.") : Amended ToSubclass] real64 Value; }; [Description("Managing Physical Disks in SDDC") : Amended ToSubclass,AMENDMENT, LOCALE("MS_409")] class SDDC_Drive { [key,Description("UniqueId, to identify the Physical Disk in SMAPI.") : Amended ToSubclass] string Id; [Values{"Healthy", "Warning", "Unhealthy", "Other"} : Amended ToSubclass] uint16 StatusCategory; [Description("Status of the drive.") : Amended ToSubclass] uint16 Status[]; [Description("Represents the model number of the hardware.") : Amended ToSubclass] string Model; [Description("The name of the company responsible for the hardware backing the fault domain object.") : Amended ToSubclass] string Manufacturer; [Description("Serial number.") : Amended ToSubclass] string SerialNumber; [Description("A string representation of the firmware revision.") : Amended ToSubclass] string FirmwareVersion; [Description("Size in bytes.") : Amended ToSubclass] uint64 Size; [Description("Used size in bytes.") : Amended ToSubclass] uint64 SizeUsed; [Description("The storage device wear indicator percentage.") : Amended ToSubclass] uint8 WearPercentage; [Description("The current temperature of the storage device in degrees Celsius.") : Amended ToSubclass] uint8 TemperatureInCelsius; [Description("The number of hours that the storage device has been powered on since it was manufactured.") : Amended ToSubclass] uint32 PowerOnHours; [Description("Combined types from BusType and MediaType from MSFT_PhysicalDisk.\nPossible values:\nUnknown\nSCM\nNVMe\nSSD\nHDD\nVirtual\n") : Amended ToSubclass,Values{"Unknown", "SCM", "NVMe", "SSD", "HDD", "Virtual", "Other"} : Amended ToSubclass] uint16 Type; [Description("Cache or capacity.") : Amended ToSubclass,Values{"Unknown", "Cache", "Capacity"} : Amended ToSubclass] uint16 UsedFor; [Description("This field is a free-form string indicating where the hardware is located.") : Amended ToSubclass] string Location; [Description("Indicates whether the physical disk's identification LEDs are active or not.") : Amended ToSubclass] boolean IsIndicationEnabled; [Description("Name of the server to which the drive is physically connected.") : Amended ToSubclass] string Server; [Description("Friendly name of the non-primordial storage pool to which this drive belongs, or 'None' if the drive is not a part of any non-primordial storage pool.") : Amended ToSubclass] string StoragePool; [Description("Alerts currently set on the drive.") : Amended ToSubclass] SDDC_Alert Alerts[]; [Description("Retires the drive.") : Amended ToSubclass] uint32 Retire(); [Description("Unretires the drive.") : Amended ToSubclass] uint32 Unretire(); [Description("Updates the firmware on a storage device.") : Amended ToSubclass] uint32 UpdateFirmware([in] string ImagePath,[in] uint16 SlotNumber); [Description("Enables the identification LED on the specified physical disk.") : Amended ToSubclass] uint32 TurnOnLight(); [Description("Disables the identification LED on the specified physical disk.") : Amended ToSubclass] uint32 TurnOffLight(); uint32 GetMetrics([In] string SeriesName,[In,Values{"Hour", "Day", "Week", "Month", "Year"} : Amended ToSubclass] uint16 TimeFrame,[Out] SDDC_Metric Metric); }; [Description("Memory information.") : Amended ToSubclass,AMENDMENT, LOCALE("MS_409")] class SDDC_Memory { [Description("Manufacturer.") : Amended ToSubclass] string Manufacturer; [Description("Model.") : Amended ToSubclass] string Model; [Description("Serial number.") : Amended ToSubclass] string SerialNumber; [Description("Size in bytes.") : Amended ToSubclass] uint64 SizeInBytes; [Description("Speed in MHz.") : Amended ToSubclass] uint32 SpeedInMHz; }; [Description("Processor information.") : Amended ToSubclass,AMENDMENT, LOCALE("MS_409")] class SDDC_Processor { [Description("Manufacturer.") : Amended ToSubclass] string Manufacturer; [Description("Model.") : Amended ToSubclass] string Model; [Description("Number of cores.") : Amended ToSubclass] uint32 NumberOfCores; [Description("Number of logical processors.") : Amended ToSubclass] uint32 NumberOfLogicalProcessors; [Description("Max clock speed in MHz.") : Amended ToSubclass] uint32 MaxClockSpeedInMHz; }; [Description("Managing Server in SDDC") : Amended ToSubclass,AMENDMENT, LOCALE("MS_409")] class SDDC_Server { [key,Description("Server short name.") : Amended ToSubclass] string Name; [Values{"Healthy", "Warning", "Unhealthy", "Other"} : Amended ToSubclass] uint16 StatusCategory; [Description("Status of the server.") : Amended ToSubclass] uint16 Status[]; [Description("Name of the domain to which the server belongs.") : Amended ToSubclass] string Domain; [Description("Name of the cluster to which the server belongs.") : Amended ToSubclass] string Cluster; [Description("Cluster Id of the node, as seen in MSCluster_Node.") : Amended ToSubclass] string Id; [Description("Manufacturer.") : Amended ToSubclass] string Manufacturer; [Description("Model.") : Amended ToSubclass] string Model; [Description("Serial number.") : Amended ToSubclass] string SerialNumber; [Description("This field is a free-form string indicating where the server is located.") : Amended ToSubclass] string Location; [Description("Build number.") : Amended ToSubclass] string BuildNumber; [Description("OS Name.") : Amended ToSubclass] string OSName; [Description("Time since last boot up of this server.") : Amended ToSubclass] datetime Uptime; [Description("Percentage of time during the sample interval that the CPUs were idle. ") : Amended ToSubclass] uint64 TotalProcessorsIdlePercentage; [Description("Array of processors present on the server.") : Amended ToSubclass] SDDC_Processor Processors[]; [Description("Physical memory currently unused and available, in bytes.") : Amended ToSubclass] uint64 FreePhysicalMemoryInBytes; [Description("Array of memory chips present on the server.") : Amended ToSubclass] SDDC_Memory MemoryDIMMs[]; [Description("Alerts currently set on the drive.") : Amended ToSubclass] SDDC_Alert Alerts[]; [Description("Adds the specified server to the cluster") : Amended ToSubclass] uint32 AddServer([In] string ServerName); [Description("Removes this server from the cluster") : Amended ToSubclass] uint32 RemoveServer(); [Description("Pauses this server") : Amended ToSubclass] uint32 PauseServer([In] boolean DrainServer); [Description("Resume this server") : Amended ToSubclass] uint32 ResumeServer([In,Values{"Do Not Failback Groups", "Failback Groups Immediately", "Failback Groups Per Policy", "Resume Failback Type Count"} : Amended ToSubclass] uint32 FailbackType); uint32 GetMetrics([In] string SeriesName,[In,Values{"Hour", "Day", "Week", "Month", "Year"} : Amended ToSubclass] uint16 TimeFrame,[Out] SDDC_Metric Metric); }; [Description("Managing Volume in SDDC") : Amended ToSubclass,AMENDMENT, LOCALE("MS_409")] class SDDC_Volume { [key,Description("Guid to identify the volume in SMAPI and virtual disk volume name") : Amended ToSubclass] string Id; [Description("Label name, like Volume1.") : Amended ToSubclass] string Name; [Description("Access name for user, like C:\\ClusterStorage\\Volume1.") : Amended ToSubclass] string Path; [Values{"Healthy", "Warning", "Unhealthy", "Other"} : Amended ToSubclass] uint16 StatusCategory; [Description("Operational status of underlying virtual disk") : Amended ToSubclass] uint16 Status[]; [Description("Total size of the volume") : Amended ToSubclass,Units("Bytes") : Amended ToSubclass] uint64 Size; [Description("Available space on the volume") : Amended ToSubclass,Units("Bytes") : Amended ToSubclass] uint64 SizeRemaining; [Description("Total size of the volume") : Amended ToSubclass,Units("Bytes") : Amended ToSubclass] uint64 Footprint; [Description("File system on the volume. NTFS/ReFS") : Amended ToSubclass] string FileSystem; [Description("Media that volume residents on") : Amended ToSubclass,Values{"Unknown", "Disk", "Ssd", "Journal", "Scm"} : Amended ToSubclass] uint16 Media; [Description("The level of separation guaranteed between copies of data by Storage Spaces.") : Amended ToSubclass,Values{"Unknown", "Drive", "Enclosure", "Server", "Chassis", "Rack"} : Amended ToSubclass] uint16 FaultDomainAwareness; [Description("Is Tiered") : Amended ToSubclass] boolean IsTiered; [Description("Size of the fast/slow tiers, if tiered.") : Amended ToSubclass,Units("Bytes") : Amended ToSubclass] uint64 TierSizes[]; [Description("Footprint sizes of the fast/slow tiers, if tiered.") : Amended ToSubclass,Units("Bytes") : Amended ToSubclass] uint64 TierFootprints[]; [Description("Resiliencies of the fast/slow tiers, if tiered.") : Amended ToSubclass] uint16 TierResiliencies[]; [Description("Media types of the fast/slow tiers, if tiered. This type is the same to space SC_MEDIA_TYPE.\n0 - 'Unknown'\n1 - 'Disk'\n2 - 'Ssd'\n3 - 'Journal'\n4 - 'Scm'\n") : Amended ToSubclass] uint16 TierMedias[]; [Description("A list of alerts on this volume. ") : Amended ToSubclass] SDDC_Alert Alerts[]; [Description("Get the new volume template") : Amended ToSubclass] uint32 GetNewVolumeTemplate([Out] SDDC_VolumeModificationTemplate NewVolumeTemplate); [Description("New Volume") : Amended ToSubclass] uint32 NewVolume([In] string VolumeName,[In,Description("Resiliency") : Amended ToSubclass] uint16 Resiliency,[In,Description("Is tiered") : Amended ToSubclass] boolean IsTiered,[In,Description("For non tiered volume, only one size. If tiered, tiered size for fast/slow tiers.") : Amended ToSubclass] uint64 Sizes[]); [Description("Get the resize template") : Amended ToSubclass] uint32 GetResizeVolumeTemplate([Out] SDDC_VolumeModificationTemplate ResizeVolumeTemplate); [Description("Resize a volume") : Amended ToSubclass] uint32 ResizeVolume([In,Description("Is tiered") : Amended ToSubclass] boolean IsTiered,[In,Description("New Size for the volume, fast/slow tiered") : Amended ToSubclass] uint64 NewSize[]); [Description("Delete the volume") : Amended ToSubclass] uint32 DeleteVolume(); [Description("Online the volume") : Amended ToSubclass] uint32 OnlineVolume(); [Description("Offline the volume") : Amended ToSubclass] uint32 OfflineVolume(); [Description("Get metrics for this volume") : Amended ToSubclass] uint32 GetMetrics([In] string SeriesName,[In,Values{"Hour", "Day", "Week", "Month", "Year"} : Amended ToSubclass] uint16 TimeFrame,[Out] SDDC_Metric Metric); }; [Description("Managing Volume in SDDC") : Amended ToSubclass,AMENDMENT, LOCALE("MS_409")] class SDDC_VolumeModificationTemplate { [Description("Label of the new volume") : Amended ToSubclass] string Name; [Description("Available resiliency options") : Amended ToSubclass] uint16 Resiliency[]; [Description("Available sizes: non-tiered, one available size; tiered, available on fast/slow tiers.\nFor future new default tiers, keep adding elements to this array.\n") : Amended ToSubclass] uint64 SizeAvailable[]; };