The CDB evolution - part 4

Slides:



Advertisements
Similar presentations
How We Manage SaaS Infrastructure Knowledge Track
Advertisements

Global MP3 Geoffrey Beers Deborah Ford Mike Quinn Mark Ridao.
1. What is Subversion? Why do we need CM? Basic concepts Repositories Options Setup Clients Options Setup Operation Troubleshooting Slide 2.
Setting up of condor scheduler on computing cluster Raman Sehgal NPD-BARC.
An Example of IPv6 Necessity in the Greek School Network Athanassios Liakopoulos Greek Research & Technology Network.
PHP (2) – Functions, Arrays, Databases, and sessions.
Software Frameworks for Acquisition and Control European PhD – 2009 Horácio Fernandes.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 10: Server Administration.
1 Chapter Overview Transferring and Transforming Data Introducing Microsoft Data Transformation Services (DTS) Transferring and Transforming Data with.
SubVersioN – the new Central Service at DESY by Marian Gawron.
NovaBACKUP 10 xSP Technical Training By: Nathan Fouarge
FileSecure Implementation Training Patch Management Version 1.1.
Version Control with git. Version Control Version control is a system that records changes to a file or set of files over time so that you can recall.
Stephan Hurni Consultant Trivadis AG, SQL Server notes from the field.
Partner Logo German Cancio – WP4-install LCFG HOW-TO - n° 1 WP4 hands-on workshop: EDG LCFGng exercises
Sofia, Bulgaria | 9-10 October SQL Server 2005 High Availability for developers Vladimir Tchalkov Crossroad Ltd. Vladimir Tchalkov Crossroad Ltd.
MapReduce: Simplified Data Processing on Large Clusters Jeffrey Dean and Sanjay Ghemawat.
1 SQL Server 2000 Administration Kashef Mughal MSB.
Copyright 2006 MySQL AB The World’s Most Popular Open Source Database MySQL Cluster: An introduction Geert Vanderkelen MySQL AB.
Managing SX.e and TWL with MARC and Scripts Jeremiah Curtis
Quattor-for-Castor Jan van Eldik Sept 7, Outline Overview of CERN –Central bits CDB template structure SWREP –Local bits Updating profiles.
Grid Computing at Yahoo! Sameer Paranjpye Mahadev Konar Yahoo!
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Stephen Childs Trinity College Dublin &
Kako razvijate PL/SQL pakete? File based PL/SQL development Mitja Golouh SIOUG 2006,
Deployment work at CERN: installation and configuration tasks WP4 workshop Barcelona project conference 5/03 German Cancio CERN IT/FIO.
INFSO-RI Enabling Grids for E-sciencE SCDB C. Loomis / Michel Jouvin (LAL-Orsay) Quattor Tutorial LCG T2 Workshop June 16, 2006.
Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Usage of virtualization in gLite certification Andreas Unterkircher.
Wordpress with Mina Automated Deployment Solution Jonathan Gravato DIG 4104c.
Process Architecture Process Architecture - A portion of a program that can run independently of and concurrently with other portions of the program. Some.
EGEE User Forum Data Management session Development of gLite Web Service Based Security Components for the ATLAS Metadata Interface Thomas Doherty GridPP.
Copyright © Curt Hill Tortoise SVN A Subversion Client.
Distributed Logging Facility Castor External Operation Workshop, CERN, November 14th 2006 Dennis Waldron CERN / IT.
CERN IT Department CH-1211 Genève 23 Switzerland t Migration from ELFMs to Agile Infrastructure CERN, IT Department.
INFSO-RI ETICS Local Setup Experiences A Case Study for Installation at Customers Location 4th. All Hands MeetingUwe Müller-Wilm VEGA Bologna, Nov.
Dynamic staging to a CAF cluster Jan Fiete Grosse-Oetringhaus, CERN PH/ALICE CAF / PROOF Workshop,
EJB Enterprise Java Beans JAVA Enterprise Edition
CASTOR in SC Operational aspects Vladimír Bahyl CERN IT-FIO 3 2.
Next Generation of Apache Hadoop MapReduce Owen
Continuous Deployments using SSDT
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
Some topics for discussion 31/03/2016 P. Hristov 1.
Core and Framework DIRAC Workshop October Marseille.
SCDB Update Michel Jouvin LAL, Orsay March 17, 2010 Quattor Workshop, Thessaloniki.
Quattor installation and use feedback from CNAF/T1 LCG Operation Workshop 25 may 2005 Andrea Chierici – INFN CNAF
Jean-Philippe Baud, IT-GD, CERN November 2007
SmartCenter for Pointsec - MI
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
Greg Seidel Technology Specialist – SQL Server
Designing and Implementing an ETL Framework
N-Tier Architecture.
Continuous Deployments using SSDT
CSE-291 Cloud Computing, Fall 2016 Kesden
Spring Cleaning the Software Repositories Matthias Schröder
Quattor Usage at Nikhef
CVS revisions UML diagram
Change Deployment in ServiceN w
The Quattor Release Process 10/07 - Universidad Autónoma de Madrid
Introduction to J2EE Architecture
Module 0: Introduction Chapter 2: Getting Started
Dev Test on Windows Azure Solution in a Box
Automated Testing and Integration with CI Tool
Continuous Deployments using SSDT
Introduction to Apache
Support for ”interactive batch”
Continuous Deployments using SSDT
Continuous Deployments using SSDT
DAT381 Team Development with SQL Server 2005
Basic Dynamic Analysis VMs and Sandboxes
MapReduce: Simplified Data Processing on Large Clusters
Pig Hive HBase Zookeeper
Presentation transcript:

