Class lstorage:ScsiLun (ABSTRACT)

Class ID:2065
Encrypted: false - Exportable: false - Persistent: true
Privileges: []
SNMP OID:

Encapsulates the storage requirements for a single SCSI LUN.

The user specifies whether the LUN should be accessed locally or remotely. Based on the requirements, the system automatically creates the SCSI LUN using one of the following methods:

When a single storage sub-system instance satisfies the user requirement, the system configures the LUN in that target sub-system. For example, the system may create the LUN over locally attached SAS disks because the user explicitly requested to create the LUN locally with a specific RAID configuration which is supported only on local disks.

Deploy SCSI LUN

The storage items are deployed in the following scenarios:
To pre-deploy a storage item, set the lstorage:Item:adminState property to "deploy". An error will be returned if the storage item does not support pre-deployment. In particular, ephemeral storage items cannot be pre-deployed.

Undeploy SCSI LUNs

LUN configuration is preserved in the storage sub-system if the "protectConfig" property is set to true. When a LUN is preserved, it can be subsequently reused. However, there are some restriction, as will be shown in the sections below.
LUN configuration is automatically deleted on ls:Server disassociation if the "protectConfig" property is set to false. See subclasses for additional details on how storage items are undeployed.


Naming Rules


DN FORMAT: 

[0] org-[name]/profile-[name]/

[1] org-[name]/tier-[name]/ls-[name]/profile-def/

[2] org-[name]/ls-[name]/profile-def/

                




Inheritance
policy:Item The base class for all objects contained by policy:Definition. Though no containment rules are specified here, by convention policy:Item must be contained by either policy:Definition or another policy:Item.
 ├
lstorage:Item An abstract base class to represent of a storage item provisionned by the user. Storage Technologies Multiple storage technologies are available as shown in the list below. Each storage technology may require a different set of properties for the provisioning. The lstorage:Item object is subclassed for each class of storage technology. SCSI block-...
 
 ├
lstorage:ScsiLun
 
 
 ├
