Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Condor and Web Services Matthew Farrellee Computer Sciences Department University of Wisconsin-Madison [email protected] http://www.cs.wisc.edu/condor Outline › › › › › › Current “API” What are Web Services and SOAP? Benefits of a Condor SOAP API Functionality and examples State of the implementation Future features www.cs.wisc.edu/condor 2 Current “API” › Use command-line tools directly › Applications use command-line tools via system calls www.cs.wisc.edu/condor 3 What are web services? › Applications accessible typically over HTTP › using SOAP and XML Standards exist for discovery of services description of application interfaces (WSDL) communication mechanisms (RPC) and many other things www.cs.wisc.edu/condor 4 What is SOAP? › Simple Object Access Protocol › Mechanism for doing RPC using XML typically over HTTP › A World Wide Web Consortium (W3C) standard www.cs.wisc.edu/condor 5 Benefits of a Condor SOAP API › Condor becomes a service Can be accessed with standard web service tools › Condor accessible from platforms where › its command-line tools are not supported Talk to Condor with your favorite language and SOAP toolkit www.cs.wisc.edu/condor 6 Condor SOAP API in the wild › Condor called from Business Process Execution Language (BPEL) workflows (LBL) › Portal providing web interface to Condor pools (Indiana University) www.cs.wisc.edu/condor 7 Condor SOAP API functionality › › › › › Submit jobs Retrieve job output Remove/hold/release jobs Query machine status Query job status www.cs.wisc.edu/condor 8 Getting machine status via SOAP Your program condor_collector queryStartdAds() Machine List SOAP library SOAP over HTTP www.cs.wisc.edu/condor 9 Getting machine status via SOAP (in Java with Axis) locator = new CondorCollectorLocator(); collector = locator.getcondorCollector(new URL(“http://machine:port”)); ads = collector.queryStartdAds(“Memory>512“); Because we give you WSDL information you don’t have to write any of these functions. www.cs.wisc.edu/condor 10 Submitting jobs 1. 2. 3. 4. 5. 6. Begin transaction Create cluster Create job Send files Describe job Commit transaction } • Wash, rinse, repeat Two phase commit for reliability www.cs.wisc.edu/condor 11 Current implementation › Working prototype exists › Expected release in 6.7 series www.cs.wisc.edu/condor 12 Future features › Support for authenticated access › Support for notification › Becoming a grid service www.cs.wisc.edu/condor 13 Questions? www.cs.wisc.edu/condor 14