32
www.eu-etics.org Europeean Condor Week 2006 Europeean Condor Week 2006 Milano, June 26-29, 2006 Milano, June 26-29, 2006 Condor for building with NMI and ETICS Marian ZUREK Marian ZUREK

Europeean Condor Week 2006 Milano, June 26-29, 2006

  • Upload
    jory

  • View
    24

  • Download
    0

Embed Size (px)

DESCRIPTION

Condor for building with NMI and ETICS Marian ZUREK. Europeean Condor Week 2006 Milano, June 26-29, 2006. Overview. What is ETICS What is NMI Where is Condor NMI architecture NMI job HelloWorld example ETICS Testbed What we do using NMI & Condor gLite testing requirements Conclusions - PowerPoint PPT Presentation

Citation preview

Page 1: Europeean Condor Week 2006 Milano, June 26-29, 2006

www.eu-etics.org

Europeean Condor Week 2006Europeean Condor Week 2006Milano, June 26-29, 2006Milano, June 26-29, 2006

Condor for building with NMI and ETICS

Marian ZUREK Marian ZUREK

Page 2: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 2

Overview

• What is ETICSWhat is ETICS• What is NMIWhat is NMI• Where is CondorWhere is Condor• NMI architectureNMI architecture• NMI jobNMI job• HelloWorld exampleHelloWorld example• ETICS TestbedETICS Testbed• What we do using NMI & CondorWhat we do using NMI & Condor• gLite testing requirementsgLite testing requirements• ConclusionsConclusions• Wish listWish list• Q & AQ & A

Page 3: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 3

What is ETICS

• ETICS stands for e-Infrastructure for Testing, ETICS stands for e-Infrastructure for Testing, Integration and Configuration of SoftwareIntegration and Configuration of Software

• It’s an SSAIt’s an SSA• Vision: A dependable, reliable, stable grid Vision: A dependable, reliable, stable grid

infrastructure requires high-quality, thoroughly tested, infrastructure requires high-quality, thoroughly tested, interoperable software middleware and applicationsinteroperable software middleware and applications

• Mission: Provide a generic service that other projects Mission: Provide a generic service that other projects can use to efficiently and easily build and test their grid can use to efficiently and easily build and test their grid and distributed software.and distributed software.

• Set up the foundations for a certification process to Set up the foundations for a certification process to help increasing the quality and interoperability of such help increasing the quality and interoperability of such softwaresoftware

Page 4: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 4

The ETICS Consortium

Build system, software configuration, service

infrastructure, dissemination, EGEE,

gLite, project coord.

Software configuration, service infrastructure, dissemination

Web portals and tools, quality process, dissemination, DILIGENT

Test methods and metrics, unit testing tools, EBIT

The Condor batch system, distributed testing tools, service infrastructure, NMI

Page 5: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 5

ETICS Service Overview

Build/TestArtefacts

Web Application

ReportDB

ProjectDB

NMI Scheduler

Clients

Web Service

NMI ClientWrapper

Via browser

Command-Line tools

WNs ETICS InfrastructureContinuous Builds

Page 6: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 6

Browsing a project

Module Details

Module ConfigurationsProject Structure

Page 7: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 7

Browsing configurations

Conf

Details

Configuration

Browser

Module

Details

Sub-ConfigurationsSub-Configurations

Commands

Properties

Environment

Dependencies

Build Schedules

Page 8: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 8

Command line tools

• Command Line Interface (CLI) is developped along with Command Line Interface (CLI) is developped along with the WebApplication and offers the same functionality the WebApplication and offers the same functionality as WebApplication (they use the same underlying web as WebApplication (they use the same underlying web service libraries)service libraries)

• Written in PythonWritten in Python– Using ZSIUsing ZSI– CVS-style command syntaxCVS-style command syntax– etics-* (etics-get-project, etics-checkout, …)etics-* (etics-get-project, etics-checkout, …)

• The CLIs are directly used for NMI/Condor job/tests The CLIs are directly used for NMI/Condor job/tests submissionsubmission

• etics-get-projectetics-get-project

Page 9: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 9

List of Commands: Submit

• etics-remote-build [options] –c <configuration-name> -p <platform-name-etics-remote-build [options] –c <configuration-name> -p <platform-name-list> -m <project-name>list> -m <project-name>– It performs a remote build for an ETICS projectIt performs a remote build for an ETICS project

– The remote build consists on submitting a request to an external build system that The remote build consists on submitting a request to an external build system that uses the ETICS infrastructure to builduses the ETICS infrastructure to build

