Getting to Push Button Deploys Moovweb January 19, 2012.

Slides:



Advertisements
Similar presentations
Implementing Tableau Server in an Enterprise Environment
Advertisements

About Me CTO, Individual Digital, Inc. (Startup) Author of ext/tidy, PHP 5 Unleashed, Zend Ent. PHP Patterns
Puppet for GENI Experiments
1. What is Subversion? Why do we need CM? Basic concepts Repositories Options Setup Clients Options Setup Operation Troubleshooting Slide 2.
EHarmony in Cloud Subtitle Brian Ko. eHarmony Online subscription-based matchmaking service Available in United States, Canada, Australia and United Kingdom.
Getting Started with Capistrano and Ruby on Rails Slides taken from
1 From a Commodity to an Expert Master your IT business and your life.
1. Topics Is Cloud Computing the way to go? ARC ABM Review Configuration Basics Setting up the ARC Cloud-Based ABM Hardware Configuration Software Configuration.
1 Automating Monitoring with Puppet Chris Mague Moovweb May 23, 2012.
27-Jun-15 Rails. What is Rails? Rails is a framework for building web applications This involves: Getting information from the user (client), using HTML.
BizTalk Deployment using Visual Studio Release Management
Ruby on Rails CSE 190M, Spring 2009 Week 5. Installing Rails First, install Ruby with RubyGems Then, install the Rails gem gem install rails -version=2.3.2.
The easy way to a nice looking website design By a total non-designer (Me!)
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Improving Software Quality with Continuous Integration
Understanding and Managing WebSphere V5
#RefreshCache CI - Daily Builds w/Jenkins – an Open Source Continuous Integration Server Nick Airdo Community Developer Advocate Central Christian Church.
CONTINUOUS INTEGRATION, DELIVERY & DEPLOYMENT ONE CLICK DELIVERY.
Deploying Ruby on Rails How to make your application actually serve Dan Buettner 18 Oct 2007.
Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over the Internet. Cloud is the metaphor for.
Immutable Infrastructure With Docker and EC2 Docker Conf 2014 Michael Bryzek CTO & Co-Founder Gilt
Inventory:OCSNG + GLPI Monitoring: Zenoss 3
& Dev Ops. Sherwin-Williams & DevOps Introduction to Sherwin-Williams.
LiveCycle Data Services Introduction Part 2. Part 2? This is the second in our series on LiveCycle Data Services. If you missed our first presentation,
Puppet with vSphere Workshop Install, configure and use Puppet on your laptop for vSphere DevOps Billy Lieberman August 1, 2015.
2010. The Subversion Dilemma Check in buggy code and drive everyone else crazy Avoid checking it in until it’s fully debugged or.
…using Git/Tortoise Git
CERN IT Department CH-1211 Genève 23 Switzerland t Experiences running a production Puppet Ben Jones HEPiX Bologna Spring.
Installation and Development Tools National Center for Supercomputing Applications University of Illinois at Urbana-Champaign The SEASR project and its.
Configuration Management with Cobbler and Puppet Kashif Mohammad University of Oxford.
Continuous Delivery on AWS
Managing SX.e and TWL with MARC and Scripts Jeremiah Curtis
4. Managing the Desktop Thomas Lee Chief Technologist – QA plc.
SOA-9: Implementing SOA in Financial Services Banco Comafi a Real Leading Case Hernan Aymard Sr Solution Architect Javier Betancourt Sr. Project Manager.
Wordpress with Mina Automated Deployment Solution Jonathan Gravato DIG 4104c.
© 2008 IBM Corporation AIX Workload Partion Manger.
NovaBACKUP xSP Technical Training By: Nathan Fouarge
Introduction to Taverna Online and Interaction service Aleksandra Pawlik University of Manchester.
Introduction To BlueMix By: Ryan
CERN IT Department CH-1211 Genève 23 Switzerland t IT Configuration Activities Gavin McCance Online Cross-experiment Meeting, 14 June 2012.
Optimal Pipeline Using Perforce, Jenkins & Puppet Nitin Pathak Works on
Stairway to the cloud or can we take the highway? Taivo Liik.
Configuration Report (nearly) Christmas Edition
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
INFO 344 Web Tools And Development CK Wang University of Washington Spring 2014.
Selenium server By, Kartikeya Rastogi Mayur Sapre Mosheca. R
CLOUDWATCH VERY SIRIUS MONITORING. SENDING METRICS Metrics can be sent in simply through additional handlers to common tools No handler yet for collectd.
CERN AI Config Management 16/07/15 AI for INFN visit2 Overview for INFN visit.
Ansible and Ansible Tower 1 A simple IT automation platform November 2015 Leandro Fernandez and Blaž Zupanc.
Windows Azure and iOS Chris Risner Windows Azure Technical Evangelist Microsoft
Cloud Installation & Configuration Management. Outline  Definitions  Tools, “Comparison”  References.
Configuration Services at CERN HEPiX fall Ben Jones, HEPiX Fall 2014.
Office 365 What Is The Right Fit For You? Andrew Riley, MCTS, MCTIP, ITIL v3.
SoftUpdate New features and management technique.
Platform & Engineering Services CERN IT Department CH-1211 Geneva 23 Switzerland t PES GIT Service in the Agile Infrastructure Project Vítor.
Lightweight inventory management with Pallet Jack
Appium Studio Appium testing made easy at any scale.
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
Stress Free Deployments with Octopus Deploy
@ Bucharest DevOps Hacker Meetup
Your OSS Project Is Now Served
4th Forum How to easily offer your application as a self-service template by using OpenShift and GitLab-CI 4th Forum Alberto.
How to automate software with
Scaling Puppet and Foreman for HPC
Introduction to Ansible
Docker in AWS ECS.
Module P3 Practical: Building a webapp in nodejs and
Agile testing for web API with Postman
Configuration management suite
Empowering teams with scalable Shiny applications
Presentation transcript:

