Michael Still Google Inc. October, 2006. 2 Managing Unix servers the slack way Tools and techniques for managing large numbers of Unix machines Michael.

Slides:



Advertisements
Similar presentations
TeraGrid Deployment Test of Grid Software JP Navarro TeraGrid Software Integration University of Chicago OGF 21 October 19, 2007.
Advertisements

Configuration management
Agile Software Distribution
ICIS-NPDES Plugin Design Preview Webinar ICIS-NPDES Full Batch OpenNode2 Plugin Project Presented by Bill Rensmith Windsor Solutions, Inc. 3/15/2012.
2 Copyright © 2005, Oracle. All rights reserved. Installing the Oracle Database Software.
1 OBJECTIVES To generate a web-based system enables to assemble model configurations. to submit these configurations on different.
Jenkins User Conference Jenkins User Conference San Francisco, Sept #jenkinsconf Using Jenkins in the Enterprise and the Cloud Mark Prichard Kohsuke.
NGOP J.Fromm K.Genser T.Levshina M.Mengel V.Podstavkov.
Guide To UNIX Using Linux Third Edition
BizTalk Deployment using Visual Studio Release Management
Introduction to Unix (CA263) Introduction to Shell Script Programming By Tariq Ibn Aziz.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
Installing software on personal computer
Systems Software Operating Systems.
Monitor Linux OS health & performance Monitor log files Monitor JEE app servers Monitor line-of-business applications Monitor databases and web.
Automating Drupal Deployment Dominique De Cooman.
Automatic Software Testing Tool for Computer Networks ARD Presentation Adi Shachar Yaniv Cohen Dudi Patimer
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
Version Control with Subversion. What is Version Control Good For? Maintaining project/file history - so you don’t have to worry about it Managing collaboration.
Linux Operations and Administration
ITIS 2110 Class # No home network devices devices devices devices devices devices devices 9.
Article: Source Code Review Systems Author: Jason Remillard Presenter: Joe Borosky Class: Principles and Applications of Software Design Date: 11/2/2005.
Creating a Maintainable Software Ecosystem Jeremy D. Miller November 27th, 2007.
HBase A column-centered database 1. Overview An Apache project Influenced by Google’s BigTable Built on Hadoop ▫A distributed file system ▫Supports Map-Reduce.
October, Scientific Linux INFN/Trieste B.Gobbo – Compass R.Gomezel - T.Macorini - L.Strizzolo INFN - Trieste.
Honeypot and Intrusion Detection System
Components of Database Management System
 Chapter 6 Architecture 1. What is Architecture?  Overall Structure of system  First Stage in Design process 2.
