INFSO-RI-223782 Support for IPv6 in ETICS EGEE’08 Conference, Istanbul, 22-26 September 2008 Marian ZUREK CERN - ETICS

Slides:



Advertisements
Similar presentations
INFSO-RI An On-Demand Dynamic Virtualization Manager Øyvind Valen-Sendstad CERN – IT/GD, ETICS Virtual Node bootstrapper.
Advertisements

SC7 WG6 Rome Engineering Ingegneria Informatica S.p.A. INFSO-RI Isabel Matranga ETICS Automated Building,Testing and Quality Assurance.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
INFSO-RI Quality Assurance with ETICS – multi- node automated testing CGW 09 M.Zurek, A. A. Rodriguez, A. Aimar, A. di Meglio, L. Dini CERN Krakow,
EMI INFSO-RI EMI SA2 Report Quality Assurance Alberto Aimar (CERN) SA2 WP Leader.
EMI INFSO-RI EMI Quality Assurance Processes (PS ) Alberto Aimar (CERN) CERN IT-GT-SL Section Leader EMI SA2 QA Activity Leader.
EMI INFSO-RI SA2 - Quality Assurance Alberto Aimar (CERN) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
INFSO-RI Enabling Grids for E-sciencE SA1: Cookbook (DSA1.7) Ian Bird CERN 18 January 2006.
EGEE is a project funded by the European Union under contract IST Testing processes Leanne Guy Testing activity manager JRA1 All hands meeting,
EGEE is a project funded by the European Union under contract IST Build Infrastructure & Release Procedures Integration.
INFSO-RI Module 01 ETICS Overview Alberto Di Meglio.
FP6−2004−Infrastructures−6-SSA IPv6 and Grid Middleware: the EUChinaGRID experience Gabriella Paolini – GARR Valentino.
A DΙgital Library Infrastructure on Grid EΝabled Technology ETICS Usage in DILIGENT Pedro Andrade
INFSO-RI JRA2: Testing senarious ETICS AH meeting Budapest, Iune 2009 Eva Takacs, Jozsef Kuti, András Milassin 4D Soft.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks gLite IPv6 compliance project tests Further.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks IPv6 and gLite: a roadmap proposal Xavier.
INFSO-RI Module 01 ETICS Overview Etics Online Tutorial Marian ŻUREK Baltic Grid II Summer School Vilnius, 2-3 July 2009.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks General relationships with EGEE JRA1 SA3.
FP6−2004−Infrastructures−6-SSA IPv6 in the EGEE Related Projects: the EUChinaGRID experience Gabriella Paolini – GARR.
INFSO-RI Enabling Grids for E-sciencE The gLite Software Development Process Alberto Di Meglio EGEE – JRA1 CERN.
INFSO-RI SA1 Service Management Alberto AIMAR (CERN) ETICS 2 Final Review Brussels - 11 May 2010.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks, An Overview of the GridWay Metascheduler.
EGEE is a project funded by the European Union under contract IST JRA1-SA1 requirement gathering Maite Barroso JRA1 Integration and Testing.
INFSO-RI Support for IPv6 in ETICS EGEE’08 Conference, Istanbul, September 2008 Marian ZUREK CERN - ETICS
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Operations Automation Team James Casey EGEE’08.
INFSO-RI Enabling Grids for E-sciencE Integration and Testing, SA3 Markus Schulz CERN IT JRA1 All-Hands Meeting 22 nd - 24 nd March.
INFSO-RI ETICS The Software Engineering Infrastructure Physics Services Meeting Geneva, July 3 rd 2008 Alberto Di Meglio CERN - ETICS
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks gLite Build Programme and Multi-Platform.
JRA Execution Plan 13 January JRA1 Execution Plan Frédéric Hemmer EGEE Middleware Manager EGEE is proposed as a project funded by the European.
Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Usage of virtualization in gLite certification Andreas Unterkircher.
Feedback from the POOL Project User Feedback from the POOL Project Dirk Düllmann, LCG-POOL LCG Application Area Internal Review October 2003.
INFSO-RI JRA 1 Testbed Management Technologies Alain Roy (University of Wisconsin-Madison, USA) ETICS 2 Final Review Brussels - 11 May 2010.
INFSO-RI Module 05 The ETICS Plugins and Compliance Analysis Alberto Di Meglio.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks IPv6 test methodology Mathieu Goutelle (CNRS.
EGEE is a project funded by the European Union under contract IST Tools survey status, first experiences with the prototype Diana Bosio EGEE.
Conference name Company name INFSOM-RI Speaker name The ETICS Job management architecture EGEE ‘08 Istanbul, September 25 th 2008 Valerio Venturi.
GLite build and integration system Building and Packaging Robert HARAKALY
Testing Grid Software on the Grid Steven Newhouse Deputy Director.
INFSO-RI Enabling Grids for E-sciencE Ganga 4 – The Ganga Evolution Andrew Maier.
INFSO-RI Enabling Grids for E-sciencE ARDA Experiment Dashboard Ricardo Rocha (ARDA – CERN) on behalf of the Dashboard Team.
INFSOM-RI WP 4 : Testing Tools and Methodologies Status Report ETICS Review – 15 February 2008 Éva Takács (4D SOFT)
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
INFSO-RI Enabling Grids for E-sciencE The gLite Software Development Process Alberto Di Meglio EGEE – JRA1 CERN.
EMI INFSO-RI EMI Quality Assurance Tools Lorenzo Dini (CERN) SA2.4 Task Leader.
D4Science and ETICS Building and Testing gCube and gCore Pedro Andrade CERN EGEE’08 Conference 25 September 2008 Istanbul (Turkey)
INFSO-RI ETICS The Software Engineering Infrastructure EGEE 08 Istanbul, September 2008 Alberto Di Meglio CERN – ETICS Project manager.
INFSO-RI SA2 ETICS2 first Review Valerio Venturi INFN Bruxelles, 3 April 2009 Infrastructure Support.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Patch Preparation SA3 All Hands Meeting.
Configuration & Management for Joachim Flammer Integration Team EGEE is a project funded by the European Union under contract IST JRA1 all-hands-meeting,
INFSO-RI JRA2 Test Management Tools Eva Takacs (4D SOFT) ETICS 2 Final Review Brussels - 11 May 2010.
INFSO-RI Enabling Grids for E-sciencE Ganga 4 Technical Overview Jakub T. Moscicki, CERN.
INFSOM-RI ETICS: E-infrastructure for Testing, Integration and Configuration of Software Alberto Di Meglio Project Manager.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Etienne Dublé - CNRS/UREC EGEE SA2 Mario.
ETICS An Environment for Distributed Software Development in Aerospace Applications SpaceTransfer09 Hannover Messe, April 2009.
EMI is partially funded by the European Commission under Grant Agreement RI Open Source Software and the ScienceSoft Initiative Alberto DI MEGLIO,
JRA1 Meeting – 09/02/ Software Configuration Management and Integration EGEE is proposed as a project funded by the European Union under contract.
EMI INFSO-RI SA2: Quality Assurance Status Report Alberto Aimar(SA2) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
INFSOM-RI The ETICS Service Configuration, Building and Testing Elisabetta Ronchieri, ETICS Project, INFN CNAF.
Experiencing in using ETICS, a multi-platform and open source build and test system for big software projects Elisabetta Ronchieri INFN CNAF 5 July 2011,
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Towards an Information System Product Team.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) gLite Grid Introduction Salma Saber Electronic.
INFSOM-RI Elisabetta Ronchieri INFN CNAF ETICS 2 nd EU Review (CERN) 15 February 2008 WP3 - Software Configuration Tools and Methodologies.
INFSOM-RI WP3: WP3: Software configuration tools and methodologies Status Report ETICS All-Hands – 23 May 2007 E. Ronchieri.
Budapest, EGEE’07 Conference IPv6 support in ETICS Marian ZUREK for the ETICS Team.
Bob Jones EGEE Technical Director
Marc-Elian Bégin ETICS Project, CERN
ETICS Pool for IPv6 tests
Testing for patch certification
Module 01 ETICS Overview ETICS Online Tutorials
Presentation transcript:

