A Web Portal for CMS Grid Job Submission and Management

A Web Portal for CMS Grid Job Submission and Management

17th International Conference on Computing in High Energy and Nuclear Physics (CHEP09) IOP Publishing Journal of Physics: Conference Series 219 (2010) 072012 doi:10.1088/1742-6596/219/7/072012 A Web Portal for CMS Grid Job Submission and Management David Braun1 and Norbert Neumeister2 1 Department of Physics, Purdue University, W. Lafayette, IN 47907, USA 2 Rosen Center for Advanced Computing, Purdue University, W. Lafayette, IN 47907, USA E-mail: [email protected] Abstract. We present a Web portal for CMS Grid submission and management. The portal is built using a JBoss application server. It has a three tier architecture; presentation, business logic and data. Bean based business logic interacts with the underlying Grid infrastructure and pre-existing external applications, while the presentation layer uses AJAX to offer an intuitive, functional interface to the back-end. Application data aggregating information from the portal as well as the external applications is persisted to the server memory cache and then to a back- end database. We describe how the portal exploits standard, off-the-shelf commodity software together with existing Grid infrastructures in order to facilitate job submission and monitoring for the CMS collaboration. This paper describes the design, development, current functionality and plans for future enhancements of the portal. 1. Introduction The experiments at the Large Hadron Collider (LHC) at CERN will start producing event data when the collider begins operating in late 2009. As the moment when real LHC data will start to be collected approaches, it is important to provide to the community of LHC physicists powerful and user-friendly tools to analyse data using distributed computing resources. One way to achieve this is by providing access to these resources via scientific portals that clients, LHC physicists, will find attractive and easy to use. Grid portals can deliver complex Grid solutions to users without the need to download, install and maintain specialized software, or worrying about setting up site-specific components. The goal is to reduce the complexity of the user Grid experience and to bring the full power of the Grid to physicists engaged in LHC analysis through a standard web GUI. Currently users are exposed to different flavors of grid middle ware and the installation and maintenance of experiment specific software is still very complex for most physicists. The available Grid tools are not so user friendly at times and the Grid requires even more software and services to be installed and maintained. Moreover, currently only few platforms are supported and the handling of Grid user certificates is still a problem for many users. We have evaluated different technologies to provide a science portal in order to reduce the complexity of the user Grid experience. Because this is a missing functionality of the official tool set of the CMS collaboration, we developed a prototype of a CMS Grid submission portal and we currently provide this service to a local CMS Tier-2 community at Purdue University. The goal of the CMS Grid submission portal is to hide and integrate the complex infrastructure details that can hinder a user's ability to do science. A rich AJAX user interface c 2010 IOP Publishing Ltd 1 17th International Conference on Computing in High Energy and Nuclear Physics (CHEP09) IOP Publishing Journal of Physics: Conference Series 219 (2010) 072012 doi:10.1088/1742-6596/219/7/072012 provides users the functionality to create, submit, share and monitor Grid submissions. The Grid portal is built on J2EE [1] architecture employing enterprise technologies powered by a JBoss [2] application server. This technology has been used for many years in industry to provide enterprise class application deployments. The architecture is comprised of three tiers; presentation, business logic and data persistence. The presentation layer currently consists of a Java Server Faces (JSF) [3] web interface developed with NetBeans [4] Visual Web Page development tools. The business logic layer provides interfaces to existing Grid infrastructure such as VOMS [5], Globus [6], and CMS specific Grid submission tools. 2. Technology Integrated authentication systems and the easy integration of multiple data sources are key considerations when designing an interactive web-based Grid application. These requirements naturally led to a design where the architecture of the application is based upon J2EE components such as Java Server Faces (JSF), Java Server Pages (JSP), Servlets and Enterprise Java Beans (EJB) [7]. JBoss was used as the application server of choice because it combines both a web container and an EJB container to provide a unified platform for development. It has been industry proven to scale quite well using distributed caching technology and can be further broken in smaller components as needed to match the needs of the application [8]. State management is provided at the request, session and application levels. The life cycle management built into JBoss provides the mechanism to persist state items and control the overall rendering pipeline. Making the portal web session interactive and auto-updating the data displayed to the end user via JavaScript and AJAX was important to the use case, but made the browser to server interactions increasingly complex. The development of a complex web application meant that technology decisions for this project needed to be made in a way that allowed us to best leverage the available programming resources in the research project. In order to exponentially increase the amount of development a single professional programmer could accomplish, the NetBeans IDE was chosen to automate much of the GUI interface code generation. Of particular interest when selecting development tools was the use of graphical tools to create web pages. For this project, NetBeans was chosen as the integrated development environment and employed the visual web pages plugin, which meant we were able to generate complex AJAX interfaces with minimal JavaScript having to be hand written. Visual web pages are based on the use of JSF to supply a component based framework that is similar to the long existing tools that are used to layout Java swing user interfaces. This project was built on the Woodstock framework [9], which is the reference framework developed by Sun and the Java community. The motivation for this choice was the fact that the NetBeans visual web page development environment supported all the features in this framework. The advantage of using frameworks like this is that most of the cross browser issues are handled within the component or the life cycle management and do not have to be hand coded by the programmer. JSF is a framework that is composed of three major functions; GUI component, state management, and life cycle management. The GUI component items, such as drop down menus, include encapsulated code that specifies how the component should be rendered. Depending on the target, browser components can choose the correct JavaScript to send to the browser which eliminates the need for the typical testing of multiple browser targets. JSF employs the Expression Language (EL) [10] which allows the components to dynamically consume evaluated expressions that are used to bind component properties to state management items. Within the JSF specification state management is implemented as three distinct scopes: request, session, and application. Each scope will persist data for different periods of time ranging from page to page navigation, user sessions and global application. The lifecyle management provides support for how the component tree is restored, associated state is updated and completing the request 2 17th International Conference on Computing in High Energy and Nuclear Physics (CHEP09) IOP Publishing Journal of Physics: Conference Series 219 (2010) 072012 doi:10.1088/1742-6596/219/7/072012 with a generated response, as well as mechanisms to handle complex user interactions such as browser navigation. 3. Architecture The architecture of the CMS Grid Submission Portal is divided into three main pieces: presentation, logic and data layers. The presentation and logic layers are within a JBoss application server and the data layer is MySQL [11] and file store. Within the JBoss container, we deploy beans which wrap the CMS Remote Analysis Builder (CRAB) [12], allowing users to execute the CRAB functions they need from the portal web page. Figure. 1 shows a diagram of the chosen architecture. The presentation layer is implemented with JSF technology. The JSF servlets are managed within a JBoss managed Tomcat [13] container. The advantage of doing this is that the container is configured to support a unified security model such that all members of the architecture within the application server exist under one security domain. There are two main backing beans that the application relies upon, the application and user session bean. The application bean is used to hold application-wide state. In this case the state of the application bean is also being backed up in the lower layers. The state that is being managed at the application level is an in memory state that is required for fast response for polling queries, or static elements choice lists. The general use case of the application has three main steps: the user defines a project space, configures and loads required data, and then submits and monitors jobs using CRAB. The user's project is based on a release of CMSSW and may contain private code/libraries and configuration files. Data is extracted from the CRAB submission directory about the project and cached in a database. These actions all require that a valid proxy exists within the user's directory as an additional security measure. There are two active components within the architecture that will act upon the user's data autonomously: proxy expiration checking and project monitoring. A periodic proxy check will validate that the proxy has not expired.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us