Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Vagrant and Puppet Primer - NWDUG Sep 2013

mikebell
September 05, 2013

Vagrant and Puppet Primer - NWDUG Sep 2013

Presented at nwdug in Manchester September 2013 - http://mikebell.io

mikebell

September 05, 2013
Tweet

More Decks by mikebell

Other Decks in Technology

Transcript

  1. VAGRANT DEVELOPMENT
    AND PUPPET
    MANAGEMENT
    USING VAGRANTS TO DO THE WORK AND
    PUPPET TO CONTROL THINGS
    Created by /
    Mike Bell @mikebell_

    View full-size slide

  2. WHO?
    Mike Bell
    Twitter -
    Drupal.org -
    Where - CTI Digital - Drupal Technical Architect
    @mikebell_
    digital006

    View full-size slide

  3. WHAT IS VAGRANT
    Vagrant is a command line wrapper for virtual box which
    provides utils for managing your VMs

    View full-size slide

  4. VAGRANT TERMINOLOGY
    Host - Your physical machine
    Guest - The virtual machine

    View full-size slide

  5. WHAT NOW?
    Vagrant supports puppet manifests out of the box so you can
    provision your development (and production) easily

    View full-size slide

  6. RESOURCES
    Vagrant Nginx -
    There you go! Job Done...
    http://github.com/digital006/drupaldev-nginx

    View full-size slide

  7. WHY SHOULD I USE THIS?
    1. Throw away
    2. Easy to rebuild
    3. Closer to production
    4. Flexible system

    View full-size slide

  8. PRE-REQUISITE
    OS that supports NFS (OSX, Linux) - You can use 'doze if you
    want (not tested)
    Lots of RAM

    View full-size slide

  9. SO WHAT JUST
    HAPPENED?
    Vagrant told virtual box to bring up a box (precise64)
    Puppet then configured the server according to our
    requirements
    Puppet also created the sites that we had specified

    View full-size slide

  10. INTERNAL
    FEATURES/CONFIG
    sites > shared over nfs to /var/www
    port 3306 is mapped from the guest the host

    View full-size slide

  11. WHAT IS PUPPET?
    Puppet is a provision tool to define the configuration of a
    server

    View full-size slide

  12. PUPPET MANIFESTS
    The backbone of puppet
    Define your config here

    View full-size slide

  13. PUPPET MODULES
    Existing puppet manifests and helper files
    Gives you a head start
    - great resource for existing modules
    Puppet Forge

    View full-size slide

  14. PUPPET MANIFESTS -
    DEMO
    Existing manifests in DrupalDev - nginx

    View full-size slide

  15. LIBRARIAN PUPPET
    Think composer to php
    Define your puppet modules in a config file and download
    them when needed
    Easy way to keep them up to date
    Librarian Puppet

    View full-size slide

  16. QUESTIONS?
    If you want to help checkout my github issues page

    View full-size slide