Study on Management Agent Failover and Refresh Mechanism Esquivel C. Malillos CS526.

Slides:



Advertisements
Similar presentations
Welcome to Middleware Joseph Amrithraj
Advertisements

Introduction to push technology © 2009 Research In Motion Limited.
Page 1 of 29 Net-Scale Technologies, Inc. Network Based Personal Information and Messaging Services Urs Muller Beat Flepp
1 Week #1 Objectives Review clients, servers, and Windows network models Differentiate among the editions of Server 2008 Discuss the new Windows Server.
Web applications using JavaServer Faces (JSF) A brief introduction 1JavaServer Faces (JSF)
Liang, Introduction to Java Programming, Seventh Edition, (c) 2009 Pearson Education, Inc. All rights reserved Chapter 42 Web Services.
Fundamentals, Design, and Implementation, 9/e Chapter 14 JDBC, Java Server Pages, and MySQL.
Introduction to Web Database Processing
Introduction to Web Interface Technology (CSE2030)
Interpret Application Specifications
ASP.NET 2.0 Chapter 6 Securing the ASP.NET Application.
Introduction to client/server architecture
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
Servlets Compiled by Dr. Billy B. L. Lim. Servlets Servlets are Java programs which are invoked to service client requests on a Web server. Servlets extend.
SE-2840 Dr. Mark L. Hornick1 Java Servlet-based web apps Servlet Architecture.
Microsoft Load Balancing and Clustering. Outline Introduction Load balancing Clustering.
Overview of JSP Technology. The need of JSP With servlets, it is easy to – Read form data – Read HTTP request headers – Set HTTP status codes and response.
Presented by…. Group 2 1. Programming language 2Introduction.
Sys Prog & Scripting - HW Univ1 Systems Programming & Scripting Lecture 15: PHP Introduction.
1 Web Servers (IIS and Apache) Outline 9.1 Introduction 9.2 HTTP Request Types 9.3 System Architecture 9.4 Client-Side Scripting versus Server-Side Scripting.
Chapter 10 : Designing a SQL Server 2005 Solution for High Availability MCITP Administrator: Microsoft SQL Server 2005 Database Server Infrastructure Design.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
CPS120: Introduction to Computer Science The World Wide Web Nell Dale John Lewis.
Chapter 8 Implementing Disaster Recovery and High Availability Hands-On Virtual Computing.
Introduction to J2EE Architecture Portions by Kunal Mehta.
M1G Introduction to Database Development 6. Building Applications.
Copyright, 1996 © Dale Carnegie & Associates, Inc. Presented by Hsiuling Hsieh Christine Liu.
JAVA SERVER PAGES CREATING DYNAMIC WEB PAGES USING JAVA James Faeldon CS 119 Enterprise Systems Programming.
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
J2EE Overview Web Programming CSCI J2EE multi-tier architecture Servlet: Java class loaded into Web server JSP page: enhanced HTML page that is.
CH1. Hardware: CPU: Ex: compute server (executes processor-intensive applications for clients), Other servers, such as file servers, do some computation.
Introduction to JavaServer Pages. 2 JSP and Servlet Limitations of servlet  It’s inaccessible to non-programmers JSP is a complement to servlet  focuses.
Using Novell GroupWise ® 6 Monitor Duane Kuehne Software Engineer Novell, Inc. Danita Zanre Senior Consultant NSC Sysop,
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
DATABASE MANAGEMENT SYSTEMS CMAM301. Introduction to database management systems  What is Database?  What is Database Systems?  Types of Database.
1 Web Servers (Chapter 21 – Pages( ) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System Architecture.
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 12: Planning and Implementing Server Availability and Scalability.
1 Java Servlets l Servlets : programs that run within the context of a server, analogous to applets that run within the context of a browser. l Used to.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, Responds oriented other.
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
Paperless Timesheet Management Project Anant Pednekar.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
Introduction and Principles Web Server Scripting.
70-412: Configuring Advanced Windows Server 2012 services
Dispatching Java agents to user for data extraction from third party web sites Alex Roque F.I.U. HPDRC.
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
Cloud Computing – UNIT - II. VIRTUALIZATION Virtualization Hiding the reality The mantra of smart computing is to intelligently hide the reality Binary->
1 Chapter Overview Using Standby Servers Using Failover Clustering.
VCS Building Blocks. Topic 1: Cluster Terminology After completing this topic, you will be able to define clustering terminology.
Log Shipping, Mirroring, Replication and Clustering Which should I use? That depends on a few questions we must ask the user. We will go over these questions.
Section 10.1 Define scripting
SmartCode Brad Argue INLS /19/2001.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 12: Planning and Implementing Server Availability and Scalability.
Running a Forms Developer Application
Servlets.
PHP / MySQL Introduction
Introduction to client/server architecture
Storage Virtualization
Chapter 27 WWW and HTTP.
WBEM Automatic Processor Report (WAPR)
Distributed System Using Java 2 Enterprise Edition (J2EE)
Internet Protocols IP: Internet Protocol
Web Servers (IIS and Apache)
Your computer is the client
Web Application Development Using PHP
Presentation transcript:

Study on Management Agent Failover and Refresh Mechanism Esquivel C. Malillos CS526

Introduction Currently implemented by Hewlett Packard’s HSV Element Manager software application. Currently implemented by Hewlett Packard’s HSV Element Manager software application. Manage and monitor a proprietary controller array called Enterprise Virtual Array (EVA) Manage and monitor a proprietary controller array called Enterprise Virtual Array (EVA) Written as Java applet. Written as Java applet. Agent Failover Agent Failover Refresh Mechanism Refresh Mechanism

Storage Area Network High speed special-purpose network. High speed special-purpose network. Use fiber channel technology. Use fiber channel technology. Supports disk mirroring, backup and restore, data migration from one storage device to another. Supports disk mirroring, backup and restore, data migration from one storage device to another. Replication Replication Sharing of data among different servers in the network Sharing of data among different servers in the network From

Web-Based Enterprise Management Unifying mechanism for describing and sharing management information. Unifying mechanism for describing and sharing management information. Common UI framework. Common UI framework. Problem addressed: Multiple platforms have no easy way to obtain management data from different operating system - proprietary API or console for each application. Problem addressed: Multiple platforms have no easy way to obtain management data from different operating system - proprietary API or console for each application.

Management Agent Application running in a management server that manages and monitors storage array. Application running in a management server that manages and monitors storage array. Serves as an intermediary server between the storage array and web browser client (WBEM). Serves as an intermediary server between the storage array and web browser client (WBEM). Storage Array could be managed by multiple agents either in active-active or active-passive mode. Storage Array could be managed by multiple agents either in active-active or active-passive mode. Storage Array could be accessed through multiple web browser clients. Storage Array could be accessed through multiple web browser clients. Multiple agents maintain a same view of the SAN and EVA by accessing a common Management Logical Disk (MLD) that serves as the controller’s database through firmware’s API. Multiple agents maintain a same view of the SAN and EVA by accessing a common Management Logical Disk (MLD) that serves as the controller’s database through firmware’s API.

Management Agent Web Screen Shot

Failover and Refresh Applet Java applet that runs in the background of the web browser. Java applet that runs in the background of the web browser. Send keep-alive message to the agent in a regular interval. Send keep-alive message to the agent in a regular interval. Two information is available from the server’s reply to the poll: agent list and status information. Two information is available from the server’s reply to the poll: agent list and status information. Automatically or manually redirects the browser to another agent. Automatically or manually redirects the browser to another agent. Use status information for browser refresh mechanism. Use status information for browser refresh mechanism.

Applet Parameters Run – enables/disables loading and initialization of the applet. Run – enables/disables loading and initialization of the applet. Auto – enables/disables agent failover without user interaction. Auto – enables/disables agent failover without user interaction. States – list of status fields the applet is to monitor for changes. States – list of status fields the applet is to monitor for changes. Poll - enables/disables polling of the server. Poll - enables/disables polling of the server. Interval – time interval between applet polls. Interval – time interval between applet polls. Retry – number of attempts to connect with the server before declaring an agent failure. Retry – number of attempts to connect with the server before declaring an agent failure.

Agent Failover Mechanism When it happens? If the management agent did not respond to a keep-alive message sent by the applet after a fixed count of retries. If the management agent did not respond to a keep-alive message sent by the applet after a fixed count of retries.How? Manually – the applet pop-up a box with a URL list of available agents that the user could choose. Manually – the applet pop-up a box with a URL list of available agents that the user could choose. Automatic – the applet automatically redirects the user to a known agent by looking sequentially to the internally managed agent list. If the first agent in the list is passive or unreachable, it tries the next one and so forth … until it founds one that works. Automatic – the applet automatically redirects the user to a known agent by looking sequentially to the internally managed agent list. If the first agent in the list is passive or unreachable, it tries the next one and so forth … until it founds one that works.

Browser Refresh Mechanism When it happens? The agent response contains a string composed of numbers separated by commas. Each number corresponds to an object of the EVA controller. If the string is different from the old string stored by the applet, a refresh is invoked. The agent response contains a string composed of numbers separated by commas. Each number corresponds to an object of the EVA controller. If the string is different from the old string stored by the applet, a refresh is invoked.How? The applet store information about the last received state string text. It compares the new with the old one. If different and the number corresponds to the state parameter of the applet, the applet calls Java appletContext::showDocument() to reload the page. The applet store information about the last received state string text. It compares the new with the old one. If different and the number corresponds to the state parameter of the applet, the applet calls Java appletContext::showDocument() to reload the page.

Conclusion Currently operational and shipped to customers. Currently operational and shipped to customers. Areas of improvement Areas of improvement Use apache as HTTP server rather than proprietary HTTP server called ELM. Use apache as HTTP server rather than proprietary HTTP server called ELM. Dynamically put the applet in browser pages rather than statically through Java servlet. Dynamically put the applet in browser pages rather than statically through Java servlet. Filter non-operational management agent. Filter non-operational management agent. On-the-fly modification of applet parameters. On-the-fly modification of applet parameters.

References cfm?ArticleID= cfm?ArticleID=3568. Vacca, J.R. The Essential Guide to Storage Area Networks. Prentice-Hall, Inc Vacca, J.R. The Essential Guide to Storage Area Networks. Prentice-Hall, Inc Lord, R. Bridge Failover and Page Refresh Mechanism. Sept.9, Lord, R. Bridge Failover and Page Refresh Mechanism. Sept.9, 1999.