• No results found

Client/Server Grid applications to manage complex workflows

N/A
N/A
Protected

Academic year: 2021

Share "Client/Server Grid applications to manage complex workflows"

Copied!
19
0
0

Loading.... (view fulltext now)

Full text

(1)

Client/Server Grid applications to

manage complex workflows

Filippo Spiga*

on behalf of CRAB development team

(2)

Outline

•  Science Gateways and Client/Server computing

•  Client/server approach for CMS distributed analysis •  Usage statistics and trends

(3)

Science Gateways &

Client/Server Computing

•  A Science Gateway is a community-developed set of tools, applications, and data collections that are

integrated via a portal or a suite of applications.

•  The Client/Server Computing is a distributed application architecture that partitions tasks or work loads between service providers (servers) and service requesters

(4)

Science Gateways &

Client/Server Computing

•  Science gateways and client/server applications …

–  share the main fundamental ideas –  address the same purposes

–  are realized using different technologies –  are deployed in different ways

–  interact with users through different interfaces

 The choice between them will be made considering the

(5)

Motivations & Advantages

(for users)

•  In the context of HEP computing, the client/server applications can…

–  automate (as much as possible) complex analysis workflows

–  allow more advanced job monitoring with centralized front ends

–  hide configuration complexity on heterogeneous grid environment

–  hide implementation details to the users –  automatic resubmission in case of failure –  allow (strong) centralized policies

(6)

Motivations & Advantages

(for operators and developers)

•  In the context of HEP computing, the client/server applications can…

–  extend/integrate the functionalities of the middleware –  help to manage centrally updates

–  improve support to users by operators

–  avoid destructive congestions interacting with the grid –  improve the scalability of the entire “computing model”

(7)

The experience with

CRAB tool in CMS

CRAB, a Python tool intended to create, submit and

manage CMS analysis jobs in a Grid environment.

•  A single tool addresses different applications/purposes:

–  CMSSW analysis over the Grid –  private MC production

–  complex workflow automation

•  Started as standalone application

 it is evolved to a client/server application (in production since July 2007)

(8)

Standalone vs Client-Server

(workflow point of view)

RB CE Output Data WN ... SE File Location DBS Dataset Discovery gsiftp server Dataset Location SEs jdl, BOSS DB Output Job jdl

DLS (DLI enabled, LFC based) Jdl, Job

direct submission available

fileblocks

fileblocks SEs

LFN, #events, fileblocks

datasetpath

trivial file catalog

Proxy

UserBox CRAB Client

CRAB server

PhEDEx

UI

jdl, job

Output

Output (also to remote SE)

WN ...

SE

Dataset Discovery

Dataset Location

File Location

trivial file catalog jdl, job, DLS DBS CRAB SEs (DLI interface) CE Data DatasetPath Fileblocks LFNs, #events, fileblocks RB/WMS LFN !> PFN PhEDEx C R A B

(9)

Server architecture

•  Agent-based model

•  Publish&Subscribe message service

•  Most components are

multi-threading

•  Transparent support to multiple storage systems (SEAPI) and multiple

middlewares (BossLite) TASK TRACKING ADMIN CONTROL ERROR HANDLER JOB KILLER CRAB JOB CREATOR TASK LIFE MANAGER TASK REGISTER CRAB SERVER WORKER JOB TRACKING GET OUTPUT COMMAND MANAGER NOTIFI-CATION HTTP FRONTEND USER

(BROWSER, MAILBOX, USER INTERFACE)

MIDDLEWARE MYSQL DATABASE (BOSSLITE) ST ORAGE MYPR O XY

(10)

GRID -submit gSOAP COMMAND MANAGER TASK REGISTER CLIENT SERVER CRAB SERVER WORKER Storage Element GSIFTP MySQL DATABASE SQLITE DB

Components interaction example

(submission)

If a component/thread crashes, the system continues to work

Other services provided by the server will be not

compromised

At worst, smooth degradation of QoS

(11)

CRAB deployment

on Grid infrastructure

•  CRAB deployment strategy for CMS

–  enforce fault-tolerance

–  avoid single point congestion

–  gLite is the main middleware used

–  periodic challenges are performed to test and stress the infrastructure

•  Different CRAB-AS in production now

–  located at CERN (CH), UCSD (US), BARI (IT)

–  each physic groups can deploy it’s own unofficial server

•  Analysis Operators’ team (AnaOps) manages and monitors the services

(12)

Statistics: starting point

•  Source of statistics: CMS Dashboard

•  Focus on comparison between standalone and client/ server approaches

–  trend analysis from Jan 2008 to Feb 2010

•  Statistic is not “perfect”

–  sometimes testing jobs submitted by CRAB developers are counted as analysis jobs…

(13)

CRAB Standalone vs Server

(2008 – 2009) 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% SERVER DIRECT DIRECT; SERV; 2008 DIRECT; SERV; 2009

(14)

CRAB Standalone vs Server

(last 6 months, Sep’09 - Feb’10)

(15)

CRAB Standalone vs Server

(2009) Restart  of  LHC   Number of distinct CRAB users: 150~200/day Max distinct users

peak reached: ~250

(16)

Considerations & Remarks

•  Architectural aspects of the software are the key factors

to reach success

–  good performance achieved –  good stability and reliability

•  Inside CMS community, the adoption of client/server approach is increasing

–  good feedback by users

–  good quality of service reached

•  The only (relevant but known) problems are related to

data movement

–  stage-out remains a critical operation across the Grid, influenced by several factors

(17)

Improvements &

Future works

•  Consolidate the actual architecture

–  change the interaction with gLite middleware (CLI instead of API) –  better strategies for stage-out operations

–  maintain the best interoperability for all middlewares supported –  reduce the number of jobs aborted

–  improvements for intelligent resubmission

•  New framework for all CMS computing: WMCore

–  one application targets the online (T0), the official production (T1) and the user analyses (T2)

–  communications based on RESTful web services –  too young to go to production (expected for…)

(18)

THANK YOU FOR YOUR

ATTENTION

Questions?

(19)

The CRAB history

(backup slide) CRAB_1_X_X CRAB_2_X_X (10/2007) CRAB_2_7_1 (03/2010) CRABSERVER_0_0_1 (07/2007) CRABSERVER_1_0_X (05/2008) CRABSERVER_1_1_0 (11/2009) CRABSERVER_1_1_1 (03/2010) 2004/2005 2006 2007 2008 2009 2010

References

Related documents

This Indian Standard which is identical with ISO 10002:2006 ‘Quality management — Customer satisfaction — Guidelines for complaints handling in organizations’ issued by

As Joseph Feiman points out, “An ideal RASP implementation would be instrumentation of the runtime engine (e.g., an application server) that leaves the application code

Total price paid for all securities beneficially owned or, directly or indirectly controlled, on the distribution date, including any securities purchased under the distribution

Diffusion of a PEBM template in portfolio firms by outside investors may encourage many of them to adopt internal structures or management tools that are similar to those present

This section covers Marx’s theories of history, class, method, ideology, value, money, capital, labor, crisis, the state, social reproduction, technology, alienation, and

The case places students in the roles of executives, IT managers, and auditors and encourages them to discuss several important questions: how and why did the hacking incident

Durable Medical Equipment (DME)/Yes: The cost associated with the purchase or rental of durable medical equipment that is prescribed by a medical practitioner to alleviate or treat

The q_2dbb Simulink diagram shown in Figure 4.5 is used to run the state-feedback control on the Quanser 2 DOF Ball Balancer system.. The SRV02-ET+2DBB subsystem contains QUARC