Functional Specification

Template Version: 1.9
Modified: 09/20/05
Location: http://sac.eng/arc/Process/Projects/ARC-FuncSpec.html

Pegasus CIMOM  Functional Specification

1 Project Description

The project proposes to integrate the OpenPegasus CIM Server, an open source project under the Open Group, into OpenSolaris, supporting both x86 and SPARC platforms for both 32 and 64-bit architectures. The CIM Server will co-exist with existing WBEM Services on Solaris (LSARC/1998/372 ), posing no disruption to that service, but providing up-to-date WBEM support and acting as a migration/upgrade path for legacy clients and providers.

1.1 Definition

The following components are included that are essentially equivalent to the corresponding component in the existing Solaris WBEM services, with any functional or interface-related differences indicated in section 1.3:

The following components are included in addition to existing Solaris WBEM components:

The following components from existing Solaris WBEM services are not included, with support for these components contingent on additional efforts that are not part of this project (see section 1.3 for details):

1.2 Motivation, Goals, and Requirements

The general case for WBEM support in Solaris has been established in the original ARC case, and that product was proactively maintained in Solaris 8 and 9. However, support for evolution and updates for Solaris WBEM services has not kept up with CIM technology advances and market demand. In particular, Solaris WBEM is out of date in terms of the supported JDK, CIM Schema and CIM/XML version, and uses a non-standard Provider API.

Addressing this deficiency will prevent internal groups from either abandoning SMI-S support in their products or finding a third party alternative to license. Internal groups (Amber Road, HoneyComb, AppIQ, Sysnet, etc.) will be able to use the Pegasus APIs to develop providers and client applications. As well, various Solaris OEMs and customers have developed and are developing applications and infrastructure that can interoperate with WBEM, and updating the Solaris WBEM will strengthen our presence in this technology space.

In particular, by using the OpenPegasus CIM server, Sun can leverage the existing Open Pegasus community to provide product bug fixes and enhancements.

1.3 Changes From the Previous Release

This is a major change to the existing Solaris WBEM Services product (LSARC/1998/372 ), for the following reasons:

Feature

Existing WBEM Service

OpenPegasus WBEM Service

RMI port 5987

Supported

Not Supported

HTTP port 5988 Supported (though not enabled by default on OpenPegasus)
HTTPS port 5989 Not Supported

Supported

CIM Object Manager

Provided

MOF compiler

Provided

Client APIs

Provided

Provider APIs

Provided (although CMPI standard is provided only on Pegasus)

Indications APIs Not Provided

Provided

Solaris Providers

Provided

API modifications needed for support of existing Solaris providers, although generic providers are supported for operating system, Unix process and computer system information.
Solaris Schema Supported Recompile needed for support

WBEM SDK

Provided

WBEM object browser

CIM Workshop Basic command-line query of the OS provider
Security Infrastructure SSL SSL, PAM, RBAC

SNMP protocol adapter

Supported Not supported

MIB-to-MOF compiler

Supported

Not Supported

CMIP protocol adapter

Supported

Not Supported

CIM Standard

TBD

v2.3, v2.13.1 for the schema

MOF Standard

TBD

v2.3

XML Standard

TBD

v2.1

HTTP Standard

TBD

v1.1

CIM over HTTP Standard

TBD

v1.2.0

xmlCIM Standard

TBD

v2.2.0

CIM Repository LDAP Internal proprietary implementation
Process control (start, stop) via init.wbem via Service Management Facility (SMF)

1.4 Program Plan Overview

1.5 Related Projects

1.6 Competitive Analysis

The current CIMOM is out of date and as such is likely discouraging the development of client and provider software.  Alternative CIMOMs cost money.  The Pegasus CIMOM will be freely available and will also provide an external community to help with feature additions and bug fixes.

2 Technical Description

 

IPv6 is supported[9].

Additional standards, as given above in the interface tables, are as follows:

Standard Specification Version
MOF Language 2.3
Service Location Protocol v2
Secure Socket Layer 3.0
HTTP 1.1
XML DocumentType Definition 2.1

Pegasus will co-exist with Solaris WBEM Services, even though there is a port conflict regarding HTTP 5988.  This will be accomplished in the following manner:
  1. The Pegasus service will be disabled by default. In this case, SMC/WBEM will run and acquire port 5988 without problem.
  2. If Pegasus is enabled, the default configuration is to expose only 5989 (HTTPS). In this case, both SMC/WBEM and Pegasus will run concurrently without problem.
  3. The user has the option to configure Pegasus to expose 5988. If SMC/WBEM is already running when the user starts Pegasus, the Pegasus execution will terminate with a message around port conflict. If Pegasus is already running when the user starts SMC/WBEM, the SMC/WBEM execution will terminate with a message around port conflict. A workaround (see next scenario) will be described in the Pegasus Release Notes.
  4. The user has the option to start Pegasus on an alternate set of ports, i.e. the WBEM standard ports of 5988/5989 will not be used. In this case, both SMC/WBEM and Pegasus will run concurrently without problem.

2.6.3 Network Failures

A single required package will be delivered. It will install the Pegasus CIMOM, repository and related configuration and utility tools.

TBD