Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of 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