The CDB evolution - part 4 10/07 - Universidad Autónoma de Madrid Marco Emilio Poleggi – CERN-IT/INFN-CNAF Marco.Emilio.Poleggi@cern.ch

Outline CDB overview Tasks completed since last workshop @ TCD Left behind since the last workshop @ TCD What's new The CDB Deployer Boiling in the pot

CDB overview Three-tier architecture SOAP client cdbop interactive/batch shell scripts SOAP middle-ware Apache + cdb-soap CGI stateless: each connection conveys one command CDB back-end it's a library, not a server templates compiled via cake templates stored in CVS stateful: partially transactional semantic through “sessions”

Tasks since last workshop @ TCD Completed Template area “deployer” Other mostly CERN-CC-related activities on the template set framework (procedures for server upgrade might be useful elsewhere ;-)): “De-optimization” of templates First stage introduction Left behind Fine-grained CDB locking with fair queuing. Long term. A common authentication service. Long term.

What's new cdb-cli (a.k.a. cdbop) Name “canonicalization” for better namespaces' handling Support for user-defined procedures New cp, mv and deploy commands First unit tests introduced :-) Minimal support for disconnected operation cdb-soap Mostly bug fixes cdb Better log normalization New tool cdb-stat for extracting performance indexes from logs Template staging support

The CDB “Deployer”... Problem: Alice wants to test a (part of) configuration without affecting the production environment She has a set of nodes dedicated to testing Now she has to manually: Replicate many pro_foo_bar templates, e.g. pro_type_mycluster into new_type_mycluster Adapt new_* to the new setup Test the new setup on a dedicated cluster, usually just a node in production Move back the new_* stuff to pro_* Pretty boring and error prone, isn't it? Mess with templates' names :-( Tests on production machines :-( Not “humanly” scalable!

...The CDB “Deployer”: stages But, hold on, we have namespaces! pro_foo_bar becomes /pro/foo/bar The first namespace becomes an “area” or “stage”: A place where to look for included templates /test/foo/bar, /preprod/foo/bar, /prod/foo/bar, ... “Staged” vs “non-staged” templates: Non-staged declaration: template test/foo/bar; Staged declaration: template foo/bar; Meta-templates (non-staged) are used for recording where to look in: stages/ |-- prod.tpl |-- test.tpl `-- usertest `-- alice.tpl unique template stages/usertest/alice; variable loadpath = list('usertest/alice','test','prod');

...The CDB “Deployer”: [re-]staging How to “[re-]stage” now? Profiles are staged by including a meta-template like the one above: object template mynode; include stages/test; ... Alice needs just to replicate templates in her “sandbox” usertest/alice, or in another stage: Use cp, mv and preferentially deploy Templates move between stages (usually forward) Profiles are expected to persist in their stages, though service managers can manually re-stage them at their convenience Rollback: for now successful deploy operation must rolled back manually Next to come: drollback command acting on CVS tags.

...The CDB “Deployer”: policies 'u' = normal user, 'p' = privileged/power user Full lines = regular transitions, dashed lines = exceptional transitions Underlined actions = preferred

...The CDB “Deployer”: example Starting setup: Two templates + two profiles No stages /components/grub/config /hardware/disk/STD_80 /prod_node /test_node Final setup: Two stages test/ and prod/ One replicates template components/grub/config /prod/components/grub/config /prod/hardware/disk/STD_80 /profiles/prod_node /profiles/test_node /stages/prod /stages/test /test/components/grub/config

...The CDB “Deployer”: example Preparing the stage framework Prepare two meta-templates Add the needed namespaces and meta-templates Move the profiles in the new location unique template stages/test; variable loadpath = list('test', 'prod'); edit unique template stages/prod; variable loadpath = list('prod'); edit > add_ns profiles > add_ns prod > add_ns test > add stages/test.tpl stages/prod.tpl > mv -f -a prod_node test_node profiles/ cdbop

...The CDB “Deployer”: example... Staging profiles first time All configuration is staged in prod/ because the other area is empty object template prod_node; include stages/prod; include components/grub/config; include hardware/disk/STD_80; edit object template test_node; include stages/test; include components/grub/config; include hardware/disk/STD_80; edit > update profiles/prod_node.tpl profiles/test_node.tpl > deploy -a components/ prod/components/ > deploy -a hardware/ prod/hardware/ > commit > rm_ns -r /components/grub/ > rm_ns -r /hardware/disk/ cdbop

...The CDB “Deployer”: example... Preparing a test stage Use deploy with “skip removal” option Ignore warnings about missing foo/* files: deploy looks for templates in each subnamespace Now test_node gets components/grub/config from stage test/ > deploy -a -s /prod/components/ /test/components/ > commit cdbop Once done with testing, deploy again into prod/ Standard deploy moves templates Option -a stands for “all or nothing” > deploy -a /test/ /prod/ > commit cdbop

Boiling in the pot Ideas Bug #24156: Visualization/navigation tool in progress Pan parser - cdb-tpl-view - available and partially integrated with pangraph Other option: waiting for panc-8 SOAP eats too much memory (again)! Make use of file attachment features Issues Manpower :-( Reverting committed changes Increasing CDB users --> higher mess up probability Using CVS tags would easily solve the problem, but needs “harnessing” users' freedom

Am I forgetting something? Any RFE, wish, remark?