Grid Infrastructure Monitoring Service Framework Jiro/JMX Based Implementation

Similar documents
JIMS Extensions for Resource Monitoring and Management of Solaris 10

Application Servers in E-Commerce Applications

NetBeans IDE Field Guide

ICENI: An Open Grid Service Architecture Implemented with Jini Nathalie Furmento, William Lee, Anthony Mayer, Steven Newhouse, and John Darlington

Introduction. Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve

J2EE Interview Questions

JMX-based Grid Management Services

Vision of J2EE. Why J2EE? Need for. J2EE Suite. J2EE Based Distributed Application Architecture Overview. Umair Javed 1

Appendix A - Glossary(of OO software term s)

Chapter 2 FEATURES AND FACILITIES. SYS-ED/ Computer Education Techniques, Inc.

Experiences in the management of an EJB-based e- commerce application. Abstract

BEAWebLogic Server. Introduction to BEA WebLogic Server and BEA WebLogic Express

(9A05803) WEB SERVICES (ELECTIVE - III)

In the most general sense, a server is a program that provides information

Java Development and Grid Computing with the Globus Toolkit Version 3

Borland Application Server Certification. Study Guide. Version 1.0 Copyright 2001 Borland Software Corporation. All Rights Reserved.

How Much Middle-Tier Do You Need? *

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format.

MONitoring Agents using a Large Integrated Services Architecture. Iosif Legrand California Institute of Technology

Deccansoft Software Services. J2EE Syllabus

Distributed Multitiered Application

ESPRIT Project N Work Package H User Access. Survey

2017, IBM Corporation Liberty z/os Good Practices. WebSphere Liberty z/os Applications and Application Deployment

~ Ian Hunneybell: CBSD Revision Notes (07/06/2006) ~

Introduction To Web Architecture

Chapter 6 Enterprise Java Beans

IBM Research Report. A Web-Services-Based Deployment Framework in Grid Computing Environment

Designing a Distributed System

Agent-Enabling Transformation of E-Commerce Portals with Web Services

JAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP

Chapter 2 Introduction

What we need. Agenda. What s J2EE. Challenges of Enterprise Application Development

CERTIFICATION SUCCESS GUIDE ENTERPRISE ARCHITECT FOR JAVA 2 PLATFORM, ENTERPRISE EDITION (J2EE ) TECHNOLOGY

Enterprise JavaBeans (I) K.P. Chow University of Hong Kong

WebSphere Application Server, Version 5. What s New?

Introduction to componentbased software development

Transparent Resource Management with Java RM API

BEAProducts. ISV Partners Guide

A JAVA META-REGISTRY FOR REMOTE SERVICE OBJECTS

IBM Operational Decision Manager Version 8 Release 5. Configuring Operational Decision Manager on WebLogic

Advanced Java Programming

CHAPTER 5 CO:-Sketch component diagram using basic notations 5.1 Component Diagram (4M) Sample Component Diagram 5.2 Deployment Diagram (8M)

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints

"Charting the Course... Mastering EJB 3.0 Applications. Course Summary

UPnP Services and Jini Clients

Type of Classes Nested Classes Inner Classes Local and Anonymous Inner Classes

Enterprise JavaBeans, Version 3 (EJB3) Programming

Oracle 10g: Build J2EE Applications

web.xml Deployment Descriptor Elements

Teamcenter Global Services Customization Guide. Publication Number PLM00091 J

A Tutorial on The Jini Technology

Spring & Hibernate. Knowledge of database. And basic Knowledge of web application development. Module 1: Spring Basics

Virtual Credit Card Processing System

ive JAVA EE C u r r i c u l u m

Erik Dörnenburg JAOO 2003

MONITORING GRID RESOURCES: JMX IN ACTION KAZIMIERZ BALOS, DOMINIK RADZISZOWSKI, PAWEŁ RZEPA, KRZYSZTOF ZIELIŃSKI

