Post on 23-Dec-2015
Introduction toPegasus
An Open-SourceWBEM implementation
March 19 2001
Karl SchopmeyerChair Enterprise Management Forum
k.schopmeyer@attglobal.net
Agenda
What is Pegasus? Introduction to the Technologies
CIM and WBEM The CIM Manageability Environment
The Pegasus Architecture and Environment The Pegasus Project A Challenge for the Future
1. Overview1. Overview
What is Pegasus?
Pegasus is an open-source reference implementation of the DMTF WBEM specifications
Pegasus is a work project of the TOG Enterprise Management Forum
Pegasus is a platform for building application management
Why Produce Pegasus?
Demonstrate certain manageability concepts. Provide additional standards for WBEM Provide a working implementation of WBEM
technologies Provide an effective modular implementation Support other TOG manageability standards Base Platform for Open Group Application
management Projects
Major Objectives of The Project
Create standards and implemented solutions for an open architecture for manageability Use DMTF WBEM as basis for information and
interoperability Modular and componentized implementation Wide variety of platforms Integrate with other TOG standards such as AIC, ARM,
etc. Allow extensibility (pluggability)
New manageability resources, resource providers New manageability services Connectibility to wide variety of management systems.
The Working Group Philosophy
Manageability not management The working group’s objective is not to manage systems but
to make them manageable by promoting a standard instrumentation environment
The actual management of systems is left to systems management vendors
No standards without implementation The process of implementation provides a rigorous process
for testing the validity of standards Therefore all standards must be validated by
implementation
Major Objectives of Pegasus
Standards Based and Compliant DMTF CIM/WBEM
Interoperable DMTF cim-xml Interface
Efficient and Lightweight Implemented in C++
Portable NT, Linux, and others planned
Modular Replacable modules for function change and addition
Extensible Manageabilitys Service extensions
2. The 2. The TechnologiesTechnologies
CIM and WBEMCIM and WBEM
CMIPCMIPSNMPSNMP DMIDMI
WBEMWBEM
CIM-XMLCIM-XML
CIMCIM
1980s 1990s 2000
CIMCIM
The Progress of Management Standards
What is WBEM?
A major initiative of the DMTF
A set of management and internet standard technologies developed to unify the management of enterprise computing environments
WBEMWBEM
CIM-XMLCIM-XML
CIMCIM
What is CIM?
Implementation neutral schema for describing management information CIM facilitates the common understanding of
management data across different management systems
CIM facilitates the integration of management information from different sources
CIM is a data model, not an implementation model MOF syntax supports sharing of information across
management systems CIM provides models for both instrumentation and
management
CIM Available today
MetaModel
MOF Parser & Editor
Output•HTML•SQL•Visio•ASCII
ExtensionSchema
System
Device
Apps
Core
CIM Schema v2.5 (853 classes)
CIM Specification V2.5
DAPNetwork
User
Scope of the various CIM Schemas (total: 16) Core
Defines generic Managed Object Classes and concepts Other schemas define extensions by subclassing from Core
Systems & Devices Define the System, ComputerSystem, OperatingSystem, LogicalDevice and
PhysicalElement classes
Network/QoS Defines parameters for Networks, mechanism for dealing with QoS
Applications Defines application states, supports distribution, installation, updating, asset
tracking , monitoring, configuration, and control of distributed applications
Scope Of Schemas (cont)
Distributed Application Performance (DAP) / Metrics Defines performance metrics of distributed applications Continues Tivoli/HP work on Application Response Measurement
Users Service
Policy today
Web-based Enterprise Management (WBEM)
Information Model CIM Schema (Core, System,…)
Communication Model CIM Operations over HTTP
Transport Encoding Cim-xml – CIM/XML mapping
Event Model CIM indications (new in 2.5)
CIM Object Manager (CIMOM) Today: confined to a single host Distributed CIMOMs planned
Object Providers Instrumentation subagents
Management Applications
cim-xml Transport
CIM Object Manager
Object Providers
CMIP Objects
CMIP
SNMP MIBs
SNMP
DMI MIFs
RPC
CIM Objects
Internet
Schema
CIM Server
CIM Server
Managed Object Format (MOF)
CIMOM Capabilities
Respond to Operations defined in “CIM Operations” spec. Create, Modify, Delete operations on
Class, Instance, Property, Qualifier Handle Provider Registration Forward Requests to Providers, repositories, etc. Read/Write access to Management Information
Maintain Class/Instance Information Traversal of Associations Use of WBEM Query Language Syntax/Semantic checking (by means of Qualifiers) Available Implementations
Microsoft (in Windows2000), Sun WBEM SDK, SNIA, TOG MSB
3. Pegasus3. PegasusArchitecture and Architecture and
DesignDesign
Pegasus Architecture
ConsumersConsumersConsumersConsumers
ClientsClients
CIM ServerCIM Server
ConsumersConsumersConsumersConsumers
ProvidersProviders
CIM/HTTPInteroperable*
Interoperable* CIM/HTTP In-Process
ServicesServices
StandardInterfaces
The CIM Operations
ConsumersConsumersConsumersConsumers
ClientsClients
CIM ServerCIM Server
ConsumersConsumersConsumersConsumers
ProvidersProviders
CIM/HTTPInteroperable*
Interoperable* CIM/HTTP In-Process
ServicesServices
StandardInterfaces
Repository
CIMOperations
CIMOperations
Repository
IndicatorsIndicators
Key Interoperability Interfaces
CIM Object Manager
CIM Object Manager
CIM ProvidersCIM Providers
ApplicationApplication
Manageability to Manager•Multiple management systems•Common open manageability
Object Manager / Providers• Multiple Providers•Encourage common providers
Management System
Management System
EnterpriseManagement
Console
EnterpriseManagement
Console
ApplicationApplicationApplicationApplication
ApplicationApplication
Provider / Resource Interface•Protect Applications•Make application management easy
Key Characteristics
Open source Available Today
Portable Designed to build and run on wide variety of platforms
C++ core C++ CIM Objects C++ Operation/Provider/Service/Respsitory interfaces
Modular and extensible Modular components to extend the core Manageability service extensions to extend
functionality Light weight
Modularity and Extensibility
Providers Grow with DMTF provider concepts
Protocol Adapters (connectors) Client - Xml-cim today (Soap, etc. in future) Provider, service, repository, etc.
Modules Modularize core so it can be extended and modified
through attachable modules Manageability Service Extensions
Think super providers
Building A Manageability Environmnent
CoreObjectBroker
CoreObjectBroker
XML-CIM
ModuleModule
ModuleModule
ModuleModule
ModuleModule
ConnectorConnector
ProviderProvider
ConnectorConnector
ProviderProvider
ConnectorConnector
CIM ClientCIM ClientConnectorConnector
. . .
Resources Resources Resources
ServiceExtension
ServiceExtensionService
Extension
ServiceExtensionService
Extension
ServiceExtensionService
Extension
ServiceExtension
RepositoryRepository
Undefined
CIM ClientCIM ClientCIM ClientCIM Client
RepositoryRepository
RepositoryRepository
ServiceExtension
ServiceExtensionService
Extension
ServiceExtensionService
Extension
ServiceExtensionService
Extension
ServiceExtension
ManagementSystem Connector
ManagementSystem Connector
Pegasus Manageability Environment
CIM Object Broker Broker)•Provider Registration •Service Registration•Request Routing •Securiy
CIM Object Broker Broker)•Provider Registration •Service Registration•Request Routing •Securiy
Consumers
Providers
AICProvider
AICProvider
Apps OS Etc.
ARMProvider
ARMProvider
Resource
Providers
Broker
Consumers Gateways Apps
XML/CIMConnector
XML/CIMConnector
ManagementSystem Connector
ManagementSystem Connector
ApplicationConsumer
ApplicationConsumer
ClassRepository
ClassRepository
Services core*** additional
InterfaceFor Spec
CIMOMManagement
System
. . .SNMPProvider
SNMPProvider
ManagementSystem
ApplicationConsumer
ApplicationConsumer
ApplicationConsumer
ApplicationConsumer
InstanceRepository
InstanceRepository
Provider Interoperability
In the classical architecture, interoperability is only supported between the client and server.
In addition, the Pegasus architecture aims to support provider/server interoperability.
Goal Write a provider once and run it under any CIM server
implementation. Provider/Server Interoperability will be achieved in three ways:
Participating in efforts to standardize the Provider/Server protocol.
Proposing provider API standards. Writing adapters enabling Pegasus providers to run under other
CIM servers.
In-Process and Out-of-process Providers It will be possible to develop a provider and
compile it once and then configure it dynamically to run in-process (within the server process) or out of process (communicates with the server using either IPC or CIM/HTTP).
Modules
The core server components are organized into loadable modules.
Standard APIs are defined for each module. Alternative implementations can be
provided later without recompiling the Pegasus server.
Core Modules
Authentication module Thread module Traffic Encryption module
Thread Module Example
There will be a thread service: Pegasus will provide a thread service based
on ACE wrappers. Alternative thread services can be
implemented and plugged in.
Manageability Service Extensions
Super Providers Access to the Core Broker
Example Services
Event service. Query engine service. Class repository service. Instance repository service. Repository
Repository Service Example
One example of a core service is the repository. Pegasus provides a simple repository
implementation (based on disk files). An alternative repository based on a
commercial database may be implemented later.
Connectors
Functions Adapt to different protocols Adapt to other languages
Some Examples Xml-cim SUN Java C adapter Other Object Models WMI
ServiceExtension
ServiceExtensionService
Extension
ServiceExtensionService
Extension
ServiceExtensionService
Extension
ServiceExtension
RepositoryRepository
Pegasus Interfaces
Common Interface base for Clients, providers,
services, connectors Based on CIM
Operations over HTTP Additional functions for
each interface Interfaces separated
from implementation
CoreObjectBroker
CoreObjectBroker
ProviderProvider
ConnectorConnector
CIM ClientCIM ClientConnectorConnector
4. The Pegasus Project4. The Pegasus Project
Overview of the Project
Active project of the Enterprise Management Forum of the Open Group
Produce Pegasus open-source Implementation
Core, clients, providers, repositories SDKs (Provider and Client)
Documentation for use and development Specifications for major Interfaces
Continue support and growth of Pegasus Portability New functions New Standards requirements New Providers Tools
Pegasus Status Today
Phase 1 of 4+ Phases Effectively 0.8 release
Source Code available today Licenses with MIT open-source license
Preliminary documentation available Multiple users evaluating today Tested on Windows platforms and Linux
Pegasus Project Phases
Phase 1 (March 2001) Goals
Model Validation Client and Provider
development Basic Environment
Core model Cim-xml Operations Class and instance
repositories Providers
Phase 2 (May 2001) Goals
Production Code Additions
Threaded model Configuration Security Service Extensions Query Language
Phase 3 (June 2001) Events Extensions Remote Providers
Phase 4 (Unsure) Other extensions including
other Language Interfaces (ex. Java connector)
Participants
The Open Group BMC IBM Tvioli CA Hermes Softlab SIAC The Open Group Research Institute Focal Point
Additional Activities
Providers Clients Growth of functionality with DMTF
Discovery Provider standardization (registration,
interfaces) Next generation interoperability
Pegasus Manageability Environment
CIM Object Broker Broker)•Provider Registration •Service Registration•Request Routing
CIM Object Broker Broker)•Provider Registration •Service Registration•Request Routing
ARMProvider
ARMProvider
Resource
Providers
Broker
Consumers Gateways Apps
XML/CIMConnector
XML/CIMConnector
ClassRepository
ClassRepository
Serviceextensions
SecuritySecurity
InterfaceFor Spec
. . .AICProvider
AICProvider
Apps
ObjectBrowser Editor
ObjectBrowser Editor
InstanceRepository
InstanceRepository
SecurityEvents
Provider SDK
RemoteProvider
RemoteProvider
Provider SDK
Queuing
Client SDK
MOFCompiler
Pegasus and Other Manageability Projects AIC – Application and Control
AIC as a Pegasus Provider ARM – Applications Response Measurement
ARM and DMTF DAP Information as Pegasus Provider
Other possible Providers JMX (Java)
4. A 4. A Challenge for Challenge for all of usall of us
CIMOMs - Basic Concepts
Tool to create Management Interoperability Tool to create manageability interoperability Infrastructure for manageability Manageability interoperability
Xml-cim today, ??? Tomorrow Instrumentation Interoperability
Many providers, few CIMOMs Lots of applications – limited numbers of
providers
However
We do not make money off of infrastructure If we don’t have common interfaces we will
not have interoperability. CIM is not Easy. Creating complete and
Correct CIM environments is not easy There is a lot of work to do with a common
environment and much more with many different envrionments
The Alternatives
Creating a common interoperability environment Management – Manageability – xmp-cim Providers – APIs and protocols Provider building – Common object implementations
The choice Build a common structure with contributions Everybody does their own thing. (Many incompatible
and incomplete WBEM Implentations
openWBEM
Consortium to create common WBEM manageability
In fomative stages today About 10 involved organizations today
Sun, Compaq,IBM, Tivoli, Open Group, SNIA, Caldera, Novell, Nokia, Intel
Open Group Proposing to host
openWBEM Objectives
Create commonality between
implementations and integrate different implementations.
Create commonality between
implementations and integrate different implementations.
Create common interfaces and
APIs
Create common interfaces and
APIs
Create a library of providers and tools
Create a library of providers and tools
Create an environment of open-
source WBEM implementations
Create an environment of open-
source WBEM implementations
Create an environment of conformance
Create an environment of conformance
openWBEMopenWBEM
The Challenge!!!
Can we create a common WBEM infrastructure?
OR do we all go our own way?
Where to Get More Information
Pegasus is public www.opengroup.org/management/pegasus
Pegasus WEB Site Source Code
Builds on Linux and Windows Snapshots and CVS
Binary Release (end of March) Documentation Pegasus Working Group
Contributors and Users of the Code are WelcomeContributors and Users of the Code are Welcome