Getting to Push Button Deploys Moovweb January 19, 2012

Things Everyone Wants

Reality … is it done yet??? … is it done yet??? … is it done yet???

Gotta Have It! PROS Increase velocity of change/responsiveness Get Operations out of the loop Buzzword compliance – aka Shiny!!!

PROS Increase velocity of change/responsiveness

PROS – Ops Gets Out of Loop Less work for Operations Developers feel more in control

Gotta Have It! CONS Increase velocity of change Shared responsibility Not always easy

Make It So...

Components

Components - MoovStack

CI Jenkins ( maiden name is Hudson ) Checks out a deploy branch from git Runs a few sanity checks Packages software Uploads to software repo Tags build in git

Jenkins nkins- ci.org/

Jenkins

Rake

Packaging But it's sooooo hard save yourself first.....

Using FPM

Building a Gem

Right Tool Packages Something that does not change often Don't need to roll back quickly Don't need more than 1 version at a time You cache external repos or limit to just yours

Right Tool Gems Fast roll back – gem cache Easy setup of gem server Need more than 1 version at a time Bundler for dependencies Bundle exec for peace of mind

Configuration Management Puppet everything from bare metal/base image Seperate data from manifests with an ENC Max troubleshooting time is 20 minutes Amazon free ”chaos monkey” service

Puppet – Start with a sane base

ENC – Use Groups! om/guides/installing_das hboard.html

ENC – Node Entries Inherit

ENC – Scripting Additions

ENC - Output

Manifests Contain ENC Variables

Templates Contain ENC Variables

Puppet - Tips Execs hurt – try to avoid them Recursive directories – use vcsrepo instead Write your own types – just restart in between Run mongrel or passenger Use behind a load balancer for fun Use reporting, but take the DB off of your master Write your own facts and save lots of time

Puppet - Scaling

Mcollective – Do It NOW!! Orchestration framework Crazy Parallel Write more ruby code... Clients and Agents

Mcollective – Crazy Parallel 6380 nrpe checks across 370 hosts in 3.8 seconds c/devops/tree/master/mco llective/nrpe

Use Facts and Classes to Filter

Mcollective – Custom Agent

Mcollective – Custom Client

Mcollective - Tips Remeber you have a machine gun pointed at your foot Wrap command in IO.popen and log everything Log to syslog Use ApacheMQ For EC2 tune your keep alives (registerinterval) Remember you have a machine gun pointed at your foot

Mcollective - Scaling

Sinatra Web app in 5 minutes Much more minimal than rails Written in Ruby so I can interface with Mcollective easily com/

Sinatra – Addons sinatra-respond_to - useful as API Pony – send from Sinatra Twitter Bootstrap – make things pretty

Public Example guec/mco_dashboard _example

Public Example

Really Simple

Sinatra - Tips Run a few behind Nginx Use helpers whenever possible Log every push Use it to integrate all your data

Actual Push Procedure

Dashboard Functionality Push software Audit software Real-time monitoring check Performance data integration Log data integration Troubleshooting tools for developers Utilities for non-technical staff Open trouble tickets Cost information (in progress) Userful links to other data sources

Oppy – an example

Thanks Michael Catlin (organizer) Tarun Desikan (giving me free reign/enough rope) R.I. Pienaar ( Mcollective author and helpful guy) Andrew Farmer ( for helping to get this going )

Links IRC #puppet,#mcollective,#devops

Author Chris Mague IRC: bosszaru usually on #gaijin