Enterprise Java Unit 1-Chapter 2 Prof. Sujata Rizal Java EE 6 Architecture, Server and Containers

PSD1B Advance Java Programming Unit : I-V. PSD1B- Advance Java Programming

Socket attaches to a Ratchet. 2) Bridge Decouple an abstraction from its implementation so that the two can vary independently.

An agent-based peer-to-peer grid computing architecture

Implementing a Web Service p. 110 Implementing a Web Service Client p. 114 Summary p. 117 Introduction to Entity Beans p. 119 Persistence Concepts p.

Mapping UML Component Specifications to JEE Implementations

Distributed Technologies - overview & GIPSY Communication Procedure

Enterprise Java Security Fundamentals

EJB ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY. EJB Enterprise Java

PARALLEL PROGRAM EXECUTION SUPPORT IN THE JGRID SYSTEM

Borland Optimizeit Enterprise Suite 6

Research and Design Application Platform of Service Grid Based on WSRF

Outline. Project Goal. Overview of J2EE. J2EE Architecture. J2EE Container. San H. Aung 26 September, 2003

Distributed Middleware. Distributed Objects

Oracle WebLogic Server

Enterprise JavaBeans. Layer:01. Overview

IT6503 WEB PROGRAMMING. Unit-I

Java Enterprise Edition

GT-OGSA Grid Service Infrastructure

TOPLink for WebLogic. Whitepaper. The Challenge: The Solution:

Reflective Java and A Reflective Component-Based Transaction Architecture

BEAAquaLogic. Service Bus. Interoperability With EJB Transport

Enterprise Java and Rational Rose - Part II

IBM WebSphere Studio Asset Analyzer, Version 5.1

An Application for Monitoring Solr

BEAWebLogic Server and WebLogic Express. Programming WebLogic JNDI

CHAPTER 4: ARCHITECTURE AND SYSTEM DESIGN OF PROPOSED EXPERT SYSTEM: ESOA

Web Application Development Using JEE, Enterprise JavaBeans and JPA

Distributed Computing

Management User s Guide. Version 6.2, December 2004

A Model-Transformers Architecture for Web Applications

Electronic Payment Systems (1) E-cash

COPYRIGHTED MATERIAL

J2EE Technologies. Industrial Training

INTRODUCTION TO Object Oriented Systems BHUSHAN JADHAV

Java SE7 Fundamentals

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

Component-Based Software Engineering. ECE493-Topic 5 Winter Lecture 26 Java Enterprise (Part D)

Chapter 18 Distributed Systems and Web Services

Boost your Portal productivity with Monitoring Studio Express. Bertrand Martin Sentry Software

Using JNDI from J2EE components

Computational Web Portals. Tomasz Haupt Mississippi State University

ECSS E Test Platform Features and Applicability Area

Sun Java Studio Creator. Ken Paulsen Staff Engineer Sun Microsystems, Incorporated (Slides by: Craig R. McClanahan)

Transcription:

URL: http://www.elsevier.nl/locate/entcs/volume82.html 12 pages Grid Infrastructure Monitoring Service Framework Jiro/JMX Based Implementation Bartosz Lawniczek, Grzegorz Majka, Pawe l S lowikowski, Krzysztof Zieliński, S lawomir Zieliński Department of Computer Science, University of Mining and Metallurgy, al. A. Mickiewicza 30, Kraków, 30-059, Poland bartosz.lawniczek@spruce.pl, mikej@ds5.agh.edu.pl, ps@agh.edu.pl kz@cs.agh.edu.pl, slawek@agh.edu.pl Abstract The paper describes a grid infrastructure monitoring service based on Jiro and JMX. Involvement of those technologies gives the programmer ease of instrumentation, dynamic configuration and simple to use discovery and notification mechanisms. Moreover, building the system over existing standards accepted by the IT industry makes this process stable in longer period of time. The goals of the autors of the service s concept were not only to provide the user with yet another front-end for SNMP, but also to let the system resolve typical problems by involving existing or forthcoming technologies supporting declarative way of programming. Being structured as a framework, the system allows the user to describe rules that define the actions taken by the system and conditions, upon which the actions should be taken. The system is currently developed further by the Distributed Systems Research Group at the University of Mining and Metallurgy in Kraków. 1 Introduction Years of experience with object oriented programming and component programming, manifested in wide acceptance of CORBA CoS [1], RMI [2], EJB [3] and.net technology [4] by the computer industry, lead to the development of Web Services [5,6] concept. The power and elegance of this idea draw attention of Grid community resulting in OGSA s [7] focus on services. The service-oriented view allows addressing the need for standard interface definition mechanisms, local/remote transparency, adoption of local OS services, and uniform service semantics. Taking this into account we decided to build grid monitoring infrastructure software as a service built upon existing system services available in modern c 2003 Published by Elsevier Science B. V. Open access under CC BY-NC-ND license. 77