03/27/2003CHEP20031 Remote Operation of a Monte Carlo Production Farm Using Globus Dirk Hufnagel, Teela Pulliam, Thomas Allmendinger, Klaus Honscheid (Ohio.
CERN Manual Installation of a UI – Oxford July - 1 LCG2 Administrator’s Course Oxford University, 19 th – 21 st July Developed.
Large Scale Parallel Print Service Ivan Deloose – David Foster – Ignacio Reguero CHEP 2000 – 8 February 2000 – Padova (I) Presented by Ivan Deloose -
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
Systems Software Operating Systems. What is software? Software is the term that we use for all the programs and data that we use with a computer system.
Fermilab Distributed Monitoring System (NGOP) Progress Report J.Fromm K.Genser T.Levshina M.Mengel V.Podstavkov.
A Networked Machine Management System 16, 1999.
1 The new Fabric Management Tools in Production at CERN Thorsten Kleinwort for CERN IT/FIO HEPiX Autumn 2003 Triumf Vancouver Monday, October 20, 2003.
Copyright © 2004 Insight Technology, Inc. All Rights Reserved. 1 Performance Insight for Oracle 5.2 V.S Oracle Enterprise Management
Continuous DB integration testing with RAT „RATCOIN”
Guide to Linux Installation and Administration, 2e1 Chapter 11 Using Advanced Administration Techniques.
General rules 1. Rule: 2. Rule: 3. Rule: 10. Rule: Ask questions ……………………. 11. Rule: I do not know your skill. If I tell you things you know, please stop.
Marco Cattaneo - DTF - 28th February 2001 File sharing requirements of the physics community  Background  General requirements  Visitors  Laptops 
Unicenter NSM Repository Bridge 3.1 -> r11. © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos.
1 MSTE Visual SourceSafe For more information, see:
Maite Barroso - 10/05/01 - n° 1 WP4 PM9 Deliverable Presentation: Interim Installation System Configuration Management Prototype
CLM Case Study An investigation of deployment options for IBM Rational Team Concert in a ClearCase/ClearQuest environment July 18, 2011 Michael Gormley.
Copyright 2015, Robert W. Hasker. Continuous Inspection  Code reviews  Powerful tool  Difficult to ensure meaningful reviews take place  Static analysis.
Status of Globus activities Massimo Sgaravatto INFN Padova for the INFN Globus group
Disk Server Deployment at RAL Castor F2F RAL - Feb 2009 Martin Bly.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
Thoughts on How to Distribute the Bare Minimum for Analysis Natalia Ratnikova, Fermilab 16 May, 2006 Software Development Tools Meeting.
JRA1 Meeting – 09/02/ Software Configuration Management and Integration EGEE is proposed as a project funded by the European Union under contract.
Maven. Introduction Using Maven (I) – Installing the Maven plugin for Eclipse – Creating a Maven Project – Building the Project Understanding the POM.
Open Science Grid Configuring RSV OSG Resource & Service Validation Thomas Wang Grid Operations Center (OSG-GOC) Indiana University.
Scientific Linux Inventory Project (SLIP) Troy Dawson Connie Sieh.
1 Policy Based Systems Management with Puppet Sean Dague
Learn Mercury Load runner as an Online Training. The advanced reality of a digital transformation in the digital world always been on a threshold in terms.
Fundamental of Databases
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
AI How to: System Update and Additional Software
Shared Services with Spotfire
Large Scale Parallel Print Service
Programmer: Roman Martushev
GLAST Release Manager Automated code compilation via the Release Manager Navid Golpayegani, GSFC/SSAI Overview The Release Manager is a program responsible.
June 2011 David Front Weizmann Institute
Chapter 6 Introduction to Network Operating Systems
Continuous Integration For Databases
IS3440 Linux Security Unit 9 Linux System Logging and Monitoring
X Windows.
Tools and Explanations for Mac Beginners
Linux Cluster Tools Development
Presentation transcript:

Michael Still Google Inc. October, 2006

2 Managing Unix servers the slack way Tools and techniques for managing large numbers of Unix machines Michael Still Google, Inc. October, 2006

3 Who is this guy and what does he do at Google?

4 Agenda I thought we should talk about these things: My background Rules of thumb Tools: – cssh – slack

5 Background None of these tools or techniques are particularly unique, I more want to start a discussion about how to do this sort of thing, and how other people do it, while sharing some information about the approach that Google takes.

6 Rules of thumb The following are obvious, right? Have a repeatable OS build Document, document, document Monitor your machines Keep failure metrics you know what to work on next Expect failures Have a repeatable application install

7 Logging into many machines at once First problem: executing the same command on many machines Clusters result in lots of machines which are identical Logging into them one after the other to perform maintenance sucks You could script this work, but that isn't time efficient I use clusterssh (also known as cssh) Let's log into a bunch of hypothetical database replicas and check their status cssh myapp-rdb1 myapp-rdb2 myapp-rdb3 myapp-rdb4

8 Logging into many machines at once

9 cssh A relatively simple perl script Runs with your choice of terminal You can run commands on all machines, one machine, or a subset of the machines This tool was not developed at Google

10 Repeatable software installs slack Google's home grown software deployment system Written by Alan Sundell and Roman Marxer Centralized configuration repository Configuration is then deployed onto selected machines You can have more than one “slack role” on a given machine

11 Repeatable software installs

12 Repeatable software installs slack Configuration changes flow from the Administrators via a code review mechanism Once checked into the source control repository, they are synced to the slack master Individual servers then sync their configurations from the slack master – Manually: slack role.sub-role – Automatically via cron

13 Repeatable software installs slack What does a role look like? $ find mail-loghost -type f mail-loghost/files/etc/cron.d/logcleanup mail-loghost/files/etc/syslog-ng.conf.mailloghost mail-loghost/files/usr/local/scripts/logcleanup mail-loghost/scripts/postinstall mail-loghost/scripts/preinstall $

14 Repeatable software installs slack What does a sub-role look like? $ find mail-loghost -type f mail-loghost/files/etc/cron.d/logcleanup mail-loghost/files/etc/syslog-ng.conf.mailloghost mail-loghost/files/usr/local/scripts/logcleanup mail-loghost/scripts/postinstall mail-loghost/scripts/preinstall mail-loghost/files.trakken-mail/etc/syslog-ng.conf.mailloghost $

15 Repeatable software installs slack There are lot of similarities between this and binary packages like.deb or RPM: – Pre and post install scripts – Deploys files Things which are cool about slack: – There is no intermediate packaged form – Sub-roles – Pre and post install scripts in any language

16 Repeatable software installs slack Versioning – How do I undeploy a slack role? – How do I find out what slack roles a machine needs? – Dependencies between slack roles?

17 Repeatable software installs slack Where can you get slack? – Google and Alan Sundell have released slack! –

18 Questions? Any questions?

19 One final note Google is hiring, both domestically within Australia, and Internationally. Talk to me if you want to know more.

Michael Still Google, Inc.