Solaris WBEM Services software provides WBEM services in the Solaris operating environment, including secure access and manipulation of management data. The product includes a Solaris provider that enables management applications to access information about managed resources (devices and software) in the Solaris operating environment.
The CIM Object Manager accepts connections from management applications that use either the Remote Method Invocation (RMI) protocol or the XML/HTTP protocol, and provides the following services to connected clients:
Management services – Are in the form of a CIM Object Manager that checks the semantics and syntax of CIM data and distributes data between applications, the CIM Object Manager Repository, and managed resources.
Security services – Specify these services for WBEM through the Solaris Management Console User tool. These services are described in System Administration Guide: Security Services.
SunTM WBEM User Manager – Use this tool to establish an access control list (ACL) for a specific namespace on the WBEM server. Sun WBEM User Manager enables you to add and delete authorized users, set access privileges for authorized users, and manage user authentication and access to CIM objects on a WBEM-enabled system. ACL-based security is uniquely provided by Solaris WBEM Services.
Logging services – Consist of classes that developers can use to create applications that dynamically record and retrieve event data. Administrators use this data to track and determine the cause of events. Logging services are described in more detail in the Solaris WBEM SDK Developer's Guide.
XML services – Convert XML data into CIM classes, enabling XML/HTTP-based WBEM clients to communicate with the CIM Object Manager.
Solaris WBEM Services software consists of three software components: Application, Management, and Provider. These components interact with the operating system and hardware. The following figure shows the software components and how they interact.
Application layer – WBEM clients process and display data from managed resources. Solaris WBEM Services includes the following applications.
Sun WBEM User Manager and Solaris Management Console User tool – Applications that allow system administrators to add and delete authorized users and to set these users' access privileges to managed resources.
Solaris Management Console Log Viewer – An application that displays log files. A user can view details of a log record, including the name of the user who issued a logged command and the client computer on which a logged event occurred.
Managed Object Format (MOF) compiler – A program that parses a file containing MOF statements, converts the classes and instances defined in the file to Java classes, and then adds the Java classes to the CIM Object Manager Repository, a central storage area for management data.
MOF is a language for defining CIM classes and instances. MOF files are ASCII text files that use the MOF language to describe CIM objects. A CIM object is a representation, or model, of a managed resource, such as a printer, disk drive, or CPU. MOF files are located in /usr/sadm/mof.
Many sites store information about managed resources in MOF files. Because MOF can be converted to Java, applications that can run on any system with a Java virtual machine can interpret and exchange this information. You can also use the mofcomp command to compile MOF files at any time after installation. MOF is described on the DMTF web page at http://www.dmtf.org.
Management layer – Components at this layer provide services to connected WBEM clients.
Common Information Model (CIM) Object Manager – Software that manages CIM objects on a WBEM system. CIM objects are stored internally as Java classes. The CIM Object Manager transfers information between WBEM clients, the CIM Object Manager Repository, and managed resources.
Client and CIM application programming interfaces (APIs) – WBEM client applications use these Java interfaces to request operations, such as creating or viewing classes or instances of managed resources, from the CIM Object Manager.
Provider interfaces – Providers use these interfaces to transfer information about managed resources to the CIM Object Manager. The CIM Object Manager uses the provider interfaces to transfer information to locally installed providers.
Provider layer – Providers act as intermediaries between the CIM Object Manager and one or more managed resources. When the CIM Object Manager receives a request from a WBEM client for data that is not available from the CIM Object Manager Repository, it forwards the request to the appropriate provider.
Solaris providers – Provide the CIM Object Manager with instances of managed resources in the Solaris operating environment. Providers get and set information on managed devices. A native provider is a machine-specific program written to run on a managed device. For example, a provider that accesses data on a system running the Solaris operating environment probably includes C functions to query that system. The Java Native Interface is part of the JDKTM software. By writing programs using the Java Native Interface, you ensure that your code is portable across all platforms. The Java Native Interface enables Java code that runs within a Java virtual machine to operate with applications and libraries written in other languages, such as C, C++, and assembly.
Solaris Schema – A collection of classes that describes managed objects in the Solaris operating environment. The CIM Schema and Solaris Schema classes are stored in the CIM Object Manager Repository. The CIM Schema is a collection of class definitions used to represent managed objects that occur in every management environment.
The Solaris Schema is a collection of class definitions that extend the CIM Schema and represent managed objects in a typical Solaris operating environment. Users can also use the MOF compiler (mofcomp) to add CIM Schema, Solaris Schema, or other classes to the CIM Object Manager Repository.
Operating system layer – The Solaris providers enable management applications to access information about managed resources (devices and software) in the Solaris operating environment.
Hardware layer – A management client can access management data on any supported Solaris platform.
One or more schemas can be stored in directory-like structures called namespaces. A CIM namespace is a directory-like structure that can contain other namespaces, classes, instances, and qualifier types. The names of objects within a namespace must be unique.
In Solaris WBEM Services, when a WBEM client application connects to a particular namespace, all subsequent operations occur within that namespace. When connected to a namespace, the client can access the classes and instances in that namespace (if they exist) and in any namespaces contained in that namespace. For example, if you create a namespace called child in the root\cimv2 namespace, you could connect to root\cimv2 and access the classes and instances in the root\cimv2 and root\cimv2\child namespaces.
An application can connect to a namespace within a namespace. This is similar to changing to a subdirectory within a directory. Once the application connects to the new namespace, all subsequent operations occur within that namespace. If you open a new connection to root\cimv2\child, you can access any classes and instances in that namespace but cannot access the classes and instances in the parent namespace, root\cimv2.
root – The top-level namespace that contains other namespaces.
root\cimv2 – Contains the default CIM classes and instances that represent objects on your system, such as, LogicalDisk and Netcard. This is the default namespace.
root\security – Contains the security classes used by the CIM Object Manager to represent access rights for users and namespaces.
root\snmp – Contains the classes for the SNMP Provider and the SNMP Adapter for WBEM.
root\system – Contains CIM Object Manager information and provider paths.
When a WBEM client application accesses CIM data, the WBEM system validates the user's login information on the current host. By default, a user is granted read access to the CIM Schema and the Solaris Schema. The CIM Schema describes managed objects on your system in a standard format that all WBEM-enabled systems and applications can interpret.
Providers are classes that communicate with managed objects to access data. Providers forward this information to the CIM Object Manager for integration and interpretation. When the CIM Object Manager receives a request from a management application for data that is not available from the CIM Object Manager Repository, it forwards the request to a provider.
The CIM Object Manager uses object provider APIs to communicate with providers. When an application requests dynamic data from the CIM Object Manager, the CIM Object Manager uses the provider interfaces to pass the request to the provider.
Map the native information format to CIM classes
Get information from a device
Pass the information to the CIM Object Manager in the form of CIM classes
Map the information from CIM classes to native device format
Get the required information from the CIM class
Pass the information to the device in native device format
A WBEM client and WBEM system can run on the same system or on different systems. Multiple WBEM clients can establish connections to the same WBEM system. For example, a WBEM system can serve four or five WBEM clients.
Solaris WBEM Services supports the Version 1.1 Specification for CIM Operations over HTTP. This specification uses XML to model CIM objects and messages. XML is a standard markup language for describing data on the Web. This standard extends XML markup to define CIM objects and operations. Because XML provides a standard way of describing data that can be sent across the Web, any WBEM client can access CIM data on any WBEM system that can parse XML data.