distributed environments such as Jini and Jiro, and to exploit instrumentation mechanism defined by Java Management Extension (JMX). The paper describes Jiro/JMX based Grid-infrastructure monitoring service, which consists of intelligent components obtaining information from Grid services such as: computational resources, storage resources, and networks. The innovative functionality of this service is that it is not only able to gather information from hardware devices, but also makes autonomous decisions based on this information, and takes necessary actions. This allows a user to specify desirable logic for processing monitoring information. In consequence, the management effort could be partly transferred from a user to the system. The system is structured as a framework which could be refined according to user needs. Section 2 of the paper presents the requirements the proposed framework is going to meet in more details. Section 3 contains a description of the framework concept, while section 4 and 5 introduce an overview of its components and describe some implementation-related issues. The paper ends with conclusions. 2 Grid infrastructure monitoring service requirements OGSA inherited from existing modern distributed environments such as COR- BA, Jini or Jiro functionality of most of its standard interfaces. In this situation, the decision of constructing grid infrastructure monitoring services over Jiro makes it possible to satisfy the following OGSA requirements [8]: (i) Information about the service should be available and a mechanism of its termination should be provided. These operations are defined under GridService interface. (ii) Ability to register/unregister the service handle as it is pacified by Registry interface. (iii) Notification based on asynchronous message-oriented communication mechanisms should be provided as specified by the NotificationSource and NotificationSink interfaces. (iv) Mechanisms of service discovery and localization should be implemented as it is defined by the HandleMap interface, and (v) General utility for new services instance creation should be supported as specified by the Factory interface. The first two requirements are satisfied the Jini Lookup Service, which is used by Jiro environment. The notification mechanism in form of Distributed Event Service is also supported by Jini and Jiro. The service discovery protocol is a central part of Jini/Jiro architecture, which defines dedicated protocols for that purpose. Finally a dynamic service instance creation is also a part of Jiro technology which provides deployment station which supports factory functionality. Taking into account these base services we assumed that sys- 78

tem should be equipped with management interface supporting its dynamic configuration at run-time. In order to achieve interoperability with existing monitoring systems, e.g. SNMP-based ones, and to construct dynamically configurable instrumentation layer we decided to use Java Dynamic Management Kit (JDMK) which implements Java Management Extension (JMX) specification [9]. This equips the proposed monitoring service with general event notification mechanism and introspection functionality. We also decided to provide intelligent components with configurable at runtime, acting as events observers filtering events and implementing embedded management logic (alarms, operator notifications etc.) Finally the system should offer mechanisms to store monitoring events in a database for further exploration. To fulfil this requirement a storage server using EJB technology has been proposed. 3 Monitoring framework architecture concept The system has been constructed according to the five-level architecture presented in Fig. 1. The following functionality is supported by these levels: Instrumentation level provides JMX manageable resources. The instrumentation of a given resource is provided by one or more MBeans (Managed Beans), which are either standard or dynamic. Standard MBeans are Java objects that conform to certain design patterns derived from the JavaBeans component model. Dynamic MBeans conform to a specific interface defined by JMX specification, which offers more flexibility at run-time. Agent level supports a framework for implementing agents. Management agents directly control the resources and make them available to remote management applications. Agents are usually located on the same machine as the resources they control, although this is not a requirement. Management logic level provides mechanism for embedding management logic. Its purpose is to provide both filtering and notification mechanism. It could be based on the RuleEngine technology or Java Interpreters. That level is also where system s autonomous actions will take place. Database level is meant mainly for data storage. Storage sever EJB session beans are registered as observers with MBeanServers operating on the agent level or MRuleSevers processing events on the management level. These session beans cooperate with dedicated entity beans to write or read monitoring information. User interface level provides layer for exposing functionality of grid monitoring service both to human users and external systems. This layer consists of collection of GUIs which are used for accessing monitoring information collected in the database or reported directly by instrumentation or management level components. 79