– By default, the command remotely builds the current project by using the current By default, the command remotely builds the current project by using the current configuration and platform.configuration and platform.

– It returns an ID that will be used to get the status buildIt returns an ID that will be used to get the status build

– -p, --platforms -p, --platforms – It specifies the list of platforms where to buildIt specifies the list of platforms where to build

– -m, --project -m, --project – It specifies the project name to buildIt specifies the project name to build

– -c --configuration -c --configuration – It specifies the configuration name to be used to buildIt specifies the configuration name to be used to build

– --all-platforms --all-platforms – It means that the remote build is performed on all platformsIt means that the remote build is performed on all platforms

Page 10: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 10

CLI - example

What is under the hood ?•cvs co org.etics (etics-get-project, etics-checkout)•./configure; make dist | test | install (etics-build)

Page 11: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 11

What is Condor and NMI

• NMI is a multi-platform facility designed to provide NMI is a multi-platform facility designed to provide (automated) software building and testing services for a (automated) software building and testing services for a variety of (grid) computing projects.variety of (grid) computing projects.

• NMI is a layer on the top of Condor to abstract the typical NMI is a layer on the top of Condor to abstract the typical complexity of the Build and Test processcomplexity of the Build and Test process

• Condor is offeringCondor is offering mechanisms and policies that support mechanisms and policies that support High Throughput Computing (HTC) on large collections of High Throughput Computing (HTC) on large collections of distributed computing resourcesdistributed computing resources

Page 12: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 12

NMI architecture

Page 13: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 13

NMI job

• a set of user commands/scripts representing the workflow of the build or test producing the output (optional)

Page 14: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 14

NMI job

Page 15: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 15

HelloWorld.nmi

Page 16: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 16

HelloWorld.cvs

Page 17: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 17

Dedicated UI WN

Page 18: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 18

ETICS testbed

• etics.cern.chetics.cern.ch– Official ETICS submission node - production hostOfficial ETICS submission node - production host– 2000+ jobs (as of 24th June 2006)2000+ jobs (as of 24th June 2006)

• etics-test.cern.ch, etics-01.cnaf.infn.itetics-test.cern.ch, etics-01.cnaf.infn.it– test submission nodestest submission nodes

• etics-dev.cern.chetics-dev.cern.ch– development nodedevelopment node– non-stablenon-stable

• etics-db.cern.chetics-db.cern.ch– MySQL database hostMySQL database host

Page 19: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 19

etics.cern.ch pool

• ia32ia32– 6x SLC36x SLC3– 2x SLC4 2x SLC4 – 1x RHES v3.01x RHES v3.0– 1x Debian v3.11x Debian v3.1– 1x FC31x FC3– 1x FC41x FC4– 1x WinXP1x WinXP

• ia64/x86_64ia64/x86_64– 2 x SLC32 x SLC3– 1 x SLC41 x SLC4– 1x PPC1x PPC

Page 20: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 20

Production

• Operational setupOperational setup

– WNs status pageWNs status pagehttp://etics.http://etics.cerncern..ch/nmi/ch/nmi/?page=pool/index?page=pool/index

http://etics-test.cern.ch/nmi/?page=pool/indexhttp://etics-test.cern.ch/nmi/?page=pool/index

– Job submission status pageJob submission status pagehttp://etics.cern.ch/nmi/?page=results/overviewhttp://etics.cern.ch/nmi/?page=results/overview

http://etics-test.cern.ch/nmi/?page=results/overviewhttp://etics-test.cern.ch/nmi/?page=results/overview

Page 21: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 21

Page 22: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 22

Page 23: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 23

• What we use NMI & Condor for ?What we use NMI & Condor for ?

Page 24: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 24

What we want to do

• our final goal is to our final goal is to test the current gLite components with ETICStest the current gLite components with ETICS. We’d . We’d like to :like to :– automatically deploy the full set of gLite services on different platformsautomatically deploy the full set of gLite services on different platforms

– automatically have our full set of tests executed periodicallyautomatically have our full set of tests executed periodically

– set explicit dependencies for the tests on other tests or specific middleware set explicit dependencies for the tests on other tests or specific middleware components:components:

– «  execute test B only is test A was successful  »«  execute test B only is test A was successful  »– « install component C1 and C2 if required by test A   »« install component C1 and C2 if required by test A   »

– easily access the test results easily access the test results

– easily debug test failureseasily debug test failures

– easily reproduce a test result from a specific configurationeasily reproduce a test result from a specific configuration

==> for that we need ==> for that we need reliably scheduling and executing reliably scheduling and executing infrastructureinfrastructure

