Download presentation
Presentation is loading. Please wait.
Published byRoger Nathaniel Cross Modified over 9 years ago
1
Condor Birdbath Web Service interface to Condor
Clovis Chapman, Charaka Goonatilake, Wolfgang Emmerich, Matthew Farrellee, Todd Tannenbaum, Miron Livny, Mark Calleja and Martin Dove
2
Condor Overview Jobs (command-line) Submission Machine (Schedules Jobs) Central manager Execution machines UCL 940 machines – CamGrid High-throughput computing resource manager and job scheduler. Allows idle computing resources to be exploited , etc. … UCL Condor Pool: ~ 940 Windows Terminal Servers spread over 30 student clusters (3 years running) CamGrid: ~140 Linux machines spread over 8 pools brought together through flocking
3
Motivations Facilitate the development of third-party tools and applications capable of interacting with Condor remotely. E.g. Build higher-level application specific scheduler that submits jobs to one or more Condor pools according to application semantics These can be built using a wide range of languages/SOAP packages – Birdbath tested on: Java (Apache Axis, XSUL) Python (ZSI) C# (.Net) C/C++ (gSOAP) Can also use Web Service based workflow modelling languages such as BPEL (Business Process Execution Language) Build Web Service support within the Condor architecture itself i.e. Rather than rely on external “wrappers” (e.g. Globus Toolkit) Expose a wide range of high-throughput computing services based on Condor capabilities (e.g. workload/queue management, scheduling, checkpointing, job migration, etc.) Rather than wrap up a condor pool – provide different services Mention embedding grid considerations within the condor architecture Musnt affect features that made it popular 3
4
The big picture 4 BPEL Site D: Bath Condor-G Client SOAP SOAP Schedd
Globus/gridSAM Client BPEL SOAP SOAP Schedd Schedd Schedd flocking Site A: CamGrid Site B: UCL Site C: RI 4
5
Why SOAP? Alternatives 5 Building wrappers around command line tools
Globus Toolkit 3 Good when interacting with different types of resource managers. Otherwise Birdbath has a richer, more scalable and streamlined interface which is more suited to Condor. Condor’s GAHP protocol: ASCII stream-based protocol. Built within Condor itself. Simple Condor specific protocol for remote submission No Type Safety / interface declaration / session management. DRMAA API: built-in support API for the submission and control of jobs to one or more Distributed Resource Management Systems defined by the GGF. Allows access to Condor through Local procedure calls C binding only / Weak fault tolerance 5
6
Submission machine(s)
Condor Architecture overview Central manager Negotiator Collector Job ClassAd Resource classAd Submission machine(s) Execution machine(s) Startd Schedd Starter Shadow 6
7
Condor Architecture overview
ClassAds Universe = Vanilla Requirements = (OpSys == “WINNT50”) \ && (Arch == “INTEL”) \ && (Memory > 256) Executable = cpusoak.exe Input = input.txt Output = output.txt TransferFiles = IF_NEEDED Arch = "INTEL" OpSys = "WINNT50" State = "Unclaimed" Activity = "Idle" LoadAvg = Memory = 256 Cpus = 1 7
8
Condor SOAP extensions
Remote Client Obtain pool characteristics (resource ClassAds) Submit Job (send job ClassAd) Monitor Job (Obtain Job ClassAds) Get/Send file Cancel/hold/release job Execution machine Execution machine Submission machine(s) Central manager Schedd Collector Negotiator Execution machine Shadow Execution machine 8
9
Clients for the Condor Web Services
Custom Client holdJob() Submission machine(s) SOAP library Schedd All libraries can be generated (automatically) based on interface description provided by us (WSDL) The WSDL interface defines which operations can be called and their parameters (e.g. queryAds(Constraint)) Alternatively use a Web Service based orchestration language like BPEL (Business Process Execution Language) 9
10
Quick application example: Collector Query
Using Axis API. Generate stubs from WSDL file using WSDL2Java e.g. Obtain information about all resources that have over 512Mb RAM locator = new CondorLocator(); collector = locator.getCollector(new URL(“ ads = collector.QueryStartdAds(“Memory>512”); 10
11
Quick Application example: Job Submission
Transaction based process New Transaction() New Job ID () Send Files ({input files, binaries}) Send Job Description(ClassAd) Commit Transaction() File transfer is in segments (specified by users) – using simple protocol Two Phase Commit for increased robustness Can also submit DAG-Man jobs 11
12
Available in Condor 6.7.5 dev releases
Simply add the following to your configuration file: ENABLE_SOAP = TRUE ENABLE_WEB_SERVER = TRUE WEB_ROOT_DIR = $RELEASE_DIR/lib/webservice 12
13
OMII Collaboration: GridSAM plugin
Web Service based job submission service Uses JSDL (Job Submission Description Language) for standardized job submission to a wide range of resource managers Job Manager SGE connector Condor LSF Network JSDL SOAP Client GridSAM Web Service <?xml version="1.0" encoding="UTF-8"?> <JobDefinition xmlns=" <JobDescription> <Application> <Executable>/bin/echo</Executable> <Argument>hello world</Argument> </Application> </JobDescription> </JobDefinition> submit
14
Condor WS plug-in for GridSAM
Client Advantages: Independent deployment of GridSAM Submission to multiple schedulers – load balancing Increased robustness and fault handling Access to a wider range of Condor functionality – Condor-G, etc. Network GridSAM Web Service Job Manager SGE connector WS-Condor connector LSF connector Network Condor Pool UCL Schedd 14
15
Condor WS plug-in for GridSAM
Client Advantages: Independent deployment of GridSAM Submission to multiple schedulers – load balancing Increased robustness and fault handling Access to a wider range of Condor functionality – Condor-G, etc. Network GridSAM Web Service Job Manager SGE connector WS-Condor connector LSF connector Network UCL Pool CamGrid RI Schedd Schedd Schedd 15
16
BPEL orchestration of scientific workflows
16
17
Still to be done Security (SSL for now)
Certificate based security Using mappings to local accounts Take advantage of additional capabilities of WSRF and WS-notification (scheduler instances, etc.) Exposing more components (e.g. shadow for remote checkpointing and retrieval of partial output files) 17
18
Download Condor SOAP interface available from version 6.7.5:
Condor-WS GridSAM soon to be provided with GridSAM: 18
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.