Fig. 1. Jiro-based grid monitoring system architecture. The Agent Level and Management Logic Level components are implemented as Jiro services and they benefit from functionality of Jiro Deployment Station in the process of their instantiation. This process is further simplified by the service configuration GUI that offers convenient user interface to control deployment and instantiation process. The instantiated Jiro services are registered with Jiro Lookup Service and can be localized and accessed via standard Lookup Service Browser interface. Each hardware component is represented by the MBeanServer with registered relevant MBeans. The MBeanSevers are registered as Jiro services with Lookup Service. The MBeanServer is typically instantiated on a computer which resources are monitored. In case of network resources monitoring the MBeanSever could be deployed on a dedicated computer from where it is able to communicate via an SNMP connector with any hardware device equipped 80

with SNMP agent. The components of Agent Level communicate with external interfaces and application using connectors which implements: RMI, HTTP, or HTTPS protocols. Additional connectors e.g. SOAP connector could be easily added. Information will be made available to both human users and external systems via dedicated interfaces. Human interfaces provide appropriate graphical and/or textual visualisation method. Both interfaces provide information about grid global resources utilisation history e.g. statistical information about computational power consumption, certain group of devices usage or individual devices load. Efficient query mechanism is being developed in order to allow the user to specify devices and parameters under consideration. These queries could concern the information stored in the database or data collected on-line from Agent Level components. Agent Level information publishing interfaces work in one of two modes: Passive - interfaces that work in the query-response manner. They will provide information to the user or external systems on demand. A query mechanism is under development for specifying which information is needed. Active - interfaces that provide notification to the user. They will provide information through a notification mechanism. It will be possible to specify conditions upon which user (or application) must be notified. Additionally, the user will be able to choose among different notification mechanisms via: e-mail, SMS, or SOAP message. 4 Monitoring framework components overview Every monitored resource is represented by a Managed Bean (MBean). Each MBean exposes its methods and parameters through a MBeanServer. MBean- Server provides standardized method to access managed resources via RMI or SOAP protocol. It also provides HTML connector which allows a user to access and view monitoring parameters via WWW. There have been distinguished three groups of MBeans: (i) SystemInformationMBean for monitoring workstations or other computational nodes with Linux, Solaris or Windows operating system. (ii) SNMPMBean for communication with devices equipped with SNMP agents (e.g. routers, switches). (iii) SoftwareComponentMBean for monitoring software services. MBeanServer and MBeans instantiated in Jiro Deployment Station form so called JiroMBeanService. Grid administration can be a very tedious task. Administrator must be always aware of what is happening in the system. An abnormal situation in the grid, for example storage failure, should be immediately reported to an administrator. In case of failure he is the person responsible for taking up 81