INFSO-RI Support for IPv6 in ETICS EGEE’08 Conference, Istanbul, September 2008 Marian ZUREK CERN - ETICS

INFSO-RI Contents General overview Who/what we are: Partners/Architecture ETICS Infrastructure IPv6 compliance (IPv6 plugin) IPv6 Testbed Examples of usage ETICS plugin framework Future work Conclusions 2

INFSO-RI General Overview ETICS stands for E-infrastructure for Testing, Integration and Configuration of Software ETICS started in January 2006 and ended in December It had a very successful review exceeding all stated objectives ETICS 2 started in March 2008 (ranked first in the proposal selection process) and it’s supposed to run until February 2010 (mostly with EC funding) and then on its own ETICS is not ‘just’ a build system, it’s a complete infrastructure for building, testing, configuring and managing software projects 3

INFSO-RI Partners 4

INFSO-RI Architecture 5

INFSO-RI What ETICS is It’s a software engineering management system It’s a build and test infrastructure It provides tools and resources to configure, manage and analyse build and test runs It provides a common interface to diverse projects to facilitate knowledge sharing and operations management It has an open repository of configuration metadata, packages, reports. The goal is to share information, but also to reliably store and preserve information It has a plugin-based architecture and APIs to allow integrating ETICS into existing processes and extending it with custom actions It’s multi-platform and independent from any specific build or test tool 6

