class Link(Entity): EntityType = AttributeRepresentation(display='', dbKey='entityType') EntityText = AttributeRepresentation(display='', dbKey='entityText') @Utils.initializer def __init__(self, entityType=None, entityText=None): pass
class MongoDB(Entity): """ Static class attributes. * Set * Members """ Set = AttributeRepresentation(display='Replica Set', dbKey='set') Members = AttributeRepresentation(display='Members', dbKey='members', type=MongoDBMember) __objectsToInstantiate = ['Members'] @Utils.initializer def __init__(self, set=None, members=None): """**Initializes MongoDB entity** :param set: MongoDB replica set name, defaults to None :type set: str, optional :param members: cluster members, defaults to None :type members: list, optional """ pass def getObjectsToInstantiate(self): return MongoDB.__objectsToInstantiate
class User(Entity): """ Static class attributes to use with MongoObj * Email * Role * DateModified * ModifiedBy * NotificationLevel """ Email = AttributeRepresentation(display='Email', dbKey='email') Id = Email Role = AttributeRepresentation(display='Role', dbKey='role') DateModified = AttributeRepresentation(display='Date Modified', dbKey='dateModified') ModifiedBy = AttributeRepresentation(display='Modified By', dbKey='modifiedBy') NotificationLevel = AttributeRepresentation(display='Notification Level', dbKey='notificationLevel') @Utils.initializer def __init__(self, email, role, notificationLevel, password=None, _id=None, layout=None, relogin=False, modifiedBy=None, createdBy=None, eulaDateOfSignature=None, eulaSignature=None, hasAcceptedEula=None, dateModified=None, dateCreated=None): """**Initializes user entity** :param email: user's email :type email: str :param role: role of the user, Options: Observer, Admin. :type role: str :param notificationLevel: notificationLevel of the user possible values are: NONE, WARNING & ERROR. :type notificationLevel: str :param password: the password of the user. :type password: str :param confirmationPassword: the confirmation password of the user. :type confirmationPassword: str :param relogin: determines if the newly created user will be prompted to change the password upon first login, defaults to None :type relogin: bool, optional :param dateModified: date of last modification, defaults to None :type dateModified: str, optional """ self._id = email if hasattr(self, 'password'): self.confirmationPassword = self.password @staticmethod def getSchemaName(): return 'userEntity'
class DrivesStatus(Entity): Alarm = AttributeRepresentation(display='Alarm', dbKey='alarm') Critical = AttributeRepresentation(display='Critical', dbKey='critical') Healthy = AttributeRepresentation(display='Healthy', dbKey='healthy') @Utils.initializer def __init__(self, alarm=None, critical=None, healthy=None): pass
class Client(Entity): """ Static class attributes to use with MongoObj * Id * Version * Health * BlockDevices """ Id = AttributeRepresentation(display='Name', dbKey='_id') Version = AttributeRepresentation(display='Version', dbKey='version') Health = AttributeRepresentation(display='Health', dbKey='health') Status = AttributeRepresentation(display='Status', dbKey='client_status') BlockDevices = AttributeRepresentation(display='Volume Attachments', dbKey='block_devices', type=BlockDevice) __objectsToInstantiate = ['BlockDevices'] @Utils.initializer def __init__(self, _id=None, branch=None, configuration_version=None, client_status=None, block_devices=None, version=None, client_id=None, controlJobs=None, commit=None, messageSequence=None, connectionSequence=None, dateModified=None, health=None, health_old=None, managementAgentStatus=None): """**Initializes client entity** :param _id: client's id, defaults to None :type _id: str, optional :param client_status: client's status, defaults to None :type client_status: int, optional :param block_devices: client's block devices, defaults to None :type block_devices: list, optional :param version: management version, defaults to None :type version: str, optional :param dateModified: date of last modification, defaults to None :type dateModified: str, optional :param health: client's health, defaults to None :type health: str, optional """ pass def getObjectsToInstantiate(self): return Client.__objectsToInstantiate @staticmethod def getSchemaName(): return 'clientEntity'
class Reservation(Entity): Mode = AttributeRepresentation(display='Reservation Mode', dbKey='mode') Version = AttributeRepresentation(display='Reservation Version', dbKey='version') ReservedBy = AttributeRepresentation(display='Reserved By', dbKey='reservedBy') @Utils.initializer def __init__(self, mode=None, version=None, reservedBy=None): pass
class ClientsStatus(Entity): Total = AttributeRepresentation(display='Total', dbKey='totalClients') Offline = AttributeRepresentation(display='Offline', dbKey='offlineClients') TimedOut = AttributeRepresentation(display='Timed Out', dbKey='timedOutClients') @Utils.initializer def __init__(self, totalClients=None, offlineClients=None, timedOutClients=None): pass
class Meta(Entity): Header = AttributeRepresentation(display='Header', dbKey='header') Acknowledged = AttributeRepresentation(display='Acknowledged', dbKey='acknowledged') RawMessage = AttributeRepresentation(display='Message', dbKey='rawMessage') Link = AttributeRepresentation(display='', dbKey='link', type=Link) __objectsToInstantiate = ['Link'] @Utils.initializer def __init__(self, header=None, acknowledged=None, rawMessage=None, link=None): pass def getObjectsToInstantiate(self): return Meta.__objectsToInstantiate
class NIC(Entity): Id = AttributeRepresentation(display='NIC ID', dbKey='nicID') MTU = AttributeRepresentation(display='MTU', dbKey='mtu') Status = AttributeRepresentation(display='Status', dbKey='status') Protocol = AttributeRepresentation(display='Protocol', dbKey='protocol') GUID = AttributeRepresentation(display='GUID', dbKey='guid') NodeID = AttributeRepresentation(display='Node ID', dbKey='nodeID') Health = AttributeRepresentation(display='Health', dbKey='health') DeviceType = AttributeRepresentation(display='Device Type', dbKey='deviceType') @Utils.initializer def __init__(self, status=None, pkey=None, nicID=None, mtu=None, version=None, pci_root=None, protocol=None, guid=None, speed=None, nodeID=None, nodeUUID=None, uuid=None, health=None, missingCounter=None, deviceType=None): pass
class Chunk(Entity): Id = AttributeRepresentation(display='Name', dbKey='_id') VLBS = AttributeRepresentation(display='vlbs', dbKey='vlbs') VLBE = AttributeRepresentation(display='vlbe', dbKey='vlbe') PRAIDS = AttributeRepresentation(display='pRaids', dbKey='pRaids', type=PRAID) __objectsToInstantiate = ['PRAIDS'] @Utils.initializer def __init__(self, _id=None, uuid=None, vlbs=None, vlbe=None, pRaids=None): pass def getObjectsToInstantiate(self): return Chunk.__objectsToInstantiate
class BlockDevice(Entity): Id = AttributeRepresentation(display='Volume Name', dbKey='name') VolumeAttachmentStatus = AttributeRepresentation( display='Volume Attachments', dbKey='vol_status') IOEnabled = AttributeRepresentation(display='IO Enabled', dbKey='is_io_enabled') @Utils.initializer def __init__(self, is_io_enabled=None, io_perm=None, name=None, is_hidden=None, uuid=None, vol_status=None): pass
class Log(Entity): """ Static class attributes to use with MongoObj * Id * Timestamp * Level * Message * AcknowledgedBy """ Id = AttributeRepresentation(display='ID', dbKey='_id') TimeStamp = AttributeRepresentation(display='Timestamp', dbKey='timestamp') Level = AttributeRepresentation(display='Level', dbKey='level') Message = AttributeRepresentation(display='Message', dbKey='message') AcknowledgedBy = AttributeRepresentation(display='Acknowledged By', dbKey='acknowledgedBy') @Utils.initializer def __init__(self, _id=None, timestamp=None, level=None, message=None, rawMessage=None, meta=None, acknowledgedBy=None, dateModified=None): """Initializes Log entity] :param _id: the id of the log, defaults to None :type _id: str, optional :param timestamp: the timestamp of the log , defaults to None :type timestamp: str, optional :param level: the level of the log, defaults to None :type level: str, optional :param message: the message of the log, defaults to None :type message: str, optional :param acknowledgedBy: the user that acknowledged the log, defaults to None :type acknowledgedBy: str, optional :param dateModified: date of last modification, defaults to None :type dateModified: str, optional """ pass @staticmethod def getSchemaName(): return 'logEntity'
class VolumeLayout(Entity): ChunkNumber = AttributeRepresentation(display='Chunk', dbKey='chunkNumber') StripeNumber = AttributeRepresentation(display='Stripe', dbKey='stripeNumber') SegmentNumber = AttributeRepresentation(display='Segment', dbKey='segmentNumber') SegmentType = AttributeRepresentation(display='Segment Type', dbKey='segmentType') LBAStart = AttributeRepresentation(display='LBA Start', dbKey='lbaStart') LBAEnd = AttributeRepresentation(display='LBA End', dbKey='lbaEnd') Status = AttributeRepresentation(display='Segment Status', dbKey='status') DriveID = AttributeRepresentation(display='Drive Serial', dbKey='drive') TargetID = AttributeRepresentation(display='Target', dbKey='target') @Utils.initializer def __init__(self, chunkNumber=None, stripeNumber=None, segmentNumber=None, segmentType=None, lbaStart=None, lbaEnd=None, status=None, drive=None, target=None): pass
class Key(Entity): """ Static class attributes to use with MongoObj * Id * UUID * DateModified * DateCreated * ModifiedBy * CreatedBy * Description """ Id = AttributeRepresentation(display='Name', dbKey='_id') UUID = AttributeRepresentation(display='UUID', dbKey='uuid') DateModified = AttributeRepresentation(display='Date Modified', dbKey='dateModified') DateCreated = AttributeRepresentation(display='Date Created', dbKey='dateCreated') ModifiedBy = AttributeRepresentation(display='Modified By', dbKey='modifiedBy') CreatedBy = AttributeRepresentation(display='Created By', dbKey='createdBy') Description = AttributeRepresentation(display='Description', dbKey='description') DBUUID = AttributeRepresentation(display='DB UUID', dbKey='dbUUID') @Utils.initializer def __init__(self, _id=None, uuid=None, dateModified=None, dateCreated=None, modifiedBy=None, createdBy=None, description=None, dbUUID=None): """Initializes Key entity :param _id: the id of the key, defaults to None :type _id: str, optional :param uuid: the uuid of the key , defaults to None :type uuid: str, optional :param dateModified: date of last modification, defaults to None :type dateModified: str, optional :param dateCreated: date of creation, defaults to None :type dateCreated: str, optional :param modifiedBy: the last user that modified the key, defaults to None :type modifiedBy: str, optional :param createdBy: the user that created the key, defaults to None :type createdBy: str, optional :param description: the description of the key, defaults to None :type description: str, optional """ pass
class ClusterStatus(Entity): Targets = AttributeRepresentation(display='Targets', dbKey='servers', type=TargetsStatus) Clients = AttributeRepresentation(display='Clients', dbKey='clients', type=ClientsStatus) Volumes = AttributeRepresentation(display='Volumes', dbKey='volumes') TotalSpace = AttributeRepresentation(display='Total Space', dbKey='totalSpace') AllocatedSpace = AttributeRepresentation(display='Allocated Space', dbKey='allocatedSpace') FreeSpace = AttributeRepresentation(display='Free Space', dbKey='freeSpace') ManagementVersion = AttributeRepresentation(display='Management Version', dbKey='managementVersion') __objectsToInstantiate = ['Targets', 'Clients'] @Utils.initializer def __init__(self, servers=None, clients=None, volumes=None, totalSpace=None, allocatedSpace=None, freeSpace=None, errors=None, warnings=None, managementVersion=None): """**Initializes cluster status entity** :param servers: targets in the cluster, defaults to None :type servers: TargetsStatus, optional :param clients: clients in the cluster, defaults to None :type clients: ClientsStatus, optional :param volumes: volumes in the cluster, defaults to None :type volumes: dict, optional :param totalSpace: total space in the cluster, defaults to None :type totalSpace: int, optional :param allocatedSpace: allocated space in the cluster, defaults to None :type allocatedSpace: int, optional :param freeSpace: free space in the cluster, defaults to None :type freeSpace: int, optional :param errors: errors, defaults to None :type errors: list, optional :param warnings: warnings, defaults to None :type warnings: list, optional :param managementVersion: management version, defaults to None :type managementVersion: str, optional """ pass def getObjectsToInstantiate(self): return ClusterStatus.__objectsToInstantiate
class DriveClass(Entity): """ Static class attributes to use with MongoObj * Id * Description * Drives * DateModified * ModifiedBy * Domains """ Id = AttributeRepresentation(display='Name', dbKey='_id') Description = AttributeRepresentation(display='Description', dbKey='description') Drives = AttributeRepresentation(display='Drives', dbKey='disks', type=Drive) DateModified = AttributeRepresentation(display='Date Modified', dbKey='dateModified') ModifiedBy = AttributeRepresentation(display='Modified By', dbKey='modifiedBy') Domains = AttributeRepresentation(display='Domains', dbKey='domains') __objectsToInstantiate = ['Drives'] @Utils.initializer def __init__(self, _id, disks, description=None, tags=None, modifiedBy=None, createdBy=None, dateModified=None, dateCreated=None, domains=None): """**Initializes drive class entity** :param _id: the id of the drive class :type _id: str :param disks: list of disks :type disks: list :param description: description of the drive class, defaults to None :type description: str, optional :param domains: list of awareness domains of the drive class, defaults to None :type domains: list, optional :param modifiedBy: the last user that modified the drive class, defaults to None :type modifiedBy: str, optional :param dateModified: date of last modification, defaults to None :type dateModified: str, optional """ pass def getObjectsToInstantiate(self): return DriveClass.__objectsToInstantiate @staticmethod def getSchemaName(): return 'driveClassEntity'
class VolumeSecurityGroup(Entity): """ Static class attributes to use with MongoObj * Id * Keys * DateModified * DateCreated * ModifiedBy * CreatedBy * Description """ Id = AttributeRepresentation(display='Name', dbKey='_id') Keys = AttributeRepresentation(display='Keys', dbKey='keys') DateModified = AttributeRepresentation(display='Date Modified', dbKey='dateModified') DateCreated = AttributeRepresentation(display='Date Created', dbKey='dateCreated') ModifiedBy = AttributeRepresentation(display='Modified By', dbKey='modifiedBy') CreatedBy = AttributeRepresentation(display='Created By', dbKey='createdBy') Description = AttributeRepresentation(display='Description', dbKey='description') @Utils.initializer def __init__(self, _id=None, keys=None, dateModified=None, dateCreated=None, modifiedBy=None, createdBy=None, description=None): """Initializes Key entity :param _id: the id of the key, defaults to None :type _id: str, optional :param keys: the keys associated with this VSG, defaults to None :type keys: list, optional :param dateModified: date of last modification, defaults to None :type dateModified: str, optional :param dateCreated: date of creation, defaults to None :type dateCreated: str, optional :param modifiedBy: the last user that modified the key, defaults to None :type modifiedBy: str, optional :param createdBy: the user that created the key, defaults to None :type createdBy: str, optional :param description: the description of the key, defaults to None :type description: str, optional """ pass
class TargetClass(Entity): """ Static class attributes to use with MongoObj * Id * Description * TargetNodes * DateModified * ModifiedBy * Domains """ Id = AttributeRepresentation(display='Name', dbKey='name') Description = AttributeRepresentation(display='Description', dbKey='description') TargetNodes = AttributeRepresentation(display='Targets', dbKey='targetNodes') DateModified = AttributeRepresentation(display='Date Modified', dbKey='dateModified') ModifiedBy = AttributeRepresentation(display='Modified By', dbKey='modifiedBy') Domains = AttributeRepresentation(display='Domains', dbKey='domains') @Utils.initializer def __init__(self, name, targetNodes, _id=None, description=None, domains=None, modifiedBy=None, createdBy=None, dateModified=None, dateCreated=None, servers=None, index=None): """**Initializes target class entity** :param name: target class name :type name: str :param targetNodes: list of target IDs :type targetNodes: list :param description: description of the target class, defaults to None :type description: str, optional :param domains: list of awareness domains of the target class, defaults to None :type domains: list, optional :param modifiedBy: the last user that modified the target class, defaults to None :type modifiedBy: str, optional :param dateModified: date of last modification, defaults to None :type dateModified: str, optional """ self._id = self.name @staticmethod def getSchemaName(): return 'targetClassEntity'
class DiskSegment(Entity): NodeID = AttributeRepresentation(display='Target', dbKey='node_id') DriveID = AttributeRepresentation(display='Drive', dbKey='diskID') DirtyBits = AttributeRepresentation(display='Dirty Bits', dbKey='remainingDirtyBits') LBS = AttributeRepresentation(display='lbs', dbKey='lbs') LBE = AttributeRepresentation(display='lbe', dbKey='lbe') Type = AttributeRepresentation(display='Segment Type', dbKey='type') Status = AttributeRepresentation(display='Status', dbKey='status') @Utils.initializer def __init__(self, _id=None, uuid=None, diskID=None, diskUUID=None, nodeUUID=None, node_id=None, volumeName=None, volumeUUID=None, pRaidUUID=None, allocationIndex=None, pRaidIndex=None, lbs=None, lbe=None, type=None, pRaidTypeIndex=None, status=None, remainingDirtyBits=None, isExtension=None): pass
class ConfigurationProfile(Entity): """ Static class attributes to use with MongoObj * Id * Description * Labels * Hosts * Configuration * DateModified * ModifiedBy """ Id = AttributeRepresentation(display='Name', dbKey='_id') Description = AttributeRepresentation(display='Description', dbKey='description') Labels = AttributeRepresentation(display='Labels', dbKey='labels') Hosts = AttributeRepresentation(display='Hosts', dbKey='hosts') Configuration = AttributeRepresentation(display='Configuration', dbKey='config') DateModified = AttributeRepresentation(display='Date Modified', dbKey='dateModified') ModifiedBy = AttributeRepresentation(display='Modified By', dbKey='modifiedBy') @Utils.initializer def __init__(self, name=None, _id=None, description=None, labels=None, hosts=None, config=None, version=None, modifiedBy=None, createdBy=None, dateModified=None, dateCreated=None, deleteNotAllowed=None, editNotAllowed=None): """**Initializes configuration profile entity** :param _id: the id of the configuration profile :type _id: str :param name: the name of the configuration profile :type name: str :param description: description of the configuration profile, defaults to None :type description: str, optional :param labels: list of labels of the configuration profile :type labels: list, optional :param config: a dictionary of the configuration parameters and their values :type config: dict, optional :param modifiedBy: the last user that modified the configuration profile, defaults to None :type modifiedBy: str, optional :param dateModified: date of last modification, defaults to None :type dateModified: str, optional """ pass def getObjectsToInstantiate(self): return [] @staticmethod def getSchemaName(): return 'configurationProfileEntity'
class PRAID(Entity): DiskSegments = AttributeRepresentation(display='Drive Segments', dbKey='diskSegments', type=DiskSegment) __objectsToInstantiate = ['DiskSegments'] @Utils.initializer def __init__(self, activated=None, version=None, uuid=None, stripeIndex=None, diskSegments=None, tomaLeaderConnectionSequence=None, tomaLeaderRaftTerm=None): pass def getObjectsToInstantiate(self): return PRAID.__objectsToInstantiate
class Target(Entity): """ Static class attributes to use with MongoObj * Id * Drives * Nics * Version * Health * TomaStatus """ Id = AttributeRepresentation(display='Name', dbKey='node_id') Drives = AttributeRepresentation(display='Drives', dbKey='disks', type=Drive) Nics = AttributeRepresentation(display='NICs', dbKey='nics', type=NIC) Version = AttributeRepresentation(display='Version', dbKey='version') Health = AttributeRepresentation(display='Health', dbKey='health') TomaStatus = AttributeRepresentation(display='TOMA Status', dbKey='tomaStatus') __objectsToInstantiate = ['Drives', 'Nics'] @Utils.initializer def __init__(self, _id=None, branch=None, disks=None, nics=None, node_status=None, version=None, node_id=None, commit=None, messageSequence=None, connectionSequence=None, dateModified=None, health=None, cpu_load=None, cpu_temp=None, uuid=None, tomaStatus=None, wsStatus=None): """**Initializes target entity** :param _id: target's id, defaults to None :type _id: str, optional :param disks: target's drives, defaults to None :type disks: list, optional :param nics: target's nics, defaults to None :type nics: list, optional :param node_status: target's status, defaults to None :type node_status: int, optional :param version: management version, defaults to None :type version: str, optional :param dateModified: date of last modification, defaults to None :type dateModified: str, optional :param health: target's health, defaults to None :type health: str, optional """ pass def getObjectsToInstantiate(self): return Target.__objectsToInstantiate @staticmethod def getSchemaName(): return 'targetEntity'
class BlockDevice(Entity): Id = AttributeRepresentation(display='Volume Name', dbKey='name') VolumeAttachmentStatus = AttributeRepresentation(display='Volume Attachments', dbKey='vol_status') IOEnabled = AttributeRepresentation(display='IO Enabled', dbKey='ioEnabled') IsIOEnabled = AttributeRepresentation(display='IO Enabled', dbKey='is_io_enabled') IOPerm = AttributeRepresentation(display='IO Enabled', dbKey='io_perm') Reservation = AttributeRepresentation(display='Reservation', dbKey='reservation', type=Reservation) __objectsToInstantiate = ['Reservation'] @Utils.initializer def __init__(self, is_io_enabled=None, ioEnabled=None, io_perm=None, name=None, is_hidden=None, uuid=None, vol_status=None, reservation=None): pass def getObjectsToInstantiate(self): return BlockDevice.__objectsToInstantiate
class NIC(Entity): Id = AttributeRepresentation(display='NIC ID', dbKey='nicID') @Utils.initializer def __init__(self, status=None, pkey=None, nicID=None, mtu=None, version=None, pci_root=None, protocol=None, guid=None, speed=None, nodeID=None, nodeUUID=None, uuid=None, health=None, missingCounter=None, deviceType=None): pass
class TargetsStatus(Entity): Total = AttributeRepresentation(display='Total', dbKey='totalServers') Offline = AttributeRepresentation(display='Offline', dbKey='offlineServers') TimedOut = AttributeRepresentation(display='Timed Out', dbKey='timedOutServers') Alarm = AttributeRepresentation(display='Alarm', dbKey='alarm') Critical = AttributeRepresentation(display='Critical', dbKey='critical') Healthy = AttributeRepresentation(display='Healthy', dbKey='healthy') @Utils.initializer def __init__(self, totalServers=None, offlineServers=None, timedOutServers=None, alarm=None, critical=None, healthy=None): pass
class Volume(Entity): """ Static class attributes to use with MongoObj * Id * Health * Description * Status * RaidLevel * ParityBlocks * DataBlocks * Protection * Size * StripeWidth * TargetClasses * DriveClasses * Domain * RelativeRebuildPriority * Chunks """ Id = AttributeRepresentation(display='Name', dbKey='name') Health = AttributeRepresentation(display='Health', dbKey='health') Description = AttributeRepresentation(display='Description', dbKey='description') Status = AttributeRepresentation(display='Status', dbKey='status') RaidLevel = AttributeRepresentation(display='RAID Level', dbKey='RAIDLevel') ParityBlocks = AttributeRepresentation(display='Parity', dbKey='parityBlocks') DataBlocks = AttributeRepresentation(display='Data', dbKey='dataBlocks') Protection = AttributeRepresentation(display='Protection Level', dbKey='protectionLevel') Size = AttributeRepresentation(display='Size', dbKey='capacity') StripeWidth = AttributeRepresentation(display='Stripe Width', dbKey='stripeWidth') TargetClasses = AttributeRepresentation(display='Target Classes', dbKey='serverClasses') DriveClasses = AttributeRepresentation(display='Drive Classes', dbKey='diskClasses') Domain = AttributeRepresentation(display='Domain', dbKey='domain') RelativeRebuildPriority = AttributeRepresentation(display='Relative Rebuild Priority', dbKey='relativeRebuildPriority') Chunks = AttributeRepresentation(display='Chunks', dbKey='chunks', type=Chunk) __objectsToInstantiate = ['Chunks'] @Utils.initializer def __init__(self, name=None, RAIDLevel=None, capacity=None, VPG=None, _id=None, relativeRebuildPriority=None, description=None, diskClasses=None, serverClasses=None, limitByDisks=None, limitByNodes=None, numberOfMirrors=None, createdBy=None, modifiedBy=None, dateModified=None, dateCreated=None, isReserved=None, status=None, blocks=None, chunks=None, stripeSize=None, stripeWidth=None, dataBlocks=None, parityBlocks=None, protectionLevel=None, domain=None, uuid=None, blockSize=None, version=None, type=None, health=None, lockServer=None): """**Initializes volume entity** :param name: the name of the volume :type name: str, optional :param RAIDLevel: the RAID level of the volume, options: Concatenated, Striped RAID-0, Mirrored RAID-1, Striped & Mirrored RAID-10, Erasure Coding. :type RAIDLevel: str, optional :param capacity: space to allocate for the volume, use 'MAX' for using all of the available space. :type capacity: int or str, optional :param VPG: the VPG to use :type VPG: str, optional :param relativeRebuildPriority: sets the volume relative rebuild priority, defaults to None :type relativeRebuildPriority: int, optional :param description: description of the volume, defaults to None :type description: str, optional :param diskClasses: limit volume allocation to specific diskClasses, defaults to None :type diskClasses: list, optional :param serverClasses: limit volume allocation to specific serverClasses, defaults to None :type serverClasses: list, optional :param limitByDisks: limit volume allocation to specific disks, defaults to None :type limitByDisks: list, optional :param limitByNodes: limit volume allocation to specific nodes, defaults to None :type limitByNodes: list, optional :param numberOfMirrors: number of mirrors to use, required if RAIDLevel is Mirrored RAID-1 or Striped & Mirrored RAID-10., defaults to None :type numberOfMirrors: int, optional :param stripeSize: number in blocks of 4k, i.e. stripeSize:32 = 128k, required if RAIDLevel is Striped RAID-0 or Striped & Mirrored RAID-10 or Erasure Coding, optional, defaults to None :type stripeSize: str, optional :param stripeWidth: number of disks to use, required if RAIDLevel is Striped RAID-0 or Striped & Mirrored RAID-10, defaults to None :type stripeWidth: int, optional :param dataBlocks: number of disks to use, required if RAIDLevel is Erasure Coding, defaults to None :type dataBlocks: int, optional :param parityBlocks: number of disks to use, required if RAIDLevel is Erasure Coding, defaults to None :type parityBlocks: int, optional :param protectionLevel: protection level to use, defaults to None :type protectionLevel: str, optional :param domain: the domain of the volume, defaults to None :type domain: str, optional :param health: volume's health, defaults to None :type health: str, optional :param status: the status of the volume, defaults to None :type status: int, optional """ if hasattr(self, 'name'): self._id = self.name def getObjectsToInstantiate(self): return Volume.__objectsToInstantiate @staticmethod def getSchemaName(): return 'volumeEntity'
class MongoDBMember(Entity): """ Static class attributes. * Name * Host * Port * State * DatabaseSize * FreeSpace * LastHeartbeat * LastHeartbeatReceived * LastHeartbeatMessage * Health """ Name = AttributeRepresentation(display='Name', dbKey='name') Host = AttributeRepresentation(display='Host', dbKey='host') Port = AttributeRepresentation(display='Port', dbKey='port') State = AttributeRepresentation(display='State', dbKey='state') DatabaseSize = AttributeRepresentation(display='Database Size', dbKey='dbSize') FreeSpace = AttributeRepresentation(display='Free Space', dbKey='freeSpace') LastHeartbeat = AttributeRepresentation(display='Last Heartbeat', dbKey='lastHeartbeat') LastHeartbeatReceived = AttributeRepresentation( display='Last Heartbeat Received', dbKey='lastHeartbeatRecv') LastHeartbeatMessage = AttributeRepresentation( display='Last Heartbeat Message', dbKey='lastHeartbeatMessage') Health = AttributeRepresentation(display='Health', dbKey='health') @Utils.initializer def __init__(self, name=None, host=None, port=None, state=None, dbSize=None, freeSpace=None, lastHeartbeat=None, lastHeartbeatRecv=None, lastHeartbeatMessage=None, health=None): """**Initializes MongoDB member entity** :param name: member's name, defaults to None :type name: str, optional :param host: member's host, defaults to None :type host: str, optional :param port: member's port, defaults to None :type port: int, optional :param state: member's state, defaults to None :type state: int, optional :param dbSize: member's DB size in bytes, defaults to None :type dbSize: int, optional :param freeSpace: DB free space in bytes, defaults to None :type freeSpace: int, optional :param lastHeartbeat: reflects the last time the PRIMARY received a response from a heartbeat that it sent to this member, defaults to None :type lastHeartbeat: str, optional :param lastHeartbeatRecv: reflects the last time the PRIMARY received a heartbeat request from this member, defaults to None :type lastHeartbeatRecv: str, optional :param lastHeartbeatMessage: last heartbeat message, defaults to None :type lastHeartbeatMessage: str, optional :param health: member's health, defaults to None :type health: int, optional """ pass
class Volume(Entity): """ Static class attributes to use with MongoObj * Id * Health * Description * Status * RaidLevel * ParityBlocks * DataBlocks * Protection * Size * StripeWidth * TargetClasses * DriveClasses * Domain * RelativeRebuildPriority * Chunks * Reservation * IgnoreNodeSeparation * SelectedClientsForNvmf * EnableNVMf * EnableCrcCheck * VSGs * Type """ Id = AttributeRepresentation(display='Name', dbKey='name') Health = AttributeRepresentation(display='Health', dbKey='health') Description = AttributeRepresentation(display='Description', dbKey='description') Status = AttributeRepresentation(display='Status', dbKey='status') RaidLevel = AttributeRepresentation(display='RAID Level', dbKey='RAIDLevel') ParityBlocks = AttributeRepresentation(display='Parity', dbKey='parityBlocks') DataBlocks = AttributeRepresentation(display='Data', dbKey='dataBlocks') Protection = AttributeRepresentation(display='Protection Level', dbKey='protectionLevel') Size = AttributeRepresentation(display='Size', dbKey='capacity') StripeWidth = AttributeRepresentation(display='Stripe Width', dbKey='stripeWidth') TargetClasses = AttributeRepresentation(display='Target Classes', dbKey='serverClasses') DriveClasses = AttributeRepresentation(display='Drive Classes', dbKey='diskClasses') Domain = AttributeRepresentation(display='Domain', dbKey='domain') RelativeRebuildPriority = AttributeRepresentation( display='Relative Rebuild Priority', dbKey='relativeRebuildPriority') Chunks = AttributeRepresentation(display='Chunks', dbKey='chunks', type=Chunk) Reservation = AttributeRepresentation(display='Reservation', dbKey='reservation', type=Reservation) IgnoreNodeSeparation = AttributeRepresentation( display='Ignore Node Separation', dbKey='ignoreNodeSeparation') SelectedClientsForNvmf = AttributeRepresentation( display='Clients Allowed To Export Via NVMf', dbKey='selectedClientsForNvmf') EnableNVMf = AttributeRepresentation(display='Access Via NVMf', dbKey='enableNVMf') Action = AttributeRepresentation(display='Action', dbKey='action') EnableCrcCheck = AttributeRepresentation(display='Enable CRC Check', dbKey='enableCrcCheck') LimitByDrive = AttributeRepresentation(display='Limit by drives', dbKey='limitByDisks') LimitByTarget = AttributeRepresentation(display='Limit by targets', dbKey='limitByNodes') VSGs = AttributeRepresentation(display='VSGs', dbKey='VSGs') Type = AttributeRepresentation(display='Type', dbKey='type') # WCVName = AttributeRepresentation(display='Write Cache Volume', dbKey='wcvName') # WCVUUID = AttributeRepresentation(display='Write Cache Volume UUID', dbKey='wcvUUID') # MDV = AttributeRepresentation(display='Metadata Volume', dbKey='mdv', type='self') # QLCUUID = AttributeRepresentation(display='MTV UUID', dbKey='qlcUUID') __objectsToInstantiate = ['Chunks', 'Reservation'] #, 'MDV'] @Utils.initializer def __init__( self, name=None, RAIDLevel=None, capacity=None, VPG=None, _id=None, relativeRebuildPriority=None, description=None, diskClasses=None, serverClasses=None, limitByDisks=None, limitByNodes=None, numberOfMirrors=None, createdBy=None, modifiedBy=None, dateModified=None, dateCreated=None, isReserved=None, status=None, blocks=None, chunks=None, stripeSize=None, stripeWidth=None, dataBlocks=None, parityBlocks=None, protectionLevel=None, domain=None, uuid=None, blockSize=None, version=None, type=None, health=None, lockServer=None, reservation=None, ignoreNodeSeparation=None, selectedClientsForNvmf=None, enableNVMf=None, action=None, enableCrcCheck=None, VSGs=None, use_debug_di=None ): #, wcvName=None, wcvUUID=None, mdv=None, ownerVolumeID=None, qlcUUID=None): """**Initializes volume entity** :param name: the name of the volume :type name: str, optional :param RAIDLevel: the RAID level of the volume, options: Concatenated, Striped RAID-0, Mirrored RAID-1, Striped & Mirrored RAID-10, Erasure Coding. :type RAIDLevel: str, optional :param capacity: space to allocate for the volume, use 'MAX' for using all of the available space. :type capacity: int or str, optional :param VPG: the VPG to use :type VPG: str, optional :param relativeRebuildPriority: sets the volume relative rebuild priority, defaults to None :type relativeRebuildPriority: int, optional :param description: description of the volume, defaults to None :type description: str, optional :param diskClasses: limit volume allocation to specific diskClasses, defaults to None :type diskClasses: list, optional :param serverClasses: limit volume allocation to specific serverClasses, defaults to None :type serverClasses: list, optional :param limitByDisks: limit volume allocation to specific disks, defaults to None :type limitByDisks: list, optional :param limitByNodes: limit volume allocation to specific nodes, defaults to None :type limitByNodes: list, optional :param numberOfMirrors: number of mirrors to use, required if RAIDLevel is Mirrored RAID-1 or Striped & Mirrored RAID-10., defaults to None :type numberOfMirrors: int, optional :param stripeSize: number in blocks of 4k, i.e. stripeSize:32 = 128k, required if RAIDLevel is Striped RAID-0 or Striped & Mirrored RAID-10 or Erasure Coding, optional, defaults to None :type stripeSize: str, optional :param stripeWidth: number of disks to use, required if RAIDLevel is Striped RAID-0 or Striped & Mirrored RAID-10, defaults to None :type stripeWidth: int, optional :param dataBlocks: number of disks to use, required if RAIDLevel is Erasure Coding, defaults to None :type dataBlocks: int, optional :param parityBlocks: number of disks to use, required if RAIDLevel is Erasure Coding, defaults to None :type parityBlocks: int, optional :param protectionLevel: protection level to use, defaults to None :type protectionLevel: str, optional :param domain: the domain of the volume, defaults to None :type domain: str, optional :param health: volume's health, defaults to None :type health: str, optional :param status: the status of the volume, defaults to None :type status: int, optional :param ignoreNodeSeparation: when True node separation will be ignored for a mirrored volume (No Target Redundancy), defaults to None :type ignoreNodeSeparation: bool, optional :param selectedClientsForNvmf: clients that allowed to export via NVMf, defaults to None :type selectedClientsForNvmf: list, optional :param enableNVMf: enables access to the NVMesh volume using the NVMf protocol, defaults to None :type enableNVMf: bool, optional :param enableCrcCheck: enables CRC check, defaults to None :type enableCrcCheck: bool, optional :param VSGs: associated volume security groups, defaults to None :type VSGs: list, optional """ if hasattr(self, 'name'): self._id = self.name def getObjectsToInstantiate(self): return Volume.__objectsToInstantiate @staticmethod def getSchemaName(): return 'volumeEntity'
class GeneralSettings(Entity): """ Static class attributes to use with MongoObj * Id * ClusterName * MaxJsonSize * ReservedBlocks * AutoLogOutThreshold * CacheUpdateInterval * CompatibilityMode * DateModified * DaysBeforeLogEntryExpires * DebugComponents * Domain * EnableDistributedRAID * EnableLegacyFormatting * EnableZones * FullClientReportInterval * KeepaliveGracePeriod * LoggingLevel * RequestStatsInterval * sendStatsInterval * StatsCollectionSettings * EnableNVMf * EnableMultiTenancy * DefaultUnitType """ Id = AttributeRepresentation(display='ID', dbKey='_id') ClusterName = AttributeRepresentation(display='Cluster Name', dbKey='clusterName') MaxJsonSize = AttributeRepresentation(display='Max JSON Size', dbKey='MAX_JSON_SIZE') ReservedBlocks = AttributeRepresentation(display='Reserved Blocks', dbKey='RESERVED_BLOCKS') AutoLogOutThreshold = AttributeRepresentation( display='Auto Log Out Threshold', dbKey='autoLogOutThreshold') CacheUpdateInterval = AttributeRepresentation( display='Cache Update Interval', dbKey='cacheUpdateInterval') CompatibilityMode = AttributeRepresentation(display='Compatibility Mode', dbKey='compatibilityMode') DateModified = AttributeRepresentation(display='Date Modified', dbKey='dateModified') DaysBeforeLogEntryExpires = AttributeRepresentation( display='Days Before Log Entry Expires', dbKey='daysBeforeLogEntryExpires') DebugComponents = AttributeRepresentation(display='Debug Components', dbKey='debugComponents') Domain = AttributeRepresentation(display='Domain', dbKey='domain') EnableDistributedRAID = AttributeRepresentation( display='Enable Distributed RAID', dbKey='enableDistributedRAID') EnableLegacyFormatting = AttributeRepresentation( display='Enable Legacy Formatting', dbKey='enableLegacyFormatting') EnableZones = AttributeRepresentation(display='Enable Zones', dbKey='enableZones') FullClientReportInterval = AttributeRepresentation( display='Full Client Report Interval', dbKey='fullClientReportInterval') FullTomaReportInterval = AttributeRepresentation( display='Full Toma Report Interval', dbKey='fullTomaReportInterval') KeepaliveGracePeriod = AttributeRepresentation( display='Keepalive Grace Period', dbKey='keepaliveGracePeriod') LoggingLevel = AttributeRepresentation(display='Logging Level', dbKey='loggingLevel') RequestStatsInterval = AttributeRepresentation( display='Request Statistics Interval', dbKey='requestStatsInterval') sendStatsInterval = AttributeRepresentation( display='Send Statistics Interval', dbKey='sendStatsInterval') StatsCollectionSettings = AttributeRepresentation( display='Statistics Collection Settings', dbKey='statsCollectionSettings') EnableNVMf = AttributeRepresentation(display='Enable NVMf', dbKey='enableNVMf') EnableMultiTenancy = AttributeRepresentation( display='Enable Multi Tenancy', dbKey='enableMultiTenancy') DefaultUnitType = AttributeRepresentation(display='Default Unit Type', dbKey='defaultUnitType') @Utils.initializer def __init__(self, _id=None, clusterName=None, MAX_JSON_SIZE=None, RESERVED_BLOCKS=None, autoLogOutThreshold=None, cacheUpdateInterval=None, compatibilityMode=None, dateModified=None, daysBeforeLogEntryExpires=None, debugComponents=None, domain=None, enableDistributedRAID=None, enableLegacyFormatting=None, enableZones=None, fullClientReportInterval=None, fullTomaReportInterval=None, keepaliveGracePeriod=None, loggingLevel=None, requestStatsInterval=None, sendStatsInterval=None, statsCollectionSettings=None, enableNVMf=None, enableMultiTenancy=None, defaultUnitType=None): """**Initializes volume entity** :param _id: general setting's id, defaults to None :type _id: str, optional :param clusterName: the name of the cluster :type clusterName: str, optional :param MAX_JSON_SIZE: The size of the largest JSON message supported by the Management Server :type MAX_JSON_SIZE: int, optional :param RESERVED_BLOCKS: The percentage of reserved blocks at the start of a managed NVMe device :type RESERVED_BLOCKS: int, optional :param autoLogOutThreshold: The timeout of the GUI and API access (in milliseconds). After the timeout expires the GUI and API will automatically logout all logged in users :type autoLogOutThreshold: int, optional :param cacheUpdateInterval: The grace period, in milliseconds, since the last message from every component. When the grace period is over, the management server will declare that component as timedOut :type cacheUpdateInterval: int, optional :param compatibilityMode: Use the NVMesh version of dynamic libraries instead of the operating system versions to avoid compatibility issues :type compatibilityMode: bool, optional :param daysBeforeLogEntryExpires: The number of days the management logs are kept before rotation :type daysBeforeLogEntryExpires: int, optional :param debugComponents: List of debugComponents to turn in in logs :type debugComponents: dict, optional :param domain: The default domain :type domain: str, optional :param enableDistributedRAID: This option only affects the creation of EC volumes via the GUI, it does not affect creating EC volumes via RESTful API :type enableDistributedRAID: bool, optional :param enableLegacyFormatting: Determines whether to allow legacy formatting on metadata supported drives via the RESTful API :type enableLegacyFormatting: bool, optional :param enableZones: Enable zones :type enableZones: bool, optional :param fullClientReportInterval: The frequency of a full client report from the node machines to the management server :type fullClientReportInterval: int, optional :param keepaliveGracePeriod: The grace period, in milliseconds, since the last message from every component. When the grace period is over, the management server will declare that component as timedOut :type keepaliveGracePeriod: int, optional :param loggingLevel: The logging level of the Management Server, options: NONE, INFO, VERBOSE, DEBUG, ERROR, WARNING. :type loggingLevel: str, optional :param requestStatsInterval: The frequency of statistics updates from the node machines to the management server :type requestStatsInterval: int, optional :param sendStatsInterval: The interval of time passing after which the "phone home" statistics should be sent to excelero in ms :type sendStatsInterval: int, optional :param statsCollectionSettings: Cluster statistics :type statsCollectionSettings: dict, optional :param enableNVMf: Set default value of Enable NVMf for volume creation :type enableNVMf: bool, optional :param enableMultiTenancy: Set default value of Enable NVMf for volume creation :type enableMultiTenancy: bool, optional :param defaultUnitType: Set default unit type value (binary/decimal) :type defaultUnitType: str, optional """ pass
class VPG(Entity): """ Static class attributes to use with MongoObj * Id * Description * RaidLevel * Size """ Id = AttributeRepresentation(display='Name', dbKey='name') Size = AttributeRepresentation(display='Reserved Space', dbKey='capacity') Description = AttributeRepresentation(display='Description', dbKey='description') RaidLevel = AttributeRepresentation(display='RAID Level', dbKey='RAIDLevel') @Utils.initializer def __init__(self, name=None, RAIDLevel=None, capacity=None, VPG=None, _id=None, relativeRebuildPriority=None, description=None, diskClasses=None, serverClasses=None, limitByDisks=None, limitByNodes=None, numberOfMirrors=None, createdBy=None, modifiedBy=None, dateModified=None, dateCreated=None, isReserved=None, status=None, blocks=None, chunks=None, stripeSize=None, stripeWidth=None, dataBlocks=None, parityBlocks=None, protectionLevel=None, domain=None, uuid=None, blockSize=None, version=None, type=None, health=None, lockServer=None, serviceResources=None, isDefault=None): """**Initializes VPG entity** :param name: the name of the VPG :type name: str, optional :param RAIDLevel: the RAID level of the VPG, options: Concatenated, Striped RAID-0, Mirrored RAID-1, Striped & Mirrored RAID-10, Erasure Coding. :type RAIDLevel: str, optional :param capacity: space to allocate for the VPG :type capacity: int, optional :param VPG: the VPG to use :type VPG: str, optional :param description: description of the VPG, defaults to None :type description: str, optional :param diskClasses: limit volume allocation to specific diskClasses, defaults to None :type diskClasses: list, optional :param serverClasses: limit volume allocation to specific serverClasses, defaults to None :type serverClasses: list, optional :param numberOfMirrors: number of mirrors to use, required if RAIDLevel is Mirrored RAID-1 or Striped & Mirrored RAID-10., defaults to None :type numberOfMirrors: int, optional :param stripeSize: number in blocks of 4k, i.e. stripeSize:32 = 128k, required if RAIDLevel is Striped RAID-0 or Striped & Mirrored RAID-10 or Erasure Coding, optional, defaults to None :type stripeSize: str, optional :param stripeWidth: number of disks to use, required if RAIDLevel is Striped RAID-0 or Striped & Mirrored RAID-10, defaults to None :type stripeWidth: int, optional :param dataBlocks: number of disks to use, required if RAIDLevel is Erasure Coding, defaults to None :type dataBlocks: int, optional :param parityBlocks: number of disks to use, required if RAIDLevel is Erasure Coding, defaults to None :type parityBlocks: int, optional :param protectionLevel: protection level to use, defaults to None :type protectionLevel: str, optional :param domain: the domain of the volume, defaults to None :type domain: str, optional :param health: volume's health, defaults to None :type health: str, optional :param status: the status of the volume, defaults to None :type status: int, optional """ if hasattr(self, '_id'): self.name = self._id @staticmethod def getSchemaName(): return 'vpgEntity'