appropriate actions. On the other hand, some of abnormal situations could be handled automatically by the system without troubling its administrator. In such cases mechanism for performing simple administrative actions would be desirable. That creates necessity not only for fast and reliable notification mechanism but also for mechanism detecting abnormal situations in the grid. Management logic level was developed to fulfil these requirements. In order to understand purpose of this layer better let us consider a situation where Grid experiences a router failure. What would happen without management logic layer? Administrator would probably find out about this from user complaints that a network is not working. He would have to track down the problem asking instrumentation layer to report its state. Having found out what caused the failure he would reroute the traffic to a spare router. As we can see this is a very long and tedious way. Using management logic layer, an administrator is able to partially automate it. He can program management logic layer to periodically check state of the router and specify actions to be performed in case of a router failure (e.g. send the message to all its neighbours to change their route tables and/or send administrator a notification). For defining conditions and actions and their processing a rule engine (e.g. Java Rule Engine) could be used. In the simplest case for such a programming a user can utilise BeanShell scripts. In our system management logic is implemented by a service called BshRuleService, which is described in more details later in this paper. Another important part of the proposed grid monitoring infrastructure is the Database Level. It has been designed with support of EJB technology. The front-end database application server is a collection of session beans, which interoperate with entity beans representing the data stored in the SQL database. The session beans may be registered with MBeans in order to collect the information from Instrumentation Level. This information is passed to entity beans to be stored in the database. The dedicated session beans have been also provided to receive notification from RuleService modules. It is important to point out that involving EJB application server resolved many difficult problems, typical of distributed systems, like supporting transactions, persistence, and security services. The EJB containers also resolve the problem of concurrent access to the database by implementation of multithreading and providing suitable transactions isolation level. The notification it is not the only available mechanism of collecting data by the Database level. The family of session beans that could periodically or on demand read the relevant MBeans parameters could be easily provided. The information stored in the database should be also made available to the grid manager. The standard WWW technology could be used for this purpose. One possibility is to use JSP and servlets for communication with the application server and visualization of information in the most suitable way for the end-user. In our project we decided to leave this functionality open for further development and application-dependent customization. 82

Deployment and startup of the monitoring system in a large grid system, is a rather complex operation. To make this task easier to perform the component named Installer has been designed. Installer is a monitoring framework component intended to manage services. It allows an administrator to deploy, remotely instantiate and recall the services from selected Deployment Stations. In order to provide this functionality, Installer interoperates with Finder - Jini services browser. To make managing the framework easier, the Installer should have a GUI Interface allowing an administrator to install services in a quick and simple way. With existing implementation two services are available: RuleService and JiroMBeanService. The system is also equipped with two other graphical interfaces: RuleServiceUI and JiroMBeanServerUI. RuleServiceUI is a graphical user interface providing functionality for defining actions to be performed and specifying management rules. This interface is also used to automate addition of MBeans to the list of managed resources. JiroMBeanServerUI is a graphical user interface for accessing MBeans interfaces, which allows users to: view monitoring data (that correspond to attributes of an MBean) in a textual or graphical form, activate notifications for parameters and define conditions upon which notifications are sent, set period of time between consecutive parameters values reading operations. 5 Monitoring framework implementation details Basic components of Instrumentation Layer are MBeans, which provide direct interfaces to resources and are responsible for: gathering information from monitored devices, making the monitoring parameters available to an external system, handling parameters notifications. Each MBean is characterized by a set of attributes that correspond to monitored parameters. Attributes can be either dynamic (of constantly changing values) or static (values not changing). MBean s attributes are periodically updated every time timer notification is received by an MBean. Timer notification uses standard JMX notification mechanism and its period can be set by the user. Since some of system parameters values can only be read from system kernel via system calls, SystemInformationMBean uses Java Native Interface for obtaining them. Some parameters are also read from the /proc Virtual File System. The list of parameters includes memory and swap usage, disk usage, CPU statistics, user information, operating system information etc. 83

