The Role of Industry Standards for the Administration of Global System Landscapes Dr. Gregor Karl Frey SAP, NW Operations Infrastructure Introduction The Need for Standards Process: ITIL Model: CIM API: JMX Protocol: WS-Management Why Standards are not Enough The NetWeaver Administrator and its Partner Strategy Typical IT-Scenario: Service Level Management An IT-Service Center, which runs a portal for Employee Self Services, has contractually agreed with its customer, that The portal is available every weekday, from 8:00 AM to 5:00 PM For at least 90% of the time With a maximal login time of 5 sec For 2000 concurrent users. To fulfill such an Service Level Objective (SLO) The required hardware and software capacity must be determined (Capacity Management) The metrics related to the SLO must be monitored and recorded (Availability Management) The configuration of the software must be changed according to needs (Configuration Management) The downtime for the application of patches and upgrades must be planed (Release Management) SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Typical IT-Scenario: Root Cause Analysis An IT-User reports that the Employee Self Service System Responds not fast enough Shows an error, when a certain transaction is executed Does not log her in As a consequence the IT-Service Center Verifies the availability of the required resources Controls and compares configuration data Checks all response-time related monitoring records Searches for critical errors in log-files Sets up a test system with a higher trace level to replay the scenario SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Introduction The Need for Standards Process: ITIL Model: CIM API: JMX Protocol: WS-Management Why Standards are not Enough The NetWeaver Administrator and its Partner Strategy Managed Objects Storage Access Control List Firewall Certificates Load Balancer Telecom Devices Network Printer File system Desktop Software Database Licenses Application Server Middleware Business Application Chipset Web Service Appliance Operating System Network Accelerator User … SAP AG 2005, Title of Presentation / Speaker Name / ‹#› World Wide System Landscape SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Distributed Business Processes Order Process Business Processes depend not only on internal but additionally on external services The IT-service center is responsible for the whole process SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Cascading of Help Desks Incident Customer SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Incident Incident Analysis from Customer Analysis from Customer & SAP SAP Partner Industry Standards Metrical System Paper Sizes Character Encoding C, C++, C# HTML HTTP TCP/IP XML Web Service POP3 Ethernet GSM WiFi UMTS Public Key Cryptography SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Introduction The Need for Standards Process: ITIL Model: CIM API: JMX Protocol: WS-Management Why Standards are not Enough The NetWeaver Administrator and its Partner Strategy What is ITIL? ITIL is a reference model for all management processes of IT-services. creates a common vocabulary for describing IT-services, consisting of its glossary of tightly defined terms is a series of books published by the OGC (Office of Government Commerce), formerly CCTA (Central Computer and Telecommunications Agency) is supported by the British Standards Institution for IT service Management (BS15000) SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Advantages of ITIL 1. Make quality improvements measurable. ITIL defines Key Performance Indicators (KPIs) 2. IT-Processes are intentionally designed. They become flexible and transparent. 3. All IT-Processes are aligned and consistent. 4. ITIL provides a terminological standard. 5. Internal communication as well as the communication to and from end-users and customers is integral part of the itprocesses. Increased customer satisfaction. SAP AG 2005, Title of Presentation / Speaker Name / ‹#› ITIL Framework Planning of the Implementation of Service Management Service Support ICT Infrastructure Management (ICTIM) Business Perspective Service Delivery Security Application Management SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Technology Business Service Management Service Delivery The Service Delivery is concerned with the pro-active services that the business requires of its ICT provider in order to provide adequate support to the business users. The discipline consists of the following processes: Service Level Management Capacity Management IT Service Continuity Management Availability Management Financial Management SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Service Support The service support ensures that the customer has access to the appropriate services to support the business functions. The discipline consists of the following processes: Service Desk Incident Management Problem Management Change Management Release Management Configuration Management SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Introduction The Need for Standards Process: ITIL Model: CIM API: JMX Protocol: WS-Management Why Standards are not Enough The NetWeaver Administrator and its Partner Strategy What is CIM? CIM is an implementation neutral model for the description of management information defines schemas of managed objects in the real world facilitates the integration of management information from different sources object-oriented model with relational aspects (keys) SAP AG 2005, Title of Presentation / Speaker Name / ‹#› CIM Schema Overview Extension Models Core Model CIM Schema Syntax Rules Meta-Schema CIM Specification SAP AG 2005, Title of Presentation / Speaker Name / ‹#› User System Support Policy Physical Networks Metrics Events Interoperability Device Database Application Common Models Technology- and Vendor-specific extensions CIM Meta-Model CIM objects are instances of classes CIM objects possess a key (single or multi-valued) SAP AG 2005, Title of Presentation / Speaker Name / ‹#› J2EE Application Server Model J2EE_EJB System J2EE_ResourcesOnServer Service * J2EE_Resource J2EE_DeployedObject (Abstract) 1 * J2EE_Server 0..1 1 1 * 1 J2EE_ModulesOnServer * J2EE_ServerProcesses 1..n Process DeploymentDescriptor: string J2EE_DeployedObjectsOnServer Vendor: string Version: string J2EE_Module J2EE_ServiceComponent 1 J2EE_Application * J2EE_AppsOnServer SAP AG 2005, Title of Presentation / Speaker Name / ‹#› J2EE_Servlet Database Model Based on RFC 1697 (RDBMS MIB) FileSystem EnabledLogicalElement (See Core Model) * DatabaseStorageArea StorageExtent (See Core Model) 1 PersistenceType : enum OtherPersistenceType : string NumberOfFiles : uint32 Recoverable : enum IsSystemArea : boolean Recoverable : enum LastBackup : datetime DatabaseSegment CommonDatabase InstanceId: string {key} DatabaseVersion: string SizeAllocated: uint32 SizeUnits: uint16 {enum} LastBackup: datetime 1 DatabaseStorageAreaSegment HeaderFileName : string OtherPurpose : string NextExtentSize : uint64 MinimumExtents : uint64 {units=Bytes} MaximumExtents : uint64 {units=Bytes} PercentIncrease : uint16 NumberOfFreeLists : uint32 1 Service (See Core Model) ServiceAvailableToDatabase DatabaseService * * AssociatedDatabaseSystem 1..n DatabaseFile DatabaseSystem * SAP AG 2005, Title of Presentation / Speaker Name / ‹#› (See Core Model) DatabaseStorage (See System Model) StartupTime: datetime OperationalStatus: uint16 {enum} LastStatusChangeTime: datetime ConnectionLimit: uint32 ServiceAvailableToDatabase * LogicalFile * ApplicationSystem (See Application Model) AvailableState: uint16 {enum} OtherAvailableState: string ActiveTime: datetime MOF Example [Version ( "2.8.0" ), Description ( Qualifiers "CIM_J2eeApplication identifies a J2EE application that resides " "on a J2ee Server.")] class CIM_J2eeApplication : CIM_ApplicationSystem { [Override ( "Name" ), Description ( Class Name "The name of a J2EE Application. The name MUST be " "constructed using the form specified in JSR77.3.1.1.1 in " "order to avoid the need for manual key propagation."), MaxLen ( 256 ), MappingStrings { "JSR77.JCP|JSR77.3.1.1.1 objectName|V1.0" }] string Name; [Description ( "Contains the original XML deployment descriptor that was " "created for this application during the deployment process."), MappingStrings { "JSR77.JCP|JSR77.3.5.0.1 " "deploymentDescriptor|V1.0" }] string DeploymentDescriptor; }; SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Properties Visio Demo SAP AG 2005, Title of Presentation / Speaker Name / ‹#› WMI CIM Studio Demo SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Introduction The Need for Standards Process: ITIL Model: CIM API: JMX Protocol: WS-Management Why Standards are not Enough The NetWeaver Administrator and its Partner Strategy What is JMX? JMX is an infrastructure specification for managing business applications, services and devices written in Java, and is divided into Instrumentation level Agent level Distributed services level JMX does not specify an object model, such as CIM JMX does not include tool specifications JMX allows remote access through separately defined management protocols SAP AG 2005, Title of Presentation / Speaker Name / ‹#› JMX Architecture Distributed Services Level Proprietary Management Application Web Browser Proprietary Management Application C JMX Manager C PA C C Agent Level Mbean Server Agent Services Resource 1 (MBean) Instrumentation Level Host 1 SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Resource 2 (MBean) Host 2 MBeans Managed Beans (MBeans) are proxies for managed objects such as business applications, services and devices MBeans define At least one constructor Getter and Setter methods Operations Notifications MBeans are accessible through MBean Servers in a uniform fashion but can be implemented in four different ways: Standard MBeans Dynamic MBeans Open MBeans Model MBeans SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Example for a MBean public interface LoadStatisticsMBean { public int getNumberOfUsers(); public class LoadStatistics implements LoadStatisticsMBean { public int getNumberOfRequests(); public int getNumberOfUsers(){ return numberOfUsers; } public double getAverageRequestTime(); public long getAverageSessionSize(); public int getNumberOfRequests() { return numberOfRequests; } } public double getAverageRequestTime() { return averageRequestTime; } public long getAverageSessionSize() { return averageSessionSize; } } SAP AG 2005, Title of Presentation / Speaker Name / ‹#› The MBean Server MBeans are registered under an object name An object name has the form: [<domain name>]:<property>=<value> (,<property>=<value>)* Object names can contain wildcards *, ?. Example: *:description=printer, type=laser, * MBeans are (instantiated and) registered with object names which have to be unique within one MBean Server MBeans can be queried using An object name with wildcards, called the scope Additional criteria referring to MBean attributes SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Example Registration with MBeanServer MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); ObjectName name1 = new ObjectName("example1:type=LoadStatistics"); LoadStatistics load = new LoadStatistics(); mbs.registerMBean(load, name1); Demo Start Eclipse Start JConsole SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Introduction The Need for Standards Process: ITIL Model: CIM API: JMX Protocol: WS-Management Why Standards are not Enough The NetWeaver Administrator and its Partner Strategy What is WS-Management? WS-Management defines a SOAP-based protocol for Systems Management Is a profile – a collection of references to other composable specs: WS-Addressing, WS-Eventing, WS-Transfer and WSEnumeration Specifies extensions to and restricts how these protocols can be used Designed to scale down to small-devices Defined over existing standards – HTTP/S, TCP/IP, TLS, XML, URI, SOAP Designed to be Information Model-agnostic - compatible with the CIM Object Model SAP AG 2005, Title of Presentation / Speaker Name / ‹#› WS-Management: Architecture (2) * MTOM: SOAP Message Transmission Optimization Mechanism SAP AG 2005, Title of Presentation / Speaker Name / ‹#› WS-Management Operations Typical systems management operations Discover the presence of manageable resources Get, Update and Delete properties of managed resources Create references to manageable resources Enumerate the contents of containers and collections such as large tables and logs Subscribe to events emitted by managed resources Execute specific management methods SAP AG 2005, Title of Presentation / Speaker Name / ‹#› WS-Transfer Get Get Response Get Manager 1. <CIM_Processor> 1. <Envelope> 2. 1. <Envelope> <Family>165</Family> 2. <Header> 3. 2. <DeviceID>CPU0</DeviceID> <Header> <To>http://sap_server/wsman</To> 4.3.3. <OtherFamilyDescriptor>”Intel ® Xeon (TR)”</OtherFamilyDescriptor> <To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonimous</To> 4. <ResourceURI>wsman://……../Processor</ResourceURI> 5. 4. <MaxClockSpeed >3000</MaxClockSpeed> <Action>http://schemas.xmlsoap.org/ws/2004/09/transfer/GetResponse</Action> 5. <Action>http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</Action> 6. 5. <CurrentClockSpeed>3000</CurrentClockSpeed> <RelatesTo>uuid:91c167fb-2c3a-4F1A-8d59-01b0c18a0723</RelatesTo> 6. <SelectorSet> 7. 6. <DataWith>32</DataWith> </Header> <Selector Name=“DeviceID”>CPU0</Selector> 8.7. <AddressWith>32</AddressWith> </SelectorSet> 9.8. 7. <LoadPercentage>2</LoadPercentage> <Body> DATA</Body> 9. <ReplyTo>http://schemas.xmlsoap.org/…/addressing/role/anonymous</ReplyTo> 10. <Stepping>5</Stepping> 8. </Envelope> 10. <MessageID>uuid:91c167fb-2c3a-4F1A-8d59-01b0c18a0723</MessageID> 11. </CIM_Processor> 11. </Header> 12. <Body> </Body> 13. </Envelope> SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Introduction The Need for Standards Process: ITIL Model: CIM API: JMX Protocol: WS-Management Why Standards are not Enough The NetWeaver Administrator and its Partner Strategy Standards Topic Standard (adopted by SAP) Standard Body Information Model Common Information Model (CIM) DMTF Protocol WS-Management (WS-Man) DMTF Instrumentation Java Management Extensions (JMX) JCP CIM, WS-Man, and JMX are orthogonal standards CIM Information Model WS-Man Instrumentation JMX SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Together they ensure full interoperability: Plug-and-Manage Interconnection of JMX, CIM & WS-M For a Management Application a MBeanServer “looks like” a lightweight CIM-OM Management Application «system» Server 1 hosts * «service» Deployed Object DeploymentDescriptor WS-Man «service» Application 0..1 1..* «service» Module WS-Man JMX-WSM Adapter CIM-WSM Adapter MBeanServer CIM-OM SAP AG 2005, Title of Presentation / Speaker Name / ‹#› EndpointReferences, ObjectNames, CIM-Classes WS-Man EndpointReference <wsa:to>http://myMbeanServer</wsa:to> <wsm:ResourceURI> http://schemas.dmtf.org/wsman/2005/06/cimv2.9/CIM_J2EEApplication </ wsm:ResourceURI> <wsm:SelectorSet> <wsm:Selector Name=„Name“>Petstore</wsm:Selector> <wsm:Selector Name=„CreationClassName“> CIM_J2eeApplication </wsm:Selector> </wsm:SelectorSet> addresses refers to JMX ObjectName CIM Class :CIMClass= CIM_J2eeApplication, Name=Petstore, CreationClassName=CIM_J2eeApplication class CIM_J2eeApplication : CIM_ApplicationSystem { string Name; string DeploymentDescriptor; } is Instance of SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Mapping of DataTypes: CIM-Class, XSD-Type, MBean [Version ( "2.8.0" ), Description ( "CIM_J2eeApplication identifies a J2EE application that resides " "on a J2ee Server.")] class CIM_J2eeApplication : CIM_ApplicationSystem { [Override ( "Name" ), Description ( "The name of a J2EE Application. The name MUST beCIM_J2eeApplication_Type"> " <xs:complexType name=" "constructed using the form<xs:annotation> specified in JSR77.3.1.1.1 in " "order to avoid the need for manual key propagation."), <xs:appinfo> MaxLen ( 256 ), <cim:Class>CIM_J2eeApplication</cim:Class> MappingStrings { "JSR77.JCP|JSR77.3.1.1.1 objectName|V1.0" <cim:Superclass> CIM_ApplicationSystem</cim:Superclass> }] </xs:appinfo> string Name; </xs:annotation> <xs:sequence> [Description ( <xs:element name="Name" type="xs:string"/> "Contains the original XML deployment descriptor that was " <xs:element name=“DeploymentDescriptor" type="xs:string"/> "created for this application</xs:sequence> during the deployment process."), </xs:complexType> XSD-Type MappingStrings { "JSR77.JCP|JSR77.3.5.0.1 " "deploymentDescriptor|V1.0" }] string DeploymentDescriptor; public class CIM_J2eeApplicationMBean }; extends CIM_ApplicationSystemMBean { public String Name; public String DeploymentDescriptor; CIM-Class } MBean SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Introduction The Need for Standards Process: ITIL Model: CIM API: JMX Protocol: WS-Management Why Standards are not Enough The NetWeaver Administrator and its Partner Strategy SAP’s Partner Philosophy Unobtrusiveness Whatever tools and processes a customer prefers to administrate his IT-landscape, the management and monitoring of SAP-software must be possible from within this environment. Completeness To operate his SAP-software a customer is not required to buy and run any other management application then the operation tools provided by SAP. SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Plug-And-Manage Data bus Discovery Incidents Monitors Landscape Reports Configuration SUN Storages MS OM Amberpoint HP OV Give and take of management data Chain of services provided on top of this data SAP AG 2005, Title of Presentation / Speaker Name / ‹#› Use Cases Outbound: Providing NW data into 3rd party management applications A partner wants to see the SAP monitoring data in his management application (MS MOM, HP OpenView, IBM Tivoli, CA Unicenter) and wants to manage SAP systems from within this applications. Depending on the setup of the management solution at the customer side, the partner application is used additionally to the NWAdmin or it aims to substitute the NWAdmin completely. Inbound: Integration of 3rd party resources into NWA A partner wants his own resources to be managed and monitored by the SAP NWAdmin. Examples: Http-Load-Balancer (Cisco), Storage Devices (SUN), Chipset (Intel), OS (MS). A user might want to see the status of the device, to start or stop it, analyze the logs, get info about the load … The data should be includable in overall reports and guided operations should be definable for it SAP AG 2005, Title of Presentation / Speaker Name / ‹#› NW-Integration Points for SOA-Management Partners NWAdmin UI central ISV Tool WS-Man Outbound NWAdmin Data Provisioning central ISV Resource WS-Man Inbound NWAdmin Local Agent local NW Managed Resource local NetWeaver SAP AG 2005, Title of Presentation / Speaker Name / ‹#›