lstorage:DasScsiLun Represents the storage requirements for a Direct Attach Storage LUN. Direct Attach Storage LUNs are configured in local disks, such as locally attached SAS disks connected to SCSI controllers. Local LUN Provisioning There are multiple options for provisioning local LUNs: Creating a {@link storage:LocalDiskConfigDef} MO under a {@link ls...

Events
                



Faults
                



Fsms
                



Properties Summary
Defined in: lstorage:ScsiLun
lstorage:AutoDeploy
          scalar:Enum8
autoDeploy  (lstorage:ScsiLun:autoDeploy)
           Indicates if the SCSI LUN should be automatically deployed at association. This determines the initial setting of the adminAction in the instance ref. Setting to undeployed provides a way to be able to set properties of the instance ref prior to deployment
lstorage:BootDevice
          scalar:Enum8
bootDev  (lstorage:ScsiLun:bootDev)
           Indicates if this SCSI LUN has been marked as a boot LUN in the Boot policy or boot definition (i.e. under lsboot:ADef).

Since multiple LUNs can be marked as a boot device in the boot policy, a server will not necessarily boot from a given LUN marked as bootable.

reference:Object lunDn  (lstorage:ScsiLun:lunDn)
           An object reference to the configured LUN.

This property is empty until the LUN is actually configured in the storage sub-system.
This property is not set when the containing lstorage:Profile is a template.

lstorage:LunMapType
          scalar:Enum8
lunMapType  (lstorage:ScsiLun:lunMapType)
           The type of OS that will use this storage item.

The system may optimize the LUN to get better better performance for a particular operating system. For example, this can be done by adjusting the block alignment on physical disk to be optimized for a particular file system. Specifies whether this LUN can be accessed by a single initiator or can be shared amongst multiple initiators.

When the user defines a storage profile templates, multiple ls:Server MOs can use the same storage profile template. In that case, each server will get an instantiated storage profile.

  • If the storage profile template includes a "shared" lstorage:ScsiLun, the LUN will be shared among all ls:Server using the template.
  • If the storage profile template includes a "non-shared" lstorage:ScsiLun, a new LUN will be created for each ls:Server.
For direct attach storage LUNs, sharing a LUN is possible with the possible constraints:
  • At most two servers can share a LUN
  • Both servers must be connected through a JBOD enclosure.
  • The JBOD enclosure must have dual-port SAS disks
  • With non-HA SCSI controllers, the SAS disks must be configured in JBOD mode (no RAID configuration). HA SCSI controllers may suppport shared LUNs with RAID configuration.
storage:Size
          scalar:Uint64
size  (lstorage:ScsiLun:size)
           NO COMMENTS
lstorage:StorageClass
          scalar:Enum8
storageClass  (lstorage:ScsiLun:storageClass)
           The transport class: "Direct Attach Storage" (DAS) or "Storage Area Network" (SAN).

Select "DAS" to specify the system should configure the LUN on local disk. Select "SAN" to specify the system should configure the LUN on a remote storage sub-system such as the UCS storage blade.
When this property is set to "unspecified", the system will automatically select a storage element that satisfies all other requirements. For example, the system might configure the LUN in a UCS storage blade because the user has requested specific data protection requirements that can only be satisfied on a particular UCS storage blade.

Defined in: lstorage:Item
lstorage:AdminState
          scalar:Enum8
adminState  (lstorage:Item:adminState)
           Specifies the administrative state of this storage item.

lstorage:ConfigIssues
          scalar:Bitmask64
configQualifier  (lstorage:Item:configQualifier)
           Specifies the details of the configuration issues
lstorage:ConfigState
          scalar:Enum8
configState  (lstorage:Item:configState)
           Specifies the configuration state of this storage item.

The value is set to "not-applied" when this Item belongs to a Storage Profile template.

naming:Name
          string:Basic
name  (lstorage:Item:name)
           NO COMMENTS
storage:UnitOperState
          scalar:Enum8
operState  (lstorage:Item:operState)
           Specifies the operational state of this storage item. The value is synchronized with the corresponding item on storage side after the item is deployed on storage system.

Defined in: mo:TopProps
mo:ModificationChildAction
          scalar:Bitmask32
childAction  (mo:TopProps:childAction)
          
reference:Object dn  (mo:TopProps:dn)
           The Distinguished Name (dn) unambiguously identifies an object in the system.
The dn provides a fully qualified path from the top of the object tree, all the way to the object. It is built as a sequence of relative names separated by the "/" character.
For example:
< ... dn = "sys/chassis-5/blade-2/adaptor-1" />
reference:RN rn  (mo:TopProps:rn)
           The Relative Name (rn) uniquely identifies an object within a given context.
Note that a dn is comprised of a sequence of relative names. For example, the context "sys/chassis-1/blade-1/adaptor-1/host-eth-2" can be thought of as the following expression:
dn = <root object>/{rn}/{rn}/{rn}/{rn}/{rn}.
The rn can then be used to identify the object (for instance, "adaptor-1") within the context:
<... rn ="../" />
mo:InstSaclType
          scalar:Bitmask8
sacl  (mo:TopProps:sacl)
           The system acl property for each Managed Object. br/> This property is a 8 bit mask and supports the following values :-
a: del
b: mod
c: addchild
d: cascade

By default all Managed Objects have the following permissions
a: del
b: mod
c: addchild
This property is persisted in the db. If this property has a value none
it means, the user has read only permissions on this object.
mo:ModificationStatus
          scalar:Bitmask32
status  (mo:TopProps:status)
           This property controls the life cycle of a managed object

Properties Detail

adminState

Type: lstorage:AdminState
Primitive Type: scalar:Enum8
Units: null
Encrypted: false
Access: admin
Category: TopLevelRegular
Property Validators:
Comments:
Specifies the administrative state of this storage item.

Constants
online 1 "online" means the storage item should be configured in the storage sub-system and can be used by the storage initiator. By default, the storage item is automatically configured when the service profile is associated.
offline 2 "offline" means the storage item should be put in an offline mode where it is no longer accessible from the initiator. This can be used for maintenance purpose. When the item is "offline". the data is not discarded and can be accessed immediately after setting the storage item back to "online".
undeployed 4 Specify the storage item should be configured immediately, even if the service profile is not associated. This value is used to pre-deploy storage items.

When the XML API user sets the value to "deploy", the system triggers an FSM to configure the LUN and then sets the value to "online".
It is not always possible to pre-deploy storage items. For example, local LUNs cannot be configured before service profile association. Specify the storage item should be undeployed. This is used for instance ref's. This allows the user to configure certain properties of the instance ref prior to deployment. It also allows the user to release a deployed LUN

DEFAULT online(1) "online" means the storage item should be configured in the storage sub-system and can be used by the storage initiator. By default, the storage item is automatically configured when the service profile is associated.

autoDeploy

Type: lstorage:AutoDeploy
Primitive Type: scalar:Enum8
Units: null
Encrypted: false
Access: admin
Category: TopLevelRegular
Property Validators:
Comments:
Indicates if the SCSI LUN should be automatically deployed at association. This determines the initial setting of the adminAction in the instance ref. Setting to undeployed provides a way to be able to set properties of the instance ref prior to deployment
Constants
auto-deploy 0 Specifies the SCSI LUN should be deployed automatically on association
no-auto-deploy 1 Specifies the SCSI LUN should not be deployed automatically on association. This allows the user to configure properties on the instance ref prior to deployment.
DEFAULT auto-deploy(0) Specifies the SCSI LUN should be deployed automatically on association

bootDev

Type: lstorage:BootDevice
Primitive Type: scalar:Enum8
Units: null
Encrypted: false
Access: implicit
Category: TopLevelRegular
Property Validators:
Comments:
Indicates if this SCSI LUN has been marked as a boot LUN in the Boot policy or boot definition (i.e. under lsboot:ADef).

Since multiple LUNs can be marked as a boot device in the boot policy, a server will not necessarily boot from a given LUN marked as bootable.

Constants
disabled 0 Indicates the SCSI LUN is not configured as a boot device
enabled 1 Indicates the SCSI LUN has been configured as a boot device in the boot policy.
DEFAULT disabled(0) Indicates the SCSI LUN is not configured as a boot device

childAction

Type: mo:ModificationChildAction
Primitive Type: scalar:Bitmask32
Units: null
Encrypted: false
Access: implicit
Category: TopLevelChildAction
Property Validators:
Comments:
Constants
deleteAll 16384u NO COMMENTS
ignore 4096u NO COMMENTS
deleteNonPresent 8192u NO COMMENTS
DEFAULT 0 This type is used to

configQualifier

Type: lstorage:ConfigIssues
Primitive Type: scalar:Bitmask64
Units: null
Encrypted: false
Access: oper
Category: TopLevelRegular
Property Validators:
Comments:
Specifies the details of the configuration issues
Constants
not-applicable 0ull NO COMMENTS
identity-assignment 128ull NO COMMENTS
unsupported-storage-capability 16ull NO COMMENTS
lun-id-conflict 1ull NO COMMENTS
missing-firmware-image 256ull NO COMMENTS
lun-capacity-exceeded 2ull NO COMMENTS
insufficient-lun-resources 32ull NO COMMENTS
lun-limit-exceeded 4ull NO COMMENTS
lun-ownership-conflict 64ull NO COMMENTS
storage-unavailable 8ull NO COMMENTS
DEFAULT not-applicable(0ull) NO COMMENTS

configState

Type: lstorage:ConfigState
Primitive Type: scalar:Enum8
Units: null
Encrypted: false
Access: implicit
Category: TopLevelRegular
Property Validators:
Comments:
Specifies the configuration state of this storage item.

The value is set to "not-applied" when this Item belongs to a Storage Profile template.

Constants
ok 0 NO COMMENTS
applied 1 NO COMMENTS
failed-to-apply 2 NO COMMENTS
applying 3 NO COMMENTS
DEFAULT ok(0) NO COMMENTS

dn

Type: reference:Object
Units: null
Encrypted: false
Access: implicit
Category: TopLevelDn
Property Validators:
Comments:
The Distinguished Name (dn) unambiguously identifies an object in the system.
The dn provides a fully qualified path from the top of the object tree, all the way to the object. It is built as a sequence of relative names separated by the "/" character.
For example:
< ... dn = "sys/chassis-5/blade-2/adaptor-1" />

lunDn

Type: reference:Object
Units: null
Encrypted: false
Access: implicit
Category: TopLevelRegular
Property Validators:
Comments:
An object reference to the configured LUN.

This property is empty until the LUN is actually configured in the storage sub-system.
This property is not set when the containing lstorage:Profile is a template.


lunMapType

Type: lstorage:LunMapType
Primitive Type: scalar:Enum8
Units: null
Encrypted: false
Access: admin
Category: TopLevelRegular
Property Validators:
Comments:
The type of OS that will use this storage item.

The system may optimize the LUN to get better better performance for a particular operating system. For example, this can be done by adjusting the block alignment on physical disk to be optimized for a particular file system. Specifies whether this LUN can be accessed by a single initiator or can be shared amongst multiple initiators.

When the user defines a storage profile templates, multiple ls:Server MOs can use the same storage profile template. In that case, each server will get an instantiated storage profile.

For direct attach storage LUNs, sharing a LUN is possible with the possible constraints:
Constants
non-shared 0 Specifies the SCSI LUN can be accessed by a single initiator.

The system configures the storage such that at most one initiator can access the LUN. For example, this could be implemented using FC zoning, FC LUN masking and/or iSCSI initiator groups.

shared 1 Specifies the SCSI LUN can be accessed by multiple initiators.

The system configures the storage such that multiple initiators can access the same LUN.
The topology and/or protocols may restrict which SCSI LUNs can be shared. For example, it is not possible to share a LUN configured over a local SATA disk since the disk has physical connectivity to a single server. SAS disks may be shared by at most two servers.

unassigned 2 NO COMMENTS
DEFAULT non-shared(0) Specifies the SCSI LUN can be accessed by a single initiator.

The system configures the storage such that at most one initiator can access the LUN. For example, this could be implemented using FC zoning, FC LUN masking and/or iSCSI initiator groups.


name

Type: naming:Name
Primitive Type: string:Basic
Like: naming:Named:name
Units: null
Encrypted: false
Access: admin
Category: TopLevelRegular
Property Validators:
    Range:  min: "0"  max: "16"
        Allowed Chars:
            Regex: [a-zA-Z0-9_.:-]+
Comments:
NO COMMENTS

operState

Type: storage:UnitOperState
Primitive Type: scalar:Enum8
Units: null
Encrypted: false
Access: implicit
Category: TopLevelRegular
Property Validators:
Comments:
Specifies the operational state of this storage item. The value is synchronized with the corresponding item on storage side after the item is deployed on storage system.

Constants
undefined 0 NO COMMENTS
online 1 NO COMMENTS
offline 2 NO COMMENTS
compute-inoperable 4 Block Boot & Install
compute-degraded 5 Allow Boot, Block Install
DEFAULT undefined(0) NO COMMENTS

rn

Type: reference:RN
Units: null
Encrypted: false
Access: implicit
Category: TopLevelRn
Property Validators:
Comments:
The Relative Name (rn) uniquely identifies an object within a given context.
Note that a dn is comprised of a sequence of relative names. For example, the context "sys/chassis-1/blade-1/adaptor-1/host-eth-2" can be thought of as the following expression:
dn = <root object>/{rn}/{rn}/{rn}/{rn}/{rn}.
The rn can then be used to identify the object (for instance, "adaptor-1") within the context:
<... rn ="../" />

sacl

Type: mo:InstSaclType
Primitive Type: scalar:Bitmask8
Units: null
Encrypted: false
Access: implicit
Category: TopLevelSacl
Property Validators:
Comments:
The system acl property for each Managed Object. br/> This property is a 8 bit mask and supports the following values :-
a: del
b: mod
c: addchild
d: cascade

By default all Managed Objects have the following permissions
a: del
b: mod
c: addchild
This property is persisted in the db. If this property has a value none
it means, the user has read only permissions on this object.
Constants
none 0 NO COMMENTS
del 1 NO COMMENTS
mod 2 NO COMMENTS
addchild 4 NO COMMENTS
cascade 8 NO COMMENTS
DEFAULT 0 NO COMMENTS

size

Type: storage:Size
Primitive Type: scalar:Uint64
Units: null
Encrypted: false
Access: admin
Category: TopLevelRegular
Property Validators:
    Range:  min: 1  max: 10240
Comments:
NO COMMENTS
Constants
defaultValue 1ull NO COMMENTS

status

Type: mo:ModificationStatus
Primitive Type: scalar:Bitmask32
Units: null
Encrypted: false
Access: implicit
Category: TopLevelStatus
Property Validators:
Comments:
This property controls the life cycle of a managed object
Constants
removed 16u In a setter method: specifies that an object should be removed.
In the return value of a setter method: indicates that an object has been removed.
created 2u In a setter method: specifies that an object should be created. An error is returned if the object already exists.
In the return value of a setter method: indicates that an object has been created.
modified 4u In a setter method: specifies that an object should be modified
In the return value of a setter method: indicates that an object has been modified.
deleted 8u In a setter method: specifies that an object should be deleted.
In the return value of a setter method: indicates that an object has been deleted.
DEFAULT 0 This type controls the life cycle of objects passed in the XML API.

When used in a setter method (such as configConfMo), the ModificationStatus specifies whether an object should be created, modified, deleted or removed.
In the return value of a setter method, the ModificationStatus indicates the actual operation that was performed. For example, the ModificationStatus is set to "created" if the object was created. The ModificationStatus is not set if the object was neither created, modified, deleted or removed.

When invoking a setter method, the ModificationStatus is optional:
If a setter method such as configConfMo is invoked and the ModificationStatus is not set, the system automatically determines if the object should be created or modified.


storageClass

Type: lstorage:StorageClass
Primitive Type: scalar:Enum8
Units: null
Encrypted: false
Access: implicit
Category: TopLevelRegular
Property Validators:
Comments:
The transport class: "Direct Attach Storage" (DAS) or "Storage Area Network" (SAN).

Select "DAS" to specify the system should configure the LUN on local disk. Select "SAN" to specify the system should configure the LUN on a remote storage sub-system such as the UCS storage blade.
When this property is set to "unspecified", the system will automatically select a storage element that satisfies all other requirements. For example, the system might configure the LUN in a UCS storage blade because the user has requested specific data protection requirements that can only be satisfied on a particular UCS storage blade.

Constants
san 1 Specifies the SCSI LUN must be configured over a Storage Area Network, such as a FC, FCoE or iSCSI capable storage array.

The initiator must have an adapter that supports remote access to the SCSI LUN.

das 2 Specifies the SCSI LUN should be configured locally over Direct Attach Storage.

For example, the LUN might be configured using a SCSI controller, over local SAS HDD or SSD drives in a rack server, or in a SAS-connected JBOD enclosure.

DEFAULT san(1) Specifies the SCSI LUN must be configured over a Storage Area Network, such as a FC, FCoE or iSCSI capable storage array.

The initiator must have an adapter that supports remote access to the SCSI LUN.