SNMPMBean uses SNMP connector, which is provided by JDMK to interact with SNMP agents. It makes monitoring of SNMP-enabled devices very straightforward. The same approach could be used to provide interoperability with other existing monitoring systems. SoftwareComponentMBean uses application dependent interfaces to get required parameters. These interfaces have to be exposed by application for external systems for monitoring purposes. Parameters provided in this way, as MBean s attributes, are available to an external system via MBeanServer interface described in details in JDMK specification. By interacting with the MBeanServer interface, an external system can get all parameters names and their values. Moreover, it can invoke any of operations defined in MBean. This mode of working is referred to as passive mode. For each parameter that has dynamic behavior (it is changing) a notification condition can be specified. Consider the example of the mem parameter, which gives information on currently available free memory in a system. User can set certain threshold on this parameter and when a value of the parameter goes below (or over) that threshold MBean sends notifications to all registered listeners, e.g. higher levels of the system that are able to take desirable actions. This mode of working is referred to as active mode. The MBean parameters and working mode may be set during runtime and visualized by JiroMBeanServerUI depicted in Fig. 2. Fig. 2. JiroMBeanServerUI. Management logic level, as it was already pointed out in Section 4, is built up from a number of autonomous services called RuleServices. Each service is an autonomous entity. The task of each service is to control the state of one or more devices. RuleService reads the state of the device exposed by instrumentation layer. Information obtained from devices is analyzed by 84

logical formulas incorporated into RuleService operation and enabled actions are performed. In fact, the RuleService implementation is divided into three parts: a module responsible for acquisition of monitored devices state parameters represented by MBeans, embedded logic for making decisions based on current device state, actions that should be performed upon changes of the device state. User wanting to program management logic layer in order to achieve desirable behaviour should create RuleService, link it to suitable MBeans in instrumentation layer and specify actions that should be taken in certain circumstances. Since RuleService is a Jiro Service, its instantiation is fairly simple. Appropriate mechanism is provided by Jiro Deployment Station. Jiro Deployment Station is a service provided by Jiro Technology that lets host other services. Using it we are able to upload new service code to the deployment station and to remotely create an instance of the service. New service will run within Deployement Staion s virtual machine. The process consists of three steps: (i) Find deployment station in which we want to deploy the service. Deployment Stations have to be registered in JiniLookupService, so this could be performed using JiniLookupBrowser. (ii) Deploy service s JAR files. This is done with support of the Installer tool developed for this purpose. (iii) Invoke RuleService remote constructor to create instance of the service (also done by one of the administrative tools). The instance created in this process is automatically registered in JiniLookupService, making it possible for the user to see it using JiniLookupBrowser. RuleService is equipped with a graphical interface already shortly described in Section 4. This interface is accessible from JiniLookupBrowser and provides functionality for: adding MBeans to the list of managed resources referenced by rules, updating actions list that could be performed and to specify management rules. Since MBeans are also registered in JiniLookupService the simplest way for the user to add references to them to the RuleService is to drag and drop an MBean onto the RuleService interface window depicted in Fig. 3. RuleService will deal with the reference by adding it to the list of managed resources. Actions that can be performed by RuleService are defined in a very flexible way. During development of this service we came up to the conclusion that a best way to implement actions it is to construct them also as Jiro/Jini Services. Alternative solution would be to hardcode actions into RuleService. An advantage of the proposed approach is very easy and almost automatic expandability without need to modify RuleService at all. Moreover, the procedure of linking actions to the RuleService is similar to linking MBeans 85

and could be done using drag and drop techniques. Fig. 3. BshRuleServiceUI The most important part of the RuleService is engine that processes formulas written in a language implementing rules. Choice of rule engine was not a simple problem and several attempts have been made. Finally we decided to use BeanShell interpreter. RuleService that is built over BeanShell is called BshRuleService. BeanShell is a Java language interpreter. Using Java as the language for implementing rules gives a great flexibility but impose some restrictions on person responsible for writing rules. This person has to be familiar with Java language as well as have general understanding of Jiro and JDMK technologies. When writing BeanShell scripts he will have to conform to the certain schema. Srcripts must have access to the MBeans in order to obtain their state and also to the actions that can be performed. Mechanism for accomplishing this is fairly natural. BeanShell defines environment (namespace) in which the object that can be referenced from scripts lives. During adding an MBean to the list of managed resources references to it are added to this namespace thus making them accessible from scripts as a regular Java object. User can then invoke methods on the object simply by using its name and name of its operation. The same mechanism applies to actions performed by the scripts. Actions performed by the scripts depend on current state of MBeans. Information from MBeans can be obtained in two ways: by subscribing for notification generated by MBean, or simply by querying for its current state. As usual in such cases, in order to subscribe for notification, the user must define 86

