Operating System (OS) Deployment Profile Document Number: DCIM1035 Document Type: Specification Document Status: Published Document Language: E Date: 2012-10-25 Version: 1.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 ....................................................................................................... Error! Bookmark not defined. Introduction ................................................................................................................................................... 5 1 Scope .................................................................................................................................................... 7 2 Normative References.................
Figures Figure 1 – OS Deployment Profile: Class Diagram..................................................................................... 10 Figure 2 – OS Deployment Profile: Object Diagram ................................................................................... 22 Tables Table 1 – Related Profiles ............................................................................................................................. 9 Table 2 – JobStatus .................................................
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.
OS Deployment Profile 1 Scope The Operating System (OS) Deployment Profile extends the management capabilities of referencing profiles by adding the capability to represent OS deployment configuration features. The OS deployment feature consists of: • Provide the supported OS and version information from the embedded OS driver pack. • Unpack the OS Driver Update Package (DUP) and extract drivers for a specified OS; the drivers are placed on a local flash drive (NVRAM) or on a network share.
3.1 can used for statements of possibility and capability, whether material, physical, or causal 3.2 cannot used for statements of possibility and capability, whether material, physical, or causal 3.3 conditional indicates requirements to be followed strictly in order to conform to the document when the specified conditions are met 3.4 mandatory indicates requirements to be followed strictly in order to conform to the document and from which no deviation is permitted 3.
3.12 should not indicates that a certain possibility or course of action is deprecated but not prohibited 4 Symbols and Abbreviated Terms 4.1 CIM Common Information Model 5 Synopsis Profile Name: Operating System (OS) Deployment Version: 1.1.0 Organization: DCIM CIM Schema Version: 2.19.
6 Description The Operating System (OS) Deployment Profile describes the OS deployment configuration service, and the methods exposed to manage the service processor OS deployment features. The profile also describes the relationship of the OS Deployment Profile classes to DMTF and Dell profile version information. The interface for the OS deployment feature consists of the following functionality: • Identify the list of OS drivers.
7 Implementation Requirements Requirements and guidelines for propagating and formulating certain properties of the classes are discussed in this section. 7.1 DCIM_OSDeploymentService One instance of DCIM_OSDeploymentService shall be instantiated. 7.1.1 ElementName The value of ElementName shall be formulated using the following pattern: ElementName = “OSD” 7.2 CIM_ConcreteJob At most one instance of CIM_ConcreteJob shall be instantiated.
the network share. 8 “UnpackAndShare” Success Successfully executed the method. “UnpackAndShare” Failed Failed to execute the method, refer to MessageID and Message properties of the DCIM_OSDConcreteJob instance for detailed information. BootToNetworkISO Rebooting to ISO Attaching the network ISO image as a local CDROM to the host and booting to it. BootToNetworkISO Success Successfully executed the method.
Table 4 – DCIM_OSDeploymentService.GetDriverPackInfo() Method: Parameters Qualifiers Name Type Description/Values OUT (required) Version String NULL or version of the driver pack. OUT (required) OSList String[] NULL or contains the list of operating systems supported for this server. OUT (optional) Job CIM_ConcreteJob NULL or reference to a CIM_ConreteJob OUT (optional) MessageID String If the method fails to execute, the error message ID is returned.
8.3 Method: DCIM_OSDeploymentService.DetachDrivers() This method will detach the USB device containing the drivers from the host server. Return values for DetachDrivers() shall be as specified in Table 7, where the method-execution behavior matches the return-code description. DetachDrivers() method’s parameters are specified in Table 8 – DCIM_OSDeploymentService.DetachDrivers() Method: Parameters. Table 7 – DCIM_OSDeploymentService.
Table 10 – DCIM_OSDeploymentService.
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 If the method fails to execute, the error message ID is returned. OUT (optional) Message String If the method fails to execute, the error message in English is returned.
Table 17 – DCIM_OSDeploymentService.DownloadISOToVFlash() 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 18 – DCIM_OSDeploymentService.
Table 20 – DCIM_OSDeploymentService.BootToISOFromVFlash() Method: Parameters Qualifiers Name Type Description/Values IN (optional) ExposeDuration DateTime Identifies the amount of time (up to 18 hours) for the ISO image to be exposed as a local CD-ROM device to the host. OUT Job CIM_ConcreteJob REF Returned to keep track of OSD – UnpackAndShare job. OUT (optional) MessageID String If the method fails to execute, the error message ID is returned.
Table 23 – DCIM_OSDeploymentService.DeleteISOFromVFlash() Method: Return Code Values Value Description 0 Request was successfully executed. 1 Method is unsupported. 2 Error occurred. Table 24 – DCIM_OSDeploymentService.DeleteISOFromVFlash() Method: Parameters Qualifiers Name Type Description/Values OUT (optional) MessageID String If the method fails to execute, the error message ID is returned.
8.13 DCIM_OSDeploymentService Operations Table 25 lists operations that either have special requirements beyond those from DSP0200, or shall not be supported. Table 25 – DCIM_OSDeploymentService Operations Operation Requirement Messages EnumerateInstances Unspecified None EnumerateInstanceNames Unspecified None Associators Unspecified None AssociatorNames Unspecified None References Unspecified None ReferenceNames Unspecified None 8.
RegisteredProfile RegisteredProfile = “OS Deployment” OwningEntity = “DCIM” Version = 1.0.0 “interop” Namespace “root/dcim” Implementation Namespace DCIM_OSDeploymentService CIM_ConcreteJob GetDriverPackInfo() UnpackAndAttach() UnpackAndShare() BootToNetworkISO() BootToPXE() DetachISOImage() DetachDrivers() DownloadISOToVFlash() BootToISOFromVFlash() DetachISOFromVFlash() DeleteISOFromVFlash() Figure 2 – OS Deployment Profile: Object Diagram 9.
b. SupportedOperatingSystems = String array of OS names a. CIM_ConcreteJob 9.4 Unpack drivers and Attach to Host OS 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. 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. Method name = “UnpackAndAttach” c.
9.7 Boot to PXE 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. Method name = “BootToPXE” 9.8 Detach Drivers Following sequence of CIM Operations shall be used to detach the USB device containing the drivers from the host server. 1. Follow the steps (1,2,3) from 9.2 2. Follow the steps (2, 3) from 9.
4. Refer to dcim_osdeploy.mof for method input and out parameters and data types. 9.11 Detach ISO Image from vFlash Following sequence of CIM Operations shall be used to detach the ISO Image from vFlash that is attached as a CD-ROM device to host server. 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. Method name = “DetachISOFromVFlash” 9.
Table 27 – CIM Elements: OS Deployment Profile Element Name Requirement Description Classes DCIM_OSDeploymentService Mandatory See section 10.1 CIM_ConcreteJob Conditional See section 10.2 CIM_RegisteredProfile Mandatory See section 10.3 CIM_ElementConformsToProfile Mandatory See section 10.4 10.1 DCIM_OSDeploymentService DCIM_OSDeploymentService is used to provide a central class for the OS Deployment profile.
RegisteredVersion Mandatory This property shall have a value of “1.0.0”. RegisteredOrganization Mandatory This property shall have a value of 1 (Other). OtherRegisteredOrganization Mandatory This property shall match “DCIM” Version 1.1.
ANNEX A (informative) 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 ( "Reference to a CIM_ConcreteJob" )] CIM_ConcreteJob REF Job, [IN ( false ), OUT, Description ( "Error message ID part of the OSD message registry" )] string MessageID, [IN ( false ), OUT, Description ( "Description of error message in english part of the OSD message registry" )] string Message, [IN ( false ), OUT, Description ( "Substitution variables for the dynamic error messages" )] string MessageArguments[]); [Description ( "DetachDrivers.
string Message, [IN ( false ), OUT, Description ( "Substitution variables for the dynamic error messages" )] string MessageArguments[]); [Description ( "UnpackAndShare. This method will extract the drivers for the selected Operating System and copy them to the specified network share.
[IN, Description ( "IP address of the server that hosts the ISO Image" )] string IPAddress, [IN, Description ( "Share name of the server that hosts the ISO Image" )] string ShareName, [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 MACList[], [IN ( false ), OUT, Description ( "Error message ID part of the OSD message registry" )] string MessageID, [IN ( false ), OUT, Description ( "Description of error message in english part of the OSD message registry" )] string Message, [IN ( false ), OUT, Description ( "Substitution variables for the dynamic error messages" )] string MessageArguments[]); [Description ( "DownloadISOToVFlash. This method will download the ISO Image present on network share to VFlash.
[IN ( false ), OUT, Description ( "Error message ID part of the OSD message registry" )] string MessageID, [IN ( false ), OUT, Description ( "Description of error message in english part of the OSD message registry" )] string Message, [IN ( false ), OUT, Description ( "Substitution variables for the dynamic error messages" )] string MessageArguments[]); [Description ( "BootToISOFromVFlash. This method will expose the ISO Image present on VFlash as a CDROM device to the host server and boots to it.
[IN ( false ), OUT, Description ( "Description of error message in english part of the OSD message registry" )] string Message, [IN ( false ), OUT, Description ( "Substitution variables for the 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 { }; Versio
ANNEX B (informative) Items Considered but not Added to Profile 1. OSList *** Needs to be implemented by SW Inventory Provider? We will do this using the SupportedOS property on the SoftwareIdentity instance that represents the driver package. We will need to differentiate between drivers that may be capable and/or support the following: • Legacy • UEFI Each supported OS will be represented in the SupportedOS array property for each version of Legacy or UEFI. Version 1.1.