Page 25: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 25

gLite testing requirements

• Dependency on UI (User Interface)Dependency on UI (User Interface)– UI installation required for each testUI installation required for each test– Time impact --> dedicated UI Worker Node Time impact --> dedicated UI Worker Node

– append_requirements = ( Machine == “lxb1115.cern.ch”)append_requirements = ( Machine == “lxb1115.cern.ch”)

• Proxy forwardingProxy forwarding– Once proxy exists on the submit node NMI/Condor can forward it to the target Once proxy exists on the submit node NMI/Condor can forward it to the target

WNWN

• Freeze optionFreeze option– Shoud the test fail I want this node to leave condor pool Shoud the test fail I want this node to leave condor pool

and I want to debug the failing component(s)and I want to debug the failing component(s)

==> we need very flexible environment==> we need very flexible environment

Page 26: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 26

Root-enabled installations/tests

• Some gLite tests require root environmentSome gLite tests require root environment

• System test require services persistencySystem test require services persistency– Some services after installation should remain Some services after installation should remain

operational for the predefined period of timeoperational for the predefined period of time

• Configuration of the Condor running in the Configuration of the Condor running in the priviliged modepriviliged mode– sudo, STARTd configurationsudo, STARTd configuration

– ==> not the preferred operational mode, but possible ==> not the preferred operational mode, but possible (very close to the production quality)(very close to the production quality)

Page 27: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 27

Public/private pools

• A project wants to use ETICS and brings in its private nodes and A project wants to use ETICS and brings in its private nodes and wants its full power to be wants its full power to be privateprivate

• Steering the jobs to this node, preventing from others landing thereSteering the jobs to this node, preventing from others landing there

• ==> already implemented and operational==> already implemented and operational

Page 28: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 28

EGEE2 and Other Collaborations

• The ETICS services are intended to provide from the start the The ETICS services are intended to provide from the start the integration, testing and QA tools for integration, testing and QA tools for EGEE/EGEE2EGEE/EGEE2, , DiligentDiligent and and other partner projectsother partner projects

• Part of the infrastructure and tools, the NMI infrastructure, are the Part of the infrastructure and tools, the NMI infrastructure, are the same already used by project like same already used by project like CondorCondor and and VDTVDT at the UoW. It at the UoW. It also provides a direct bridge between EGEE2 and OSGalso provides a direct bridge between EGEE2 and OSG

• Other projects developing software and in particular applications Other projects developing software and in particular applications providers are more than welcome to use the services and tests providers are more than welcome to use the services and tests their products with ETICStheir products with ETICS

• One of the major goals of ETICS is to One of the major goals of ETICS is to strengthenstrengthen the the interoperabilityinteroperability and and qualityquality of middleware and applications of middleware and applications developed for the Grid and other complex distributed developed for the Grid and other complex distributed environments. Everybody’s collaboration is welcome and needed.environments. Everybody’s collaboration is welcome and needed.

Page 29: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 29

Conclusions

• We need robust componentsWe need robust components– We need reliable scheduling and execution environment for the We need reliable scheduling and execution environment for the

complex workflowscomplex workflows– We have many spread resources (CERN, INFN, Madison, …) We have many spread resources (CERN, INFN, Madison, …)

and want to access them transparentlyand want to access them transparently

• Collaboration with UWCollaboration with UW– Very good support from the Condor Team (Peter COUVARES Very good support from the Condor Team (Peter COUVARES

and Anatholy KARP)and Anatholy KARP)– Bi-weekly technical meetingsBi-weekly technical meetings

• We are on the track We are on the track

Page 30: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 30

Wish list …

• Co-scheduling/parallel system testsCo-scheduling/parallel system tests• PersistencyPersistency• VirtualisationVirtualisation• Light dynamic ClassAd publish mechanismLight dynamic ClassAd publish mechanism• Easy mechanism for match-making investigationEasy mechanism for match-making investigation

– condor_q -better-analysecondor_q -better-analyse– Quill++ ?Quill++ ?

• How about your wishes for ETICS?How about your wishes for ETICS?

Page 31: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 31

Want to learn more ?

http:http://www.eu-etics.org//www.eu-etics.org

[email protected]@cern.ch

Page 32: Europeean Condor Week 2006 Milano, June 26-29, 2006

CondorWEEK’2006, Milano, [email protected] 32

Certification question

Standards, QA, interoperability, …

In what sense software is “good”?

The software adheres to agreed standards, it executes in the expected way, satisfied a number of qualitative and quantitative requirements, etc, etc, etc

ETICS PABUser communities

ETICS