430 likes | 705 Views
WBEM & CIM. Web-Based Enterprise Management & Common Information Model. The Management Problem - Multiple Frameworks. The Vision of WBEM. Harness the power of the Web for management interoperation Build a Common Information Model for management
E N D
WBEM & CIM Web-Based Enterprise Management & Common Information Model
The Vision of WBEM • Harness the power of the Web for management interoperation • Build a Common Information Model for management • Integrate existing standards (SNMP, DMI, CMIP, etc)
About WBEM • The Distributed Management Task Force (DMTF) standard (http:www.dmtf.org) • WBEM unifies the management of enterprise computing environments • Delivers an integrated set of standardised management tools • API (components) for low development cost management application that communicate with WBEM-enabled devices
About CIM • Developed by the DMTF • Core set of standards that make up WBEM • Classifies and defines the parts of a networked environment and their relations • Captures notions that are applicable to all areas of management, independent of technology implementation • CIM is comprised of the CIM Specification and the CIM Schema
CIM Terms and Concepts • Object-oriented modelling • Diagrammatic concepts of the Uniform Modelling Language (UML) • Schema (model, framework), Class, Instance, Property, Method, Qualifier, Override, Association, Reference and Range
CIM Structure • Core Model • Common Model • Extension Schema • CIM Schema (core + common)
How it All Fits Together • CIM Object Manager (CIMOM) manages CIM objects on a WBEM-enabled system • WBEM client gets reference to the CIMOM • WBEM client accesses information about a CIM object from CIMOM • CIMOM contacts the provider for object, or the CIM Object Manager Repository
About Managed Object Format • MOF language is used to specify schema in CIM and WBEM • MOF compiler parses the file and adds the classes and instances defined in the file to the CIM Object Manager repository • MOF files can be converted to Java classes
About CIM WorkShop • Graphical user interface for viewing and creating classes and instances
WBEM Application Programming Interfaces (APIs) • WBEM applications request information or services from CIMOM through the API • APIs represent CIM objects as Java classes • Object = computer representation or model of managed resource (printer, HDD, CPU...) • Advantage of using CIM - objects can be shared across any CIM-compliant systems
API Packages • CIM APIs - javax.wbem.cim • Client APIs - javax.wbem.client • Provider APIs - javax.wbem.provider • Query APIs - javax.wbem.query
Provider API • CIMOM uses the Provider API package to pass the client’s request to the provider Providers perform following functions in response to a request from CIMOM • Map information from a managed device to CIM Java classes • Map the information from CIM Java classes to managed device format
WBEM Client Application • Client uses the CIM API to construct and initialise an object (namespace, class or instance) • Then uses the Client APIs to pass the object to the CIMOM and request a WBEM operation (creating a CIM namespace, class or instance)
Sample WBEM Client import java.rmi.*; import java.util.Enumeration; import javax.wbem.cim.CIMClass; import javax.wbem.cim.CIMException; import javax.wbem.cim.CIMInstance; import javax.wbem.cim.CIMNameSpace; import javax.wbem.cim.CIMObjectPath; import javax.wbem.cim.CIMProperty; import javax.wbem.cim.CIMValue; import javax.wbem.client.CIMClient; import javax.wbem.client.PasswordCredential; import javax.wbem.client.UserPrincipal;
public class WBEMsample { public static void main(String args[]) throws CIMException { CIMClient cc = null; // if not four arguments, show usage and exit if (args.length < 4) { System.out.println("Usage: WBEMSample host username " + "passwordd classname "); System.exit(1); } try { //args[0] contains the hostname.We create CIMNameSpace //(cns) pointing to the default namespace root\cimv2 on //the specified host CIMNameSpace cns = new CIMNameSpace(args[0]);
// args[1] and args[2] contain the username and password. // We create a UserPrincipal (up) using the username and // a PasswordCredential using the password. UserPrincipal up = new UserPrincipal(args[1]); PasswordCredential pc = new PasswordCredential(args[2]); // Connect to the CIM Object Manager and pass it the // CIMNameSpace, UserPrincipal and PasswordCredential //objects we created. cc = new CIMClient(cns, up, pc); // Get the class name (args[3]) and create a CIMObjectPath CIMObjectPath cop = new CIMObjectPath(args[3]); // Do a deep enumeration of the instances of the class Enumeration e = cc.enumerateInstances(cop, false, true, true, true, null);
// Print out all the instances of the class and its subclasses. while (e.hasMoreElements()) { CIMInstance ci = (CIMInstance)e.nextElement(); System.out.println(ci); } // end while } catch (Exception e) { // if we have an exception, catch it and print it out. System.out.println("Exception: "+e); } // end catch // close session. if (cc != null) { cc.close(); } } }
Types of Providers • Instance (dynamic instances retrieval, enumeration, modification, and deletion) • Property (dynamic property values) • Method (methods of one or more classes) • Association (instance of association classes) • Event (handle indications of CIM events)
Writing a Native Provider • Machine-specific program written to run on a managed device (ex. a C-language functions to query the Solaris system) Reasons for writing a native provider • Efficiency • Need to access platform-specific features • Legacy code
Handling CIM Events • CIM Event Model (indication-created as event’s result;CIM events are not published) • Triggers (the description of the change) can create instances of the class Indication • Event (occurs) --> WBEM provider (generates) --> indication (something happened in the system)
Creating a Subscription • Client application can subscribe to be notified of CIM events An application that subscribes for indications of CIM events describes: • The events in which it is interested. • The action that the CIM Object Manager must take when the events occur
SUMMARY • WBEM is a set of Internet standard technologies developed to unify the management of heterogeneous enterprise computing environments • The DMTF has developed a set of standards that make up WBEM: data model (CIM standard), encoding specification (xmlCIM), and transport mechanism (CIM Operations over HTTP)
DEN Directory Enabled Network Initiative
Current Approach System Management • System is a network element within a management domain • Element-focused and domain-centric • Data correlation imposed, not native • Element-based security
Problems with Current Approach • Does not scale in today’s networks • Islands of management – no data sharing
Next GenerationSystem Management • System is a network or network-wide service or application, end-to-end approach • Cross-domain management solutions • Information model defines abstract objects:– Logical networks, network services– Policies, relationships • Data correlation facilitated by info model • Network-wide security– Location/repository-transparent
DMTF DEN Management Vision • Scales well • No artificial islands of management • Interoperability – data sharing
Network services modelled in directory (network as a system) Directory objects represent:– Networks/subnets– Devices– Services– Applications– Users– Locations Relationships defined and managed in directory Management Vision - Continue
About DEN • The DMTF standard (http:www.dmtf.org) • DEN specification is mapping users to network services, and mapping business criteria to the delivery or network services • Enables applications and services to transparently use network infrastructure for benefit of user, empower end-to-end services, and support distributed network service creation, provisioning and management
What's the Aim of a DEN Standard Specification? • Centralised repository describing the relationship of users and applications to network services • Expected result - a generation of cross-domain network applications and services that are intelligent and self-managing
What Customer Problems does DEN Solve? • A lack of one standard model for functionality and management of network elements (DEN builds upon the DMTF's CIM) • A possibility to manage the network as a single system and provides interoperability, data sharing, and transparency of the data source for cross-domain solutions
What's the Main Purpose of a DEN Standard Specification? • For example, when a subscriber of an ISP asks for a service, that service must be delivered in an end-to-end fashion. This implies that the data of that service will span multiple vendors' network devices. DEN is a template for exchanging information that enables each vendor to have a common definition of the service but implement that service in their own way (thereby providing added value) The fundamental purpose is to create a standard information model and schema which enables vendors to provide interoperable network services
SUMMARY (1/2) • DEN is an initiative to develop a standard directory schema for heterogeneous networks providing interoperable directory services for networking • By defining the mapping of the CIM into an LDAP Directory, users are able to integrate their directory information into the overall enterprise management system
SUMMARY (2/2) • The information held in a directory enables the correlation of user and network resource status together to assist in the overall goal of providing Quality of Service in the e-business environment Useful links • http://www.dmtf.org/standards/standard_wbem.php • http://wbemservices.sourceforge.net • http://www.dmtf.org/standards/standard_cim.php • http://www.dmtf.org/standards/standard_den.php