PUPPET MODULES: A HOLISTIC APPROACH

Size: px
Start display at page:

Download "PUPPET MODULES: A HOLISTIC APPROACH"

Transcription

1 PUPPET MODULES: A HOLISTIC APPROACH PuppetCamp Geneva 2012 Alessandro Franceschi

2 LAB Meet Puppet. Managed the Bank of Italy webfarm First generation of Lab42 Puppet Modules Multi OS support and standardization of the modules A redesigned and coherent Example42 Module set Puppet Modules Standards and Interoperability (PuppetCamp Europe Belgium) Re-Use your Modules! (PuppetCamp San Francisco) Introducing Puppi Puppi: Puppet strings to the shell (PuppetCamp Europe Amsterdam) Example42 Next Gen modules Developing IT Infrastructures with Puppet (CodeMotion Rome)

3 WE ALL LOVE AND USE PUPPET FOR Systems Configuration (Automatic) Monitoring based on specific tools Facts based Inventory Manage, at times, Applications deployments Infrastructure Orchestration (coupled with MCollective)

4 WE LIKE TO EXTEND PUPPET TO Abstract Automatic Monitoring (whatever the tool) Automatic Firewalling Standardize Applications deployments Enrich Systems Inventory Shell Extension ( Puppet Knowledge to the CLI ) Provide a coherent and integrated modules ecosystem

5 PUPPET MODULES MANTRAS Data Separation Configuration data is defined outside the module (or Puppet manifests) Module s behavior is managed via APIs Reusability ReUse the same module in different shops Customize its behavior without changing its code Do not force how configurations are provided Standardization Follow PuppetLabs layout guidelines (puppet-lint) Have a coherent, predictable and intuitive interface Provide contextual documentation (puppet-doc) Interoperability Limit dependencies. Allow modules cherry picking Be self contained, do not interfere with other modules resources Cross Operating System support Provide sensible defaults for different OS Allow easy implementation of support of new OS

6 EXAMPLE42 NEXT GEN Coherent and Standardized structure Best Practices module design (with some tweaks...) Easily extendable Cross OS support Complete API exposure via parameters Extreme Customizations options Alternative Data Separation options Complete Decommissioning features Optional Automatic Monitoring Abstraction Optional Automatic Firewalling Optional Puppi support to enhance the CLI experience Exhaustive PuppetDoc documentation Integrated Rspec-Puppet tests Code Puppet-Lint compliant Quick module scaffolding based on different templates... not exactly easy to read...

7 BASIC USAGE One Module. One Application. One main class. Install openssh with default settings: Equivalent to: include openssh Default behavior: Install package Run and enable service Do not alter configurations

8 DATA INPUT ALTERNATIVES Set (Top Scope/ENC) variables and include classes: $::openssh_template = 'site/openssh/openssh.conf.erb' include openssh Use Hiera: hiera( openssh_template ) include openssh Use Parametrized Classes: template => 'site/openssh/openssh.conf.erb', Happily mix different patterns: $::monitor = true $::monitor_tool = [ 'nagios', 'munin', 'puppi' ] template => 'site/openssh/openssh.conf.erb',

9 Disable openssh service: disable => true DECOMMISSIONING Deactivate openssh service only at boot time: disableboot => true Useful when a service is managed by another tool (ie: a cluster suite) Remove openssh (package and files): absent => true Monitoring and firewalling resources removal is automatically managed

10 MANAGE BEHAVIOR Enable Auditing: audit_only => true, # Default: false No changes to configuration files are actually made and potential changes are audited Manage Service Autorestart: service_autorestart => false, # Default: true No automatic service restart when a configuration file / dir changes Manage Software Version: class { 'foo': version => 1.2.0, # Default: unset Specify the package version you want to be installed. Set => latest to force installation of latest version

11 CUSTOMIZE: CONFIGURATION FILE Provide Main Configuration as a static file... source => puppet:///modules/site/ssh/sshd.conf, an array of files looked up on a first match logic... source => ["puppet:///modules/site/ssh/sshd.conf-${fqdn", "puppet:///modules/site/ssh/openssh.conf"], As an erb template: template => site/ssh/sshd.conf.erb, Config File Path is defined in params.pp (can be overriden): config_file = > /etc/ssh/sshd_config,

