Dell™ OS Deployment CIM Profile Document Number: DELL1035 Document Type: Specification Document Status: Draft Document Language: E Date: 2009-08-28 Version: 1.
THIS PROFILE IS FOR INFORMATIONAL PURPOSES ONLY, AND MAY CONTAIN TYPOGRAPHICAL ERRORS AND TECHNICAL INACCURACIES. THE CONTENT IS PROVIDED AS IS, WITHOUT EXPRESS OR IMPLIED WARRANTIES OF ANY KIND. ABSENT A SEPARATE AGREEMENT BETWEEN YOU AND DELL™ WITH REGARD TO FEEDBACK TO DELL ON THIS PROFILE SPECIFICATION, YOU AGREE ANY FEEDBACK YOU PROVIDE TO DELL REGARDING THIS PROFILE SPECIFICATION WILL BE OWNED AND CAN BE FREELY USED BY DELL. © 2008 – 2009 Dell Inc. All rights reserved.
CONTENTS Foreword ....................................................................................................................................................... 5 Introduction ................................................................................................................................................... 6 1 Scope ....................................................................................................................................................
Figures Figure 1 – OS Deployment Profile: Class Diagram..................................................................................... 10 Figure 2 – OS Deployment Profile Object Diagram .................................................................................... 18 Tables Table 1 – Related Profiles ............................................................................................................................. 9 Table 2 – JobStatus .................................................
Foreword The Dell OS Deployment Profile (DELL1035) was prepared by Dell Engineering. This CIM profile integrates into other CIM profiles published by Dell and the DMTF. Version 1.0.
Introduction The information in this specification and referenced specifications should be sufficient for a provider or consumer of this data to identify unambiguously the classes, properties, methods, and values that shall be instantiated and manipulated to represent and manage the OS Deployment feature of managed systems and subsystems that are modeled using the DMTF CIM core and extended model definitions.
1 1 OS Deployment Profile Scope The OS Deployment Profile extends the management capabilities of referencing profiles by adding the capability to represent OS Deployment feature configuration of the Dell Lifecycle Controller. The OS Deployment feature consists of: Provide supported OS’s and version information from the embedded OS driver pack Unpack the OS Driver Update Package and extract drivers for a specified OS. The drivers are placed on a CIFS or NFS network share.
3.1 conditional indicates requirements to be followed strictly in order to conform to the document when the specified conditions are met 3.2 mandatory indicates requirements to be followed strictly in order to conform to the document and from which no deviation is permitted 3.3 may indicates a course of action permissible within the limits of the document 3.4 optional indicates a course of action permissible within the limits of the document 3.
The OS Deployment Profile extends the management capability of the referencing profiles by adding the capability to support OS deployment activities by manipulating the OS Deployment features provided by the Lifecycle Controller. These features include: Provide supported OS’s and version information from the embedded OS driver pack. Unpack the OS Driver Update Package and extract drivers for a specified OS. The drivers are placed on a CIFS or NFS network share.
Figure 1 represents the class schema for the OS Deployment Profile. For simplicity, the prefix CIM_ has been removed from the names of the classes that are standard DMTF classes. The OS Deployment feature in a service processor is represented by the instance of the DCIM_OSDeploymentService class. The DCIM_OSDeploymentService has extrinsic methods for accomplishing the various OS deployment features described above.
7.2.1 Name The value of Name shall be formulated using the following pattern: Name = “DCIM_OSDeploymentService.ExtrinsicMethodName”, ex: Name=”UnpackAndAttach” CIM_ConcreteJob reference returned as an output of DCIM_OSDeploymentService.UnpackAndAttach, shall have the following Name; CIM_ConcreteJob.Name = “UnpackAndAttach” CIM_ConcreteJob reference returned as an output of DCIM_OSDeploymentService.UnpackAndShare, shall have the following Name; CIM_ConcreteJob.Name = “UnpackAndShare”.
8 Methods This section details the requirements for supporting extrinsic methods for the CIM elements defined by this profile. 8.1 Method: DCIM_OSDeploymentService.GetDriverPackInfo() The GetDriverPackInfo method returns the list of operating systems that can be installed on the server using the embedded device drivers present in the Dell Lifecycle Controller product.
Table 5 – DCIM_OSDeploymentService.UnpackAndAttach() Method: Return Code Values Value Description 0 Request was successfully executed. 1 Method is not supported in the implementation. 2 Error occurred. 4096 Job started: REF returned to started CIM_ConcreteJob Table 6 – DCIM_OSDeploymentService.
8.4 Method: DCIM_OSDeploymentService.UnpackAndShare() UnpackAndShare method will extract the drivers for the selected operating system, and copy them to the specified network share. Return values for UnpackAndShare() shall be as specified in Table 4, where the method-execution behavior matches the return-code description. UnpackAndShare ( ) method’s parameters are specified in Table 6 – DCIM_OSDeploymentService.UnpackAndAttach() Method: Parameters. No standard messages are defined for this method.
Table 11 – DCIM_OSDeploymentService.BootToNetworkISO() Method: Return Code Values Value Description 0 Request was successfully executed. 1 Method is not supported in the implementation. 2 Error occurred. 4096 Job started: REF returned to started CIM_ConcreteJob Table 12 – DCIM_OSDeploymentService.
Table 13 – DCIM_OSDeploymentService. DetachISOImage() Method: Return Code Values Value Description 0 Request was successfully executed. 1 Method is unsupported. 2 Error occurred. Table 14 – DCIM_OSDeploymentService. DetachISOImage() Method: Parameters Qualifiers Name Type Description/Values OUT (optional) MessageID String Error MessageID is returned If the method fails to execute.
The default list of operations is as follows: GetInstance EnumerateInstances EnumerateInstanceNames Associators AssociatorNames References ReferenceNames A compliant implementation shall support all of the operations in the default list for each class, unless the “Requirement” column states something other than Mandatory. 8.9 DCIM_OSDeploymentService Operations Table 17 lists operations that either have special requirements beyond those from DSP0200, or shall not be supported.
9.1 Object Diagram Figure 2 represents a possible instantiation of the OS Deployment Profile, including advertising the profile. The object diagram in Figure 2 shows how an instance of CIM_RegisteredProfile is used to identify the version of the OS Deployment profile with an instance of DCIM_OSDeploymentSerivce, and its associated instances are conformant. For simplicity, the prefix CIM_ has been removed from the names of the standard classes in the figure.
a. object path = object path returned from 9.3.3 b. Method name = “GetDriverPackInfo” 5. Invoke method shall return the following output parameters a. Version = String version b. SupportedOperatingSystems = String array of OS names a. CIM_ConcreteJob 9.4 Unpack drivers and Attach to Host OS The following sequence of CIM Operations shall be used to unpack drivers for the selected OS to a local partition, and attach the partition to the Host OS: 1. Follow the steps (1,2,3) from 9.2 2.
3. Invoke extrinsic method using the following parameters a. object path = object path returned from 9.3.3 b. Method name = “BootToNetworkISO” 4. Please refer to dcim_osdeploy.mof for method input and out parameters and their data types. 9.7 Boot to PXE The following sequence of CIM Operations shall be used to boot to a PXE: 1. Follow the steps (1,2,3) from 9.2 2. Follow the steps (2, 3) from 9.3 3. Invoke extrinsic method using the following parameters a. object path = object path returned from 9.3.3 b.
10 CIM Elements Table 19 shows the instances of CIM Elements for this profile. Instances of the CIM Elements shall be implemented as described in Table 19Table . Section 7 “Implementation Requirements” and “Methods” may impose additional requirements on these elements. Table 19 – CIM Elements: OS Deployment Profile Element Name Requirement Description DCIM_OSDeploymentService Mandatory See section 10.1 CIM_ConcreteJob Conditional See section 10.2 CIM_RegisteredProfile Mandatory See section 10.
10.3 CIM_RegisteredProfile The CIM_RegisteredProfile class is defined by the Profile Registration Profile. The requirements denoted in Table 22Table are in addition to those mandated by the Profile Registration Profile. Table 22 – Class: CIM_RegisteredProfile Properties Requirement Description RegisteredName Mandatory This property shall have a value of “OS Deployment”. RegisteredVersion Mandatory This property shall have a value of “1.0.0”.
ANNEX A Change Log Version 0.0.0 Date 01/20/2009 Description Initial Draft. 0.1.0 03/03/09 Simplified CIM Model with extrinsic methods 0.3.0 04/09/09 Added 2 new extrinsic methods 0.4.0 08/19/09 Updated based on the latest MOF 1.0.0 08/25/09 Finalized for publication Version 1.0.
ANNEX B DCIM Extension MOF // ================================================================== // DCIM OS Deployment classes and methods // ================================================================== [ provider ("cmpi:dcimosdeploy"), Description ( "DCIM_OSDeploymentService is a Dell extension of CIM_Service. This class supports several extrinsic methods to support remote Operating System deployment.")] class DCIM_OSDeploymentService : CIM_Service { [Description ( "GetDriverPackInfo().
[IN ( false ), OUT, Description ( "Error message ID - can be used to index into Dell Message Registry files" )] string MessageID, [IN ( false ), OUT, Description ( "Completed error message in English" )] string Message, [IN ( false ), OUT, Description ( "Substitution variables for dynamic error messages" )] string MessageArguments[]); [Description ( "DetachDrivers. This method will detach the USB device containing the drivers from the host server.
[Description ( "UnpackAndShare. This method will extract the drivers for the selected Operating System and copy them to the specified network share.
[IN, Description ( "ISO Image name on the server" )] string ImageName, [IN, Description ( "Type of the share" ), ValueMap { "0", "2"}, Values { "NFS", "CIFS" }] uint16 ShareType, [IN, Description ( "Username of the account to access the share" )] string Username, [IN, Description ( "Password of the account to access the share" )] string Password, [IN, Description ( "Workgroup of the account to access the share" )] string Workgroup, [IN, Description ( "Type of Hash algorithm used to compute checksum" ), Valu
"Complete error message in English" )] string Message, [IN ( false ), OUT, Description ( "Substitution variables for dynamic error messages" )] string MessageArguments[]); }; [ provider("cmpi:dcimosdeploy") ] class DCIM_OSDConcreteJob : CIM_ConcreteJob { string MessageID; string Message; string MessageArguments[]; }; [ provider("cmpi:dcimosdeploy") ] class DCIM_OSDElementConformsToProfile : CIM_ElementConformsToProfile { }; 28 Dell Confidential Version 1.0.