a function within BeanShell that should be invoked when notification is received. This function should have notification object as parameter. Querying is done simply by invoking an appropriate MBean method. BeanShell scripts are invoked in two situations: (i) when RuleService receives notification from MBean or (ii) periodically when event generated by timer occurs. In both cases the user is responsible for providing appropriate function that will handle these events. It means that BeanShell scripts have to conform to a certain schema. As it is shown in Fig. 3, RuleService interface provides snippets to make definition of action scripts simpler. The Installer is used for easy BshRuleService and JiroMBeanService management. It is constructed using the same technology as BshRuleServiceUI. The GUI interface of the Installer consists of three panels depicted in Fig. 4: StationsPanel, ServicesPanel, and OutputPanel. Fig. 4. GUI of Installer The StationPanel allows selecting Deployment Stations on/from which the monitoring services will be deployed/instantiated/recalled. User selecting deployment stations is required to drag deployment station from Finder and drop it in the StationsPanel first. After this action the deployment station will appear in the StationsPanel. All services deployed on these stations are also visualised there. The ServicesPanel consists of tree tabs: Services, BshRuleService Properties, JiroMBeanService Properties. The Services tab allows selecting services that will be a target of managenent action. The possible actions are: delete from the services tree (visible in the Stations Panel), get inventory of deployment station, deploy service, instantiate service and recall deployment group. The BshRuleService Properties and JiroMBeanService Properties tabs allow to set properties of services: class name, implementation JAR file, download JAR file, etc. 87

The OutputPanel is a place where all messages and other information from the tool are directed. An example of such message could be information about a result of deployment or instantiation process. 6 Conclusions The presented monitoring system provides an open framework for grid monitoring infrastructure, which satisfies most of OGSA requirements. It is necessary to point out that flexibility and manageability of the system are in great extent inherited from JDMK and Jiro functionality. The system is equipped with a very general instrumentation layer providing notification and query mechanisms. It is easy to manage, as all services may be created and configured dynamically during the system runtime. The concept of embedded management logic layer seems to be very powerful and leads to automation of management process that is very important in large grid installations. The management of the monitoring system with support of proposed user friendly graphical interfaces should be straightforward. The described implementation may be further enhanced. Building the system over existing standards accepted by the IT industry makes this process stable in longer period of time and more likely to have not only experimental but also commercial potential. References [1] OMG, CORBAservices: Common Objects Services Specification, 1998. [2] Sun Microsystems, Remote Method Invocation Specification, 1997. [3] Sun Microsystems, Enterprise Java Beans Specification, version 2.1, 2002. [4] T. L. Thai and H. Lam,.Net Framework Essentials, O Reilly & Associates, 2002. [5] M. Champion, C. Ferris, E. Newcomer and D. Orchard, Web Services Architecture, W3C, 2002. [6] Sun Microsystems, Getting Started with Services on Demand and the Sun Open Net Environment - Sun ONE, 2002. [7] S. Tuecke, K. Czajkowski, I. Foster, J. Frey, S. Graham and C. Kesselman, Grid Service Specification, Grid Forum, 2002. [8] I. Foster, C. Kesselman, J.M. Nick and S. Tuecke, The Physiology of the Grid, http://www.globus.org/research/paper/ogsa.pdf. [9] Sun Microsystems, Java Management Extensions Instrumentation and Agent Specification, 2002. 88