12 CUSTOM OPTIONS With templates you can provide an hash of custom options: template => site/ssh/sshd.conf.erb, options => { 'LogLevel' => 'INFO', 'UsePAM' => 'yes',, Alternative ways to use the options hash in an erb template: Direct but not safe (you must always provide all the used options) UsePAM <%= options['usepam'] %> Failsafe with defaults (verbose but safe) <% if scope.lookupvar("openssh::options['usepam']") then -%> UsePAM <%= options['usepam'] %> <% else -%> UsePAM no <% end -%> Show what you have (useful for config files has defaults for every option) <% scope.lookupvar("openssh::options").sort_by { key, value key.each do key, value -%> <%= key %> <%= value %> <% end -%>

13 CUSTOMIZE: CONFIGURATION DIR You can manage the whole Configuration Directory: source_dir => puppet:///modules/site/ssh/sshd/, This copies all the files in lab42/files/ssh/sshd/* to local config_dir You can purge any existing file on the destination config_dir which are not present on the source_dir path: source_dir => puppet:///modules/site/ssh/sshd/, source_dir_purge => true, # default is false WARNING: Use with care Config Dir Path is defined in params.pp (can be overriden): config_dir = > /etc/ssh,

14 CUSTOMIZE: CUSTOM CLASS Provide added resources in a Custom Class: my_class => site/my_openssh, This autoloads: site/manifests/my_openssh.pp Custom class can stay in your site module: class site::my_openssh { file { "motd": path => "/etc/motd", content => template("site/openssh/motd.erb"), You hardly need to inherit openssh: there are parameters for everything Do not call your class site::openssh, naming collisions could happen.

15 CUSTOMIZE: PATHS AND NAMES Customize Application Parameters. An example: Use the puppet module to manage pe-puppet! class { 'puppet': template => 'lab42/pe-puppet/puppet.conf.erb', package => 'pe-puppet', service => 'pe-puppet', service_status => true, config_file => '/etc/puppetlabs/puppet/puppet.conf', config_file_owner => 'root', config_file_group => 'root', config_file_init => '/etc/sysconfig/pe-puppet', process => ruby, process_args => puppet, process_user => root, config_dir => '/etc/puppetlabs/puppet/', pid_file => '/var/run/pe-puppet/agent.pid', log_file => '/var/log/pe-puppet/puppet.log', log_dir => '/var/log/pe-puppet',

16 EXTEND: MONITOR Manage Abstract Automatic Monitoring: monitor => true, monitor_tool => [ nagios, puppi, monit ], monitor_target => $::ip_addess # Default Monitoring is based on these parameters defined in params.pp: port => 22, protocol => tcp, service => ssh[d], # According to OS process => sshd, process_args =>, process_user => root, pid_file => /var/run/sshd.pid, Abstraction is managed in the Example42 monitor module Here connectors for different monitoring tools are defined and can be added (also using 3rd party modules).

17 EXTEND: FIREWALL Manage Automatic Firewalling (host based): firewall => true, firewall_tool => iptables, firewall_src => ' /8', firewall_dst => $::ipaddress_eth1, # Default is $::ipaddress Firewallig is based on these parameters defined in params.pp: port => 22, protocol => tcp, Abstraction is managed in the Example42 firewall module Currently only the iptables firewall_tool is defined, it uses Example42 iptables module to manage local iptables rules

18 EXTEND: PUPPI Manage Puppi Integration: puppi => true, # Default: false puppi_helper => standard # Default The Puppi module is a prerequisite for all Example42 modules Is required because it provides common libs, widely used in the modules BUT the actual puppi integration is optional (and disabled by default) Puppi integration allows CLI enrichment commands like: puppi info openssh puppi log openssh puppi check openssh Note: puppi support for info/log commands for NextGen modules is under development Puppi helpers allow you to customize Puppi behavior

19 PARAMS_LOOKUP EVERYWHERE Each parameter on a NextGen class is passed via the params_lookup function class openssh ( [...] # openssh module specific parameters... $my_class = params_lookup( 'my_class' ), $source = params_lookup( 'source' ), $source_dir = params_lookup( 'source_dir' ), $source_dir_purge = params_lookup( 'source_dir_purge' ), $template = params_lookup( 'template' ), $service_autorestart = params_lookup( 'service_autorestart', 'global' ), $options = params_lookup( 'options' ), $version = params_lookup( 'version' ), $absent = params_lookup( 'absent' ), $disable = params_lookup( 'disable' ), $disableboot = params_lookup( 'disableboot' ), $monitor = params_lookup( 'monitor', 'global' ), $monitor_tool = params_lookup( 'monitor_tool', 'global' ), $monitor_target = params_lookup( 'monitor_target', 'global' ), [...] # Other common parameters ) inherits openssh::params { [...] Each class provides a set of different kind of params that: Are module specific (no one defined in this openssh module) Allow customizations (my_class, source, template...) Affect module s behavior (absent, disable, service_autorestart, audit_only...) Manage extensions (monitor, monitor_tool, firewall, puppi...) Define application parameters (port, config_file, process, package... )

20 DEFAULTS IN PARAMS.PP Each module has a params class where defaults are set for different OS class openssh::params { ### Application related parameters $package = $::operatingsystem? { default => 'openssh-server', $service = $::operatingsystem? { /(?i:debian Ubuntu Mint)/ => 'ssh', default => 'sshd', $process = $::operatingsystem? { default => 'sshd', [...] $port = '22' $protocol = 'tcp' # General Settings $my_class = '' $source = '' $source_dir = '' $source_dir_purge = '' [...] ### General module variables that can have a site or per module default $monitor = false $monitor_tool = '' $monitor_target = $::ipaddress $firewall = false $firewall_tool = '' $firewall_src = ' /0' [...]

21 PARAMS_LOOKUP ORDER params_lookup is a function provided by the Puppi module It allows data to be defined in different ways: Via Hiera, if available As Top Scope variable (as provided by External Node Classifiers) Via defaults set in the module s params class The global argument is used to define site_wide behavior Example: class { openssh : monitor => true # If there s a direct param that s the value # Otherwise, If Hiera is available: hiera( monitor ) # If global lookup is set hiera( openssh_monitor ) # A specific value overrides the global one # If variable is still not evaluated: $::monitor # If global lookup is set $::openssh_monitor # If present, overrides $::monitor $openssh::params::monitor # Module s defaults are used as last option

22 DOWNLOAD Example42 Puppet Modules Site: GitHub repositories: Git Download: git clone -r example42/puppet-modules-nextgen Note on GitHub repos: puppet-modules-nextgen contains only NextGen modules (as git submodules) puppet-modules contains both NextGen and older modules puppet-* are the single NextGen modules

23 ONE MORE THING... How to make a NextGen module git clone -r cd puppet-modules-nextgen Example42-tools/module_clone.sh This script creates a skeleton for a new module based on different Example42 foo module templates. Run it from the directory that contains the foo module (moduledir). By default it uses the "foo" module as template. Specify -t <source_module> to use a different template. Example: Example42-tools/module_clone.sh -t foo_webapp Source module template is foo Enter the name of the new module based on foo: mynewmodule Edit mynewmodule/manifests/params.pp to manage support for different OS A new, basic, NextGen module based on the foo standard template is done. Add features and application specific resources to enrich it

24 Graphics:

25 ad maiora Graphics:

26 Graphics:

Being a puppet master

Being a puppet master Being a puppet master More money, more time, more happiness, less work Thomas Merkel http://www.flickr.com/photos/serenaseblu/5062987760/ Agenda Overview Organize the master Modules Resources

More information

Can you upgrade to Puppet 4.x? PuppetCamp Düsseldorf Martin Alfke

Can you upgrade to Puppet 4.x? PuppetCamp Düsseldorf Martin Alfke Can you upgrade to Puppet 4.x? PuppetCamp Düsseldorf Martin Alfke About me Martin Alfke Berlin/Germany Freelancer / Trainer PuppetLabs Training Partner Puppet User Group Berlin

More information

An Introduction to the Puppet Ecosystem

An Introduction to the Puppet Ecosystem An Introduction to the Puppet Ecosystem Trevor Vaughan - Onyx Point, Inc. License: Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) 0 Onyx Point, Inc. Puppet Labs and Red Hat Partner Government Contracting

More information

A WEB-BASED SOLUTION TO VISUALIZE OPERATIONAL MONITORING LINUX CLUSTER FOR THE PROTODUNE DATA QUALITY MONITORING CLUSTER

A WEB-BASED SOLUTION TO VISUALIZE OPERATIONAL MONITORING LINUX CLUSTER FOR THE PROTODUNE DATA QUALITY MONITORING CLUSTER A WEB-BASED SOLUTION TO VISUALIZE OPERATIONAL MONITORING LINUX CLUSTER FOR THE PROTODUNE DATA QUALITY MONITORING CLUSTER BADISA MOSESANE EP-NU Supervisor: Nektarios Benekos Department: EP-NU Table of Contents

More information

Configuration Management with Puppet. Introduction

Configuration Management with Puppet. Introduction Configuration Management with Puppet Introduction What is Puppet is a configuration management system is a programming language offers a Client/Server architecture has a huge community widely used in the

More information

fpm-cookery Documentation

fpm-cookery Documentation fpm-cookery Documentation Release 0.33.0 Bernd Ahlers Jun 10, 2018 Contents 1 Features 3 2 Documentation Contents 5 2.1 Getting Started.............................................. 5 2.2 Using Hiera................................................

More information

Testing your puppet code

Testing your puppet code Libre Software Meeting 2013 July 10, 2013 1 2 Style and linting Catalogs 3 4 Homework sysadmin @ inuits open-source defender for 7+ years devops believer @roidelapluie on twitter/github Infrastructure

More information

Treating Deployments as Code with Puppet and the Atlassian Toolsuite Puppet Camp, Geneva

Treating Deployments as Code with Puppet and the Atlassian Toolsuite Puppet Camp, Geneva Treating Deployments as Code with Puppet and the Atlassian Toolsuite Christoph Leithner Who is celix? Puppet Labs Partner Atlassian Expert IT Service Management (ITSM) Continuous Deployment und DevOps

More information

IT Automation with Puppet

IT Automation with Puppet IT Automation with Puppet Romain Tartière BSDCan 2018 University of Ottawa Ottawa, Canada June 9 th, 2018 Photo: Ollivier Robert Romain Tartière FreeBSD user since 2002 (I guess FreeBSD

More information

SCaLE Puppet Introduction. Puppet Assigns and Maintains a Machine s Desired Role

SCaLE Puppet Introduction. Puppet Assigns and Maintains a Machine s Desired Role SCaLE Puppet Introduction Puppet Assigns and Maintains a Machine s Desired Role Managing Configuration Drift 1 of 24 2/23/10 7:41 PM Puppet Executables that we will employ: ralsh The Resource Abstraction

More information

A power point by R Tyler Croy

A power point by R Tyler Croy A power point by R Tyler Croy Mr. Kanies 6 th Period GitHub Decentral High School 2014 http://tiny.cc/mrkaniesisthebest Who is Tyler! GitHub Decentral High Senior (GO CATS!) Member of the Ruby Pep Band

More information

Components of a Puppet architecture

Components of a Puppet architecture Components of a Puppet architecture This tutorial has been taken from the second edition of Extending Puppet. Until January 9th you can pick it up for just $5. In fact - you can pick up any ebook or video

More information

OpenStack Havana All-in-One lab on VMware Workstation

OpenStack Havana All-in-One lab on VMware Workstation OpenStack Havana All-in-One lab on VMware Workstation With all of the popularity of OpenStack in general, and specifically with my other posts on deploying the Rackspace Private Cloud lab on VMware Workstation,

More information

DevOps Course Content

DevOps Course Content DevOps Course Content 1. Introduction: Understanding Development Development SDLC using WaterFall & Agile Understanding Operations DevOps to the rescue What is DevOps DevOps SDLC Continuous Delivery model

More information

Active System Manager Release 8.2 SDK Reference Guide

Active System Manager Release 8.2 SDK Reference Guide Active System Manager Release 8.2 SDK Reference Guide Notes, cautions, and warnings NOTE: A NOTE indicates important information that helps you make better use of your computer. CAUTION: A CAUTION indicates

More information

PULLING STRINGS. Learn how to save time and streamline your system administration with the help of Puppet, a centralized

PULLING STRINGS. Learn how to save time and streamline your system administration with the help of Puppet, a centralized Manipulating your machines with PULLING STRINGS Learn how to save time and streamline your system administration with the help of, a centralized configuration management tool. BY JULIET KEMP is a centralized

More information

Ansible Cookbook 2014

Ansible Cookbook 2014 René Moser Tue Nov 25 23:13:45 UTC 2014 1 Contents Contents Intro 4 Basics 5 How do I use all hosts data in my play or template? 6 Solution................................................... 6 Explanation.................................................

More information

Linux System Management with Puppet, Gitlab, and R10k. Scott Nolin, SSEC Technical Computing 22 June 2017

Linux System Management with Puppet, Gitlab, and R10k. Scott Nolin, SSEC Technical Computing 22 June 2017 Linux System Management with Puppet, Gitlab, and R10k Scott Nolin, SSEC Technical Computing 22 June 2017 Introduction I am here to talk about how we do Linux configuration management at the Space Science

More information

Installing and Using Docker Toolbox for Mac OSX and Windows

Installing and Using Docker Toolbox for Mac OSX and Windows Installing and Using Docker Toolbox for Mac OSX and Windows One of the most compelling reasons to run Docker on your local machine is the speed at which you can deploy and build lab environments. As a

More information

news Puppet Theatre Server Management for Dummies... the smarter way of information

news Puppet Theatre Server Management for Dummies... the smarter way of information Puppet Theatre Server Management for Dummies... the smarter way of information page 2/7 In the area of systems for the automatic setup and operation of large-scale landscapes, one tool in particular has

More information

Configuration Management - Using Puppet. lctseng / Liang-Chi Tseng

Configuration Management - Using Puppet. lctseng / Liang-Chi Tseng Configuration Management - Using Puppet lctseng / Liang-Chi Tseng Our Target Share several files Configuration files (httpd.conf) Regular data files (wallpapaer.jpg) System-wide configuration Add/Modify

More information

Using the vrealize Orchestrator Salt Plug- in

Using the vrealize Orchestrator Salt Plug- in Using the vrealize Orchestrator Salt Plug- in Using the vrealize Orchestrator Salt Plug- In 1.0 Using the vrealize Orchestrator Salt Plug- In 1.0 tells you how to install, configure, and use the VMware

More information

An Introduction to Puppet Enterprise

An Introduction to Puppet Enterprise An Introduction to Puppet Enterprise Exercise & Lab Guide Puppet Education www.puppetlabs.com/education 2013 Puppet Labs 2013 Puppet Labs Lab 3.1: Pre-installation Objective: Assign a hostname to your

More information

Satellite 6 User Guide. ID Client Delivery

Satellite 6 User Guide. ID Client Delivery ID Client Delivery 08.06.2017 pdf generated on July 7, 2017 Table of Contents 1 Concepts 3 1.1 Terminology...................................... 3 1.2 Description of Key Elements.............................

More information

Puppet on the AWS Cloud

Puppet on the AWS Cloud Puppet on the AWS Cloud Quick Start Reference Deployment AWS Quick Start Reference Team March 2016 This guide is also available in HTML format at http://docs.aws.amazon.com/quickstart/latest/puppet/. Contents

More information

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS ContainerCon @ Open Source Summit North America 2017 Elizabeth K. Joseph @pleia2 1 Elizabeth K. Joseph, Developer Advocate

More information

DevOps Course Content

DevOps Course Content Introduction to DevOps: Background Ingredients of DevOps DevOps principles Who has adopted? Mirage or Reality? Challenges, Domain specific Technology specific DevOps Toolchain (Practices and Tools) SDLC

More information

Configuration Management with Puppet. LinuxFest Northwest. Garrett Honeycutt April 25th, 2010

Configuration Management with Puppet. LinuxFest Northwest. Garrett Honeycutt April 25th, 2010 Configuration Management with Puppet LinuxFest Northwest Garrett Honeycutt April 25th, 2010 What? Puppet is open source and released under GPL Backed by Puppet Labs - great training and audits available

More information

Red Hat Satellite 6.4

Red Hat Satellite 6.4 Red Hat Satellite 6.4 Upgrading and Updating Red Hat Satellite Upgrading and updating Red Hat Satellite Server and Capsule Server Last Updated: 2018-12-17 Red Hat Satellite 6.4 Upgrading and Updating

More information

Puppet Labs Modules - Feature #11050 firewall: RFE that ensure could support ignore.

Puppet Labs Modules - Feature #11050 firewall: RFE that ensure could support ignore. Puppet Labs Modules - Feature #11050 firewall: RFE that ensure could support ignore. 11/28/2011 05:16 am - Steve Traylen Status: Closed Start date: 11/28/2011 Priority: Normal Due date: Assignee: % Done:

More information

Docker in Appsoma PaaS. Containers FTW

Docker in Appsoma PaaS. Containers FTW Docker in Appsoma PaaS Containers FTW Intro Who? Ken Demarest - CTO of Appsoma, 30 yr coder What? Scientific Computation platform What is Appsoma? A PaaS, typically for complex runs on large data Beachhead

More information

Red Hat Satellite 6.3

Red Hat Satellite 6.3 Red Hat Satellite 6.3 Upgrading and Updating Red Hat Satellite Upgrading and updating Red Hat Satellite Server and Capsule Server Last Updated: 2018-07-12 Red Hat Satellite 6.3 Upgrading and Updating

More information

SSH-REVERSE-TUNNEL(1) User Commands SSH-REVERSE-TUNNEL(1)

SSH-REVERSE-TUNNEL(1) User Commands SSH-REVERSE-TUNNEL(1) NAME ssh-reverse-tunnel - create robust reverse ssh tunnels or VPNs SYNOPSIS Usage: ssh-reverse-tunnel client [options] or: ssh-reverse-tunnel server [options] or: ssh-reverse-tunnel --help or --version

More information

Red Hat Satellite 6.3

Red Hat Satellite 6.3 Red Hat Satellite 6.3 Upgrading and Updating Red Hat Satellite Upgrading and updating Red Hat Satellite Server and Capsule Server Last Updated: 2018-05-01 Red Hat Satellite 6.3 Upgrading and Updating

More information

We are ready to serve Latest Testing Trends, Are you ready to learn?? New Batches Info

We are ready to serve Latest Testing Trends, Are you ready to learn?? New Batches Info We are ready to serve Latest Testing Trends, Are you ready to learn?? New Batches Info START DATE : TIMINGS : DURATION : TYPE OF BATCH : FEE : FACULTY NAME : LAB TIMINGS : PH NO: 9963799240, 040-40025423

More information

Puppet. Configuring your systems so you don't have to... Frank Sweetser Senior Network Engineer WPI Network Operations and Security

Puppet. Configuring your systems so you don't have to... Frank Sweetser Senior Network Engineer WPI Network Operations and Security Puppet Configuring your systems so you don't have to... Frank Sweetser Senior Network Engineer WPI Network Operations and Security Installation Typical System Lifecycle Typical System Lifecycle Installation

More information

Be smart. Think open source.

Be smart. Think open source. Foreman Basics Be smart. Think open source. Foreman - Basics Lifecycle management of physical and virtual machines made easy! Agenda Introduction to Foreman Architecture Setup Provisioning Configuration

More information

DevOps Technologies. for Deployment

DevOps Technologies. for Deployment DevOps Technologies for Deployment DevOps is the blending of tasks performed by a company's application development and systems operations teams. The term DevOps is being used in several ways. In its most

More information

Server Hardening Title Author Contributors Date Reviewed By Document Version

Server Hardening Title Author Contributors Date Reviewed By Document Version Server Hardening The University of Waikato Title Server Hardening Author Milton Markose (Systems Administrator Security) Contributors Information Security Forum (ISF) Date 21-08-2014 Reviewed By Information

More information

Advanced Puppet Topics. Ken Barber Professional Services Engineer

Advanced Puppet Topics. Ken Barber Professional Services Engineer Advanced Puppet Topics Ken Barber Professional Services Engineer aka My favourite puppet features Topics Standalone Puppet Ruby DSL extlookup dotty output External Node Classification Puppetdocs Standalone

More information

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA Distributed CI: Scaling Jenkins on Mesos and Marathon Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA About Me Roger Ignazio QE Automation Engineer Puppet Labs, Inc. @rogerignazio Mesos In Action

More information

Incident Response Platform. IBM BIGFIX INTEGRATION GUIDE v1.0

Incident Response Platform. IBM BIGFIX INTEGRATION GUIDE v1.0 Incident Response Platform IBM BIGFIX INTEGRATION GUIDE v1.0 Licensed Materials Property of IBM Copyright IBM Corp. 2010, 2017. All Rights Reserved. US Government Users Restricted Rights: Use, duplication

More information

Contents in Detail. Foreword by Xavier Noria

Contents in Detail. Foreword by Xavier Noria Contents in Detail Foreword by Xavier Noria Acknowledgments xv xvii Introduction xix Who This Book Is For................................................ xx Overview...xx Installation.... xxi Ruby, Rails,

More information

Kivy Designer Documentation

Kivy Designer Documentation Kivy Designer Documentation Release 0.9 Kivy October 02, 2016 Contents 1 Installation 3 1.1 Prerequisites............................................... 3 1.2 Installation................................................

More information

VMware Photon Controller Quick Start Guide

VMware Photon Controller Quick Start Guide VMware Photon Controller Quick Start Guide Contents 1 Introduction 2 1.1 Version................................................ 2 1.2 Overview............................................... 2 1.3 Lightwave

More information

Platform SDK Deployment Guide. Platform SDK 8.1.2

Platform SDK Deployment Guide. Platform SDK 8.1.2 Platform SDK Deployment Guide Platform SDK 8.1.2 1/1/2018 Table of Contents Overview 3 New in this Release 4 Planning Your Platform SDK Deployment 6 Installing Platform SDK 8 Verifying Deployment 10 Overview

More information

Integrating the Cloud with Puppet. Tuesday, February 26, 13

Integrating the Cloud with Puppet. Tuesday, February 26, 13 Integrating the Cloud with Puppet About me: Dan Bode Some Dude at PuppetLabs @bodepd bodepd freenode Who is this talk for? Cloud Users Puppet beginners It will cover why integrate? explanation of

More information

From Bare Metal to Cloud. Andy ICCLab, ZHAW Piotr Kasprzak, GWDG

From Bare Metal to Cloud. Andy ICCLab, ZHAW Piotr Kasprzak, GWDG From Bare Metal to Cloud Andy Edmonds, @dizz, ICCLab, ZHAW Piotr Kasprzak, GWDG Intros ICCLab GWDG Zurich University for Service Provider for Applied Sciences Max Planck Society Cloud Computing and University

More information

Tanium Discover User Guide. Version 2.5.1

Tanium Discover User Guide. Version 2.5.1 Tanium Discover User Guide Version 2.5.1 May 07, 2018 The information in this document is subject to change without notice. Further, the information provided in this document is provided as is and is believed

More information

Git. Charles J. Geyer School of Statistics University of Minnesota. Stat 8054 Lecture Notes

Git. Charles J. Geyer School of Statistics University of Minnesota. Stat 8054 Lecture Notes Git Charles J. Geyer School of Statistics University of Minnesota Stat 8054 Lecture Notes 1 Before Anything Else Tell git who you are. git config --global user.name "Charles J. Geyer" git config --global

More information

Dense Anycast Deployment of DNS Authority Servers

Dense Anycast Deployment of DNS Authority Servers Dense Anycast Deployment of DNS Authority Servers NANOG 55 Vancouver, June 2012 Dave Knight Contents Background Expansion of L root Redesign Further Work Background In the beginning Authority service provided

More information

Please see the docs for latest release in 1.99.* Some of the information below might be outdated

Please see the docs for latest release in 1.99.*  Some of the information below might be outdated Setting up Sqoop 2 Building from sources Setting up a build environment with Eclipse Setting up the Code Formatter Quick commands to compile and run tests Creating Sqoop binaries Installing Sqoop2 on remote

More information

HP OO 10.x Network Architecture

HP OO 10.x Network Architecture Technical white paper HP OO 10.x Network Architecture Table of Contents Overview 2 Advancing to a Scalable Model 2 The Old Model 2 The New Model 3 Configuring the New Model 4 Firewall Configuration 4 Worker

More information

Red Hat Satellite 6.4

Red Hat Satellite 6.4 Red Hat Satellite 6.4 Provisioning Guide A guide to provisioning physical and virtual hosts on Red Hat Satellite Servers. Last Updated: 2019-04-02 Red Hat Satellite 6.4 Provisioning Guide A guide to provisioning

More information

Developing Kubernetes Services

Developing Kubernetes Services / MARCH 2019 / CON LONDON Developing Kubernetes Services at Airbnb Scale What is kubernetes? @MELAN IECEBULA Who am I? A BRIEF HISTORY Why Microservices? 4000000 3000000 MONOLITH LOC 2000000 1000000 0

More information

USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY

USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY AGENDA Version control overview Introduction and basics of Git Advanced Git features Collaboration Automation

More information

HOW TO SECURELY CONFIGURE A LINUX HOST TO RUN CONTAINERS

HOW TO SECURELY CONFIGURE A LINUX HOST TO RUN CONTAINERS HOW TO SECURELY CONFIGURE A LINUX HOST TO RUN CONTAINERS How To Securely Configure a Linux Host to Run Containers To run containers securely, one must go through a multitude of steps to ensure that a)

More information

Platform Migrator Technical Report TR

Platform Migrator Technical Report TR Platform Migrator Technical Report TR2018-990 Munir Contractor mmc691@nyu.edu Christophe Pradal christophe.pradal@inria.fr Dennis Shasha shasha@cs.nyu.edu May 12, 2018 CONTENTS: 1 Abstract 4 2 Platform

More information

Continuous Integration and Deployment (CI/CD)

Continuous Integration and Deployment (CI/CD) WHITEPAPER OCT 2015 Table of contents Chapter 1. Introduction... 3 Chapter 2. Continuous Integration... 4 Chapter 3. Continuous Deployment... 6 2 Chapter 1: Introduction Apcera Support Team October 2015

More information

GIT FOR SYSTEM ADMINS JUSTIN ELLIOTT PENN STATE UNIVERSITY

GIT FOR SYSTEM ADMINS JUSTIN ELLIOTT PENN STATE UNIVERSITY GIT FOR SYSTEM ADMINS JUSTIN ELLIOTT PENN STATE UNIVERSITY 1 WHAT IS VERSION CONTROL? Management of changes to documents like source code, scripts, text files Provides the ability to check documents in

More information

Deploying Rubrik Datos IO to Protect MongoDB Database on GCP

Deploying Rubrik Datos IO to Protect MongoDB Database on GCP DEPLOYMENT GUIDE Deploying Rubrik Datos IO to Protect MongoDB Database on GCP TABLE OF CONTENTS INTRODUCTION... 1 OBJECTIVES... 1 COSTS... 2 BEFORE YOU BEGIN... 2 PROVISIONING YOUR INFRASTRUCTURE FOR THE

More information

This tutorial provides a basic understanding of the infrastructure and fundamental concepts of managing an infrastructure using Chef.

This tutorial provides a basic understanding of the infrastructure and fundamental concepts of managing an infrastructure using Chef. About the Tutorial Chef is a configuration management technology developed by Opscode to manage infrastructure on physical or virtual machines. It is an open source developed using Ruby, which helps in

More information

USER GUIDE. Snow Inventory Agent for Unix. Version 5. Release date Document date SNOWSOFTWARE.COM

USER GUIDE. Snow Inventory Agent for Unix. Version 5. Release date Document date SNOWSOFTWARE.COM USER GUIDE Product Snow Inventory Agent for Unix Version 5 Release date 2016-09-27 Document date 2016-09-27 CONTENTS 1 Introduction... 3 1.1 Prerequisites... 3 2 Installation... 5 2.1 Prepared installation

More information

Getting Started with Cisco UCS Director Open Automation

Getting Started with Cisco UCS Director Open Automation Getting Started with Cisco UCS Director Open Automation Cisco UCS Director Open Automation, page 1 Upgrading Your Connector to the Current Release, page 5 Modules, page 5 Cisco UCS Director Open Automation

More information

Table of Contents 1.1. Install, Deploy, Maintain Infrastructure Installation Download. Deploy the Appliance

Table of Contents 1.1. Install, Deploy, Maintain Infrastructure Installation Download. Deploy the Appliance Table of Contents Install, Deploy, Maintain Infrastructure Installation Download Deploy the Appliance Installing the Plug-ins vcenter Server for Windows vcenter Server Appliance Open the Required Ports

More information

ardpower Documentation

ardpower Documentation ardpower Documentation Release v1.2.0 Anirban Roy Das May 18, 2016 Contents 1 Introduction 1 2 Screenshot 3 3 Documentaion 5 3.1 Overview................................................. 5 3.2 Installation................................................

More information

Linux Network Administration

Linux Network Administration Secure Remote Connections with OpenSSH Objective At the conclusion of this module, the student will be able to: Configure the ssh daemon start, stop, and restart sshd 17 January 2005 NETW 111 - SSH 2 SSH

More information

Dense Anycast Deployment of DNS Authority Servers

Dense Anycast Deployment of DNS Authority Servers Dense Anycast Deployment of DNS Authority Servers MENOG 10 Dubai, April 2012 Dave Knight Contents Background Expansion of L root Redesign Further Work Background In the beginning Authority service provided

More information

vcenter Server Installation and Setup Update 1 Modified on 30 OCT 2018 VMware vsphere 6.7 vcenter Server 6.7

vcenter Server Installation and Setup Update 1 Modified on 30 OCT 2018 VMware vsphere 6.7 vcenter Server 6.7 vcenter Server Installation and Setup Update 1 Modified on 30 OCT 2018 VMware vsphere 6.7 vcenter Server 6.7 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/

More information

INDIGO PAAS TUTORIAL. ! Marica Antonacci RIA INFN-Bari

INDIGO PAAS TUTORIAL. ! Marica Antonacci RIA INFN-Bari INDIGO PAAS TUTORIAL RIA-653549! Marica Antonacci!! marica.antonacci@ba.infn.it! INFN-Bari INDIGO PAAS Tutorial Introductory Concepts TOSCA Ansible Docker Orchestrator APIs INDIGO TOSCA custom types and

More information

Managing Configuration Drift and Auditing with Salt. Duncan Mac-Vicar P. Director, Data Center Management R&D, SUSE

Managing Configuration Drift and Auditing with Salt. Duncan Mac-Vicar P. Director, Data Center Management R&D, SUSE Managing Configuration Drift and Auditing with Salt Duncan Mac-Vicar P. Director, Data Center Management R&D, SUSE dmacvicar@suse.com How to manage infrastructure? 2 Sysadmin Alexis #!/bin/bash cat

More information

Garment Documentation

Garment Documentation Garment Documentation Release 0.1 Evan Borgstrom March 25, 2014 Contents i ii A collection of fabric tasks that roll up into a single deploy function. The whole process is coordinated through a single

More information

withenv Documentation

withenv Documentation withenv Documentation Release 0.7.0 Eric Larson Aug 02, 2017 Contents 1 withenv 3 2 Installation 5 3 Usage 7 3.1 YAML Format.............................................. 7 3.2 Command Substitutions.........................................

More information

GETTING STARTED WITH. Michael Lessard Senior Solutions Architect June 2017

GETTING STARTED WITH. Michael Lessard Senior Solutions Architect June 2017 GETTING STARTED WITH Michael Lessard Senior Solutions Architect June 2017 Agenda What is Git? Installation of Git Git basis Github First steps with Git 2 WHAT IS GIT? What is Git? Started in 2005 Created

More information

syslog-ng Apache Kafka destination

syslog-ng Apache Kafka destination syslog-ng Apache Kafka destination Release 0.1.11 Julien Anguenot Aug 23, 2017 Contents 1 syslog-ng-mod-python Apache Kafka destination 3 2 librdkafka installation 5 2.1 DEB packages via apt..........................................

More information

Nagios XI Using The Core Config Manager For Host Management

Nagios XI Using The Core Config Manager For Host Management The Industry Standard in IT Infrastructure Monitoring Purpose This document describes how to manage hosts, host groups and host templates using the Nagios XI Core Config Manager. While monitoring wizards

More information

Overhauling Dev Arch with Ansible Tower and Docker

Overhauling Dev Arch with Ansible Tower and Docker Overhauling Dev Arch with Ansible Tower and Docker Scott Van Velsor, Bryan Shake, Khaled Awwad June 29 1130a #redhat #rhsummit origins the landscape that came before branch & path limits no automation

More information

Installing EMC NaviSphere

Installing EMC NaviSphere , page 1 To communicate with VNX, Cisco UCS Director supports Windows-based EMC NaviSphere and Linux-based EMC Navisphere. Before using NaviSphere, you must install and configure a Secure Shell (SSH) server

More information

nacelle Documentation

nacelle Documentation nacelle Documentation Release 0.4.1 Patrick Carey August 16, 2014 Contents 1 Standing on the shoulders of giants 3 2 Contents 5 2.1 Getting Started.............................................. 5 2.2

More information

Jenkins User Conference Israel. #jenkinsconf. CI / Liveperson. Gidi Samuels. July 16, #jenkinsconf

Jenkins User Conference Israel. #jenkinsconf. CI / Liveperson. Gidi Samuels.  July 16, #jenkinsconf Jenkins User Conference Israel #jenkinsconf CI / CD @ Liveperson Gidi Samuels www.liveperson.com July 16, 2014 #jenkinsconf About Myself Lead the CI Team at Liveperson 3 years in Liveperson About Myself

More information

Install your scientific software stack easily with Spack

Install your scientific software stack easily with Spack Install your scientific software stack easily with Spack Les mardis du développement technologique Florent Pruvost (SED) Outline 1. Context 2. Features overview 3. In practice 4. Some feedback Florent

More information

LENS Server Maintenance Guide JZ 2017/07/28

LENS Server Maintenance Guide JZ 2017/07/28 LENS Server Maintenance Guide JZ 2017/07/28 Duty Maintain LENS server with minimum downtime Patch critical vulnerabilities Assist LAB member for using the LENS services Evaluate for custom requirements

More information

Brunch Documentation. Release Brunch team

Brunch Documentation. Release Brunch team Brunch Documentation Release 1.2.2 Brunch team June 22, 2012 CONTENTS i ii Contents: CONTENTS 1 2 CONTENTS CHAPTER ONE FAQ 1.1 I want to start new project with Brunch. What s the workflow? Create new

More information

Perl (5 Days Content)

Perl (5 Days Content) Perl (5 Days Content) Pre-requisites: Knowledge of any programming language ( C / C++ / Shell Scripting) Objective of the Course: The participants should be in a position to understand Perl Scripts written

More information

IoTivity Programmer s Guide Resource Encapsulation

IoTivity Programmer s Guide Resource Encapsulation IoTivity Programmer s Guide Resource Encapsulation 1 CONTENTS 2 Revision History... 4 3 Terminology... 5 4 Introduction to Resource Encapsulation... 6 4.1 Overall Architecture... 6 4.2 Iotivity Service

More information

DEVOPSIFYING NETWORK SECURITY. An AlgoSec Technical Whitepaper

DEVOPSIFYING NETWORK SECURITY. An AlgoSec Technical Whitepaper DEVOPSIFYING NETWORK SECURITY An AlgoSec Technical Whitepaper Introduction This technical whitepaper presents and discusses the concept of Connectivity as Code, a complementary concept to Infrastructure

More information

MANAGING MESOS, DOCKER, AND CHRONOS WITH PUPPET

MANAGING MESOS, DOCKER, AND CHRONOS WITH PUPPET Roger Ignazio PuppetConf 2015 MANAGING MESOS, DOCKER, AND CHRONOS WITH PUPPET 2015 Mesosphere, Inc. All Rights Reserved. 1 $(whoami) ABOUT ME Roger Ignazio Infrastructure Automation Engineer @ Mesosphere

More information

Designing and Implementing Cisco Network Programmability (NPDESI) v1.0

Designing and Implementing Cisco Network Programmability (NPDESI) v1.0 Data Sheet Learning Services Designing and Implementing Cisco Network Programmability (NPDESI) v1.0 Overview The Designing and Implementing Cisco Network Programmability (NPDESI) version 1.0 Cisco Training

More information

Application Program Interface Guide for Python

Application Program Interface Guide for Python Application Program Interface Guide for Python Document Version: 2017-06-15 Application Program Interface (API) calls are supported in NETLAB+ VE version 17.1.6 and later. This guide is to be used along

More information

DevOps Online Training

DevOps Online Training DevOps Online Training IQ Online training facility offers Devops online training by trainers who have expert knowledge in the Devops and proven record of training hundreds of students. Our Oracle Devops

More information

Release Ralph Offinger

Release Ralph Offinger nagios c heck p aloaltodocumentation Release 0.3.2 Ralph Offinger May 30, 2017 Contents 1 nagios_check_paloalto: a Nagios/Icinga Plugin 3 1.1 Documentation..............................................

More information

Deployment of Unified Communication - Lync Server 2013 Steps: Lync Front End Server in a Domain. Few Screen Shots. Scroll down to start your drill

Deployment of Unified Communication - Lync Server 2013 Steps: Lync Front End Server in a Domain. Few Screen Shots. Scroll down to start your drill Deployment of Unified Communication - Lync Server 2013 Steps: Lync Front End Server in a Domain Few Screen Shots Scroll down to start your drill 1. Install Fresh Server 2012 2. Configure Static IP 3. Join

More information

Installing or Upgrading ANM Virtual Appliance

Installing or Upgrading ANM Virtual Appliance CHAPTER 2 This chapter describes how to deploy Cisco ANM Virtual Appliance 4.3 (new installation) and how to upgrade from ANM software version 4.1 or 4.2 to software version 4.3. This chapter includes

More information

Installation and Administration Guide

Installation and Administration Guide Integrity Document Library Installation and Administration Guide Installing and using Integrity Agent for Linux 1-0277-0650-2006-03-09 Smarter Securi- Editor's Notes: 2006 Check Point Software Technologies

More information

OPENSTACK CLOUD RUNNING IN A VIRTUAL MACHINE. In Preferences, add 3 Host-only Ethernet Adapters with the following IP Addresses:

OPENSTACK CLOUD RUNNING IN A VIRTUAL MACHINE. In Preferences, add 3 Host-only Ethernet Adapters with the following IP Addresses: OPENSTACK CLOUD RUNNING IN A VIRTUAL MACHINE VirtualBox Install VirtualBox In Preferences, add 3 Host-only Ethernet Adapters with the following IP Addresses: 192.168.1.2/24 192.168.2.2/24 192.168.3.2/24

More information

vsphere Upgrade Update 1 Modified on 4 OCT 2017 VMware vsphere 6.5 VMware ESXi 6.5 vcenter Server 6.5

vsphere Upgrade Update 1 Modified on 4 OCT 2017 VMware vsphere 6.5 VMware ESXi 6.5 vcenter Server 6.5 Update 1 Modified on 4 OCT 2017 VMware vsphere 6.5 VMware ESXi 6.5 vcenter Server 6.5 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you

More information

OpenStack Infrastructure tools

OpenStack Infrastructure tools Coordination and OpenStack Infrastructure tools you will want to borrow Thierry Carrez Carrez (@tcarrez) Thierry (@tcarrez) Release Manager, OpenStack Crazy loads every day 000 patchsets are proposed

More information

PUPPET. Use at General Mills

PUPPET. Use at General Mills PUPPET Use at General Mills Preface HP UX platform at GMI is 15+ years old Consolidated Superdome architecture today Moving enterprise apps to RHEL6 Oracle SAP BW/BI Warehouse Management Short migration

More information

EPHEMERAL DEVOPS: ADVENTURES IN MANAGING SHORT-LIVED SYSTEMS

EPHEMERAL DEVOPS: ADVENTURES IN MANAGING SHORT-LIVED SYSTEMS SESSION ID: CSV-W12 EPHEMERAL DEVOPS: ADVENTURES IN MANAGING SHORT-LIVED SYSTEMS Todd Carr DevOps Engineer Unity Technologies @frozenfoxx Who am I? DevOps Engineer at Unity Technologies Security Enthusiast

More information

Less talk, more rock. Puppet

Less talk, more rock. Puppet Less talk, more rock Puppet ALM Connect 2013 deepak giridharagopal deepak@puppetlabs.com @grim_radical [github twitter freenode] Let s talk about... Immutability is great! Classes should be immutable

More information