INFSO-RI ETICS Users EGEE uses ETICS within four Activities: NA4, JRA1, SA2, SA3 JRA1 and SA3 are the main ETICS users SA2 has implemented with ETICS the IPv6 compliance analysis of gLite code and the distributed IPv6 experimental testbed where the IPv6 version of BDII (and more) has been tested NA4 is using ETICS for experimenting with a few projects like Gridway, mpi, SAGA and the panc quattor compiler 7

INFSO-RI The ETICS Infrastructure The ETICS Infrastructure is currently based on three resource pools managed by Condor, at CERN, UoW and INFN There are about 450 cores available in the three sites with more than 40 different types of platforms At CERN in particular there are 120 cores and 12 different platforms (a platform is a combination of operating system, CPU architecture and compiler, ex: slc4_ia32_gcc36, deb4_x86_64_gcc412, etc) Additionally various nodes are attached to the CERN pool from third-party projects or organizations for specific use (4D Soft Ltd for DILIGENT in Hungary, GARR for EUChinaGrid and EGEE/SA2, IN2P3 for EGEE/SA2) 8

INFSO-RI The ETICS Infrastructure 9

INFSO-RI The CERN Resource Pool 10

INFSO-RI More about ETICS … Please join us on Thursday, the 25 th of September in the Malazgirt Hall between 16:00 and 19:00. 11

INFSO-RI IPv6 support in ETICS As a consequence of task defined in SA2/EGEE (EU requirement) for assuring grid interoperability integrate sites/countries lacking public IPv4 address ETICS has been contacted as a partner in this task 12

INFSO-RI Under the hood or what’s needed for IPv6 tests 13 A dedicated Condor configuration has been adopted to assure the proper match making for jobs requesting IPv6 resources (not visible to the user) host_network_stack = "IPv6” STARTD_EXPRS = $(STARTD_EXPRS) host_network_stack START = (job_network_stack =?= $(host_network_stack)) “extra” part in the submision engine (not visible to user) append_requirements = ( host_network_stack =?= "IPv6" ) ++job_network_stack = "IPv6”

INFSO-RI Is your code IPv6 compliant? July 2008 For assessing the source code compliance a ETICS IPv6 Plugin has been developed and is present in the main-stream ETICS distribution Language coverage: Survey under preparation for the most common languages: C, C++, Java, Python, PERL Disclaimer: The passive check of the source code by the means of IPv6 plug-in presents assessment of the IPv6 compliance. Only the run-time tests could confirm the 100% compliance of your code. More on that - please see talks by Mario & Etienne. Please keep that in mind when watching coming slides.

INFSO-RI Is your code IPv6 compliant?

INFSO-RI Running tests on IPv6 enabled resources

INFSO-RI repository.cern.ch:8443/repository/download/volatile/gli te_3_1_0/OverallReports/org.glite/org.glite/ /slc4_x86_64_gcc346/reports.tar.gz$reports/ipv6/inde x.html Where to look for gLite IPv6 compliance reports 17

INFSO-RI IPv6 compliance report - ETICS

INFSO-RI IPv6 compliance report - gLite

INFSO-RI IPv6 compliance report - gLite/LCG-DM

INFSO-RI Plugins and Metrics Collectors The ETICS system is plugin-based (like for example ECLIPSE) It provides a core set of tools (like IPv6) and a published specification for developing additional plugins Plugins are essentially thin wrappers around existing or custom tools providing very specific functionality like packaging, static or dynamic testing, standards compliance testing, service installation and management, reporting, etc Plugins can publish information in the ETICS system in the form of metrics, which can then be used to do data mining or trend analysis using the available ETICS reporting tools Should another plugin be needed - it can be easily added to ETICS 21

INFSO-RI Examples of metrics collectors MetricsTypeProgramming languages/ technologies ToolETICS Plugin ComplexitystaticJava Python JavancssJCcnPlugin PyComplexityPlugin.py Design qualitystaticJavaJdependJDependPlugin N of potential bugsstaticC/C++ Python Perl PHP Java Flawfinder, RATS PMD Findbugs CFlawfinderPlugin CPyPhpRatsPlugin JPmdPlugin JFindbugsPlugin N of potential bugsdynamicC/C++ValgrindCValgrindPlugin Lines of codestaticAllSLOCCountSLOCCountPlugin CoveragedynamicJavaEmma Cobertura JUnitemmaPlugin JCoberturaPlugin Unit tests success rate dynamicJava Python JUnit PyUnit JUnitPlugin JUnitreportsPlugin.py PyUnitPlugin.py Compliance with standards staticIPv6 WSI IPv6Plugin WSInteroperabilityPlugi n ProfilingdynamicC/C++ Java Jrat Valgrind JRatPlugin CValgrindPlugin 22

INFSO-RI Fixing your code – what it takes 23 IPv6 related issues could be quickly and easily fixed JAVA applications are already IPv6 compliant (proper system parameters must be set) - examples: /proc/sys/net/ipv6/bindv6only if set to 1 will not accept IPv6 calls e.g. only changes in 9 (nine) lines were necessary to make BDII IPv6 compliant

INFSO-RI An example IPv6 programming: a dual stack server BDII The first version, an IPv6 server only, that opens one socket using IPv4 mapped address, is easier to develop: Two files and few lines were patched Only 4 lines in “bdii-fwd” were patched: sbin]# diff bdii-fwd.map../sbin.sav/bdii-fwd 10,11d9 < use Socket6; < use IO::Socket::INET6; # UREC/CNRS EGEE-SA2 xj 61c59 > $proxy_server = 169c167 > $remote_server = 24

INFSO-RI An example IPv6 programming: a dual stack server BDII Only 5 lines in “bdii-update”: sbin]# diff bdii-update.map../sbin.sav/bdii- update 17d16 < use IO::Socket::INET6; # UREC CNRS EGEE SA2 xj 416c415 > my $s = 445c444 > my $guard = 570c569 > my $s = 639c638 < system("$bdii_fwd_prog --local :: --service $bdii_port_read" > system("$bdii_fwd_prog --local service $bdii_port_read" 25

INFSO-RI Lesson learned Taking into account the site policies, building the Condor pool out of geographically dispersed Worker Nodes isn’t a trivial task as it may appear. Numerous issues have been identified and adressed: Reverse DNS: Solved by hard-coding the IP addresses in the Condor config files Firewall policies (procedures, transitional openings) Condor: Job Match-making: partial match was causing the ETICS production pool throughput degradation Power-cuts, etc. Mail, IM, SMS, phone were very useful 26

INFSO-RI Latest development I am leaving floor to Etienne who will be talking about extension to IPv6 code checker. We call it “LD_PRELOAD ipv6 checker”. The discussion will cover technique used and also summarise its applicability. 27

INFSO-RI Not enough? A dedicated tutorial is planned to happen during the JRA1 All hands meeting. For those not attending - please refer to our talks and references listed in handouts July 2008

INFSO-RI Next Steps Keep the testbed operational Store working configurations and setup automated tests/deployments inside ETICS Make sure the ETICS service/infrastructure helps you in achieving your (IPv6 and other) goals (= provide continuous support to the community ) Your ideas – how would you like to proceed with your IPv6 compliance development and test we have a manually setup testbed – do we keep it operational or rather deploy the whole infrastructure automatically using ETICS Suggestions, ideas, complains ….. 29

INFSO-RI Conclusions ETICS in collaboration with GARR and UREC is providing the infrastructure enabling the community to perform the IPv6 tests Automated deployment mechanisms should be established to facilitate IPv6 compliance validation test We plan to continue the collaboration 30

INFSO-RI The End Q & A 31

INFSO-RI Benefits of Using ETICS Common set of interfaces and tools to different projects Simplifies working with different projects and transferring knowledge among technical people Configuration information is stored in a single place with a common schema and preserved while people or projects change Multi-platform support allow building and testing the same code-base on as many platforms as needed with negligible additional effort The resource infrastructure allows running several builds and tests without having to set up dedicated machines All machines are configured in the same way or use virtual images in order to guarantee reproducibility of results Standard build and test tools are available out-of-the-box and can be applied in the same way to different build/test runs and different projects over time 32

INFSO-RI Benefits of Using ETICS (2) The built-in packaging system abstracts the package information and automatically builds the appropriate package format for the different platforms (tarballs, RPMS, debs, MSIs, etc). No need to maintain separate scripts Reporting tools are available out-of-the-box to control the software evolution, pinpoint issues and quickly solve problems APIs and plugins allow to integrate the tools into existing development processes and extend them with custom tests or reports as needed New plugins and tools developed by a project can be of benefit to all other projects (no duplication of effort) ETICS provides a large set of external libraries in source format or already precompiled for many platforms (the ‘externals’ project). Components can set dependencies on these libraries and automatically configure their workspace. 33

INFSO-RI The ‘Distributed Testing’ Feature One of the last features to be added, still in experimental mode It allows designing complex tests involving several services and test applications to be deployed on separate nodes ETICS analyses the definition and deploys the services on the necessary nodes A synchronization mechanism orchestrate the start/stop of services and the execution of the test applications At the end the results are collected and reported as a single report It is not yet usable by ‘any user’, it requires some deep knowledge of the system to be tested It has been successfully used in a number of cases by the DILIGENT project It has the strong prerequisite that the services to be deployed have to be managed without user intervention, which is not always the case 34

INFSO-RI How to fix your code Small hint here …. This will be covered in a short tutorial by Mario Another presentation will be given during JRA1 All Hand meeting in …. dates/place TBConfirmed 35