razor & puppet: the perfect marriage?
DESCRIPTION
Johan De Wit and Bert Deferme's presentation "Razor and Puppet: the perfect marriage?" at Puppet Camp Ghent 2013. Both speakers are Linux & Open Source Consultants.TRANSCRIPT
Razor and Puppet: The perfect marriage?
Razor and Puppet: The perfect marriage ?
Puppetcamp Ghent – February, 1 – 2013Johan De Wit – Linux & Open Source ConsultantBert Deferme – Linux & Open Source Consultant
Razor and Puppet: The perfect marriage?
Razor and Puppet: The perfect marriage?
What is Razor?
Razor =
A softwaretool for rapid provisioning of:
● Operating System(s)● Hypervisor(s)
On both physical and virtual servers.
Razor and Puppet: The perfect marriage?
A bit of Razor history
● Originally developed by EMC
Razor and Puppet: The perfect marriage?
A bit of Razor history
● Originally developed by EMC● Developed with these key features in mind:
Razor and Puppet: The perfect marriage?
A bit of Razor history
● Originally developed by EMC● Developed with these key features in mind:
● Adding a new OS or Hypervisor should be simple
Razor and Puppet: The perfect marriage?
A bit of Razor history
● Originally developed by EMC● Developed with these key features in mind:
● Adding a new OS or Hypervisor should be simple● Must be eventdriven
Razor and Puppet: The perfect marriage?
A bit of Razor history
● Originally developed by EMC● Developed with these key features in mind:
● Adding a new OS or Hypervisor should be simple● Must be eventdriven● Should have powerful discovery
Razor and Puppet: The perfect marriage?
A bit of Razor history
● Originally developed by EMC● Developed with these key features in mind:
● Adding a new OS or Hypervisor should be simple● Must be eventdriven● Should have powerful discovery● It should scale well
Razor and Puppet: The perfect marriage?
A bit of Razor history
● Originally developed by EMC● Developed with these key features in mind:
● Adding a new OS or Hypervisor should be simple● Must be eventdriven● Should have powerful discovery● It should scale well● It should focus on the task at hand, not try to do everything.
Razor and Puppet: The perfect marriage?
A bit of Razor history
● Originally developed by EMC● Developed with these key features in mind:
● Adding a new OS or Hypervisor should be simple● Must be eventdriven● Should have powerful discovery● It should scale well● It should focus on the task at hand, not try to do everything.● It should easily integrate with #devops tools
Razor and Puppet: The perfect marriage?
A bit of Razor history
● Originally developed by EMC● Developed with these key features in mind:
● Adding a new OS or Hypervisor should be simple● Must be eventdriven● Should have powerful discovery● It should scale well● It should focus on the task at hand, not try to do everything.● It should easily integrate with #devops tools● The control structure must support REST
Razor and Puppet: The perfect marriage?
A bit of Razor history
● Now: Collaboration with Puppetlabs● → Released via the Puppet Forge● → Under the Apache License
Razor and Puppet: The perfect marriage?
What is Razor?
Razor consists of two major components:
● The Razor Server
(Ruby, MongoDB, Node.js)
● The Razor Microkernel
(~20MB Linux Kernel, Facter, MCollective)
Razor and Puppet: The perfect marriage?
What is Razor?
Razor provides:● Autodiscovered realtime inventory data
Razor and Puppet: The perfect marriage?
What is Razor?
Razor provides:● Autodiscovered realtime inventory data● Dynamic image selection
Razor and Puppet: The perfect marriage?
What is Razor?
Razor provides:● Autodiscovered realtime inventory data● Dynamic image selection● Modelbased provisioning
Razor and Puppet: The perfect marriage?
What is Razor?
Razor provides:● Autodiscovered realtime inventory data● Dynamic image selection● Modelbased provisioning● Open APIs and plugin architecture
Razor and Puppet: The perfect marriage?
What is Razor?
Razor provides:● Autodiscovered realtime inventory data● Dynamic image selection● Modelbased provisioning● Open APIs and plugin architecture● “MetaltoCloud” application lifecycle management
Razor and Puppet: The perfect marriage?
Razor DEMO
RAZOR WORKFLOW IN SHORT:
● Discovery (Tags, Matcher Rules)
● Models (Defining OS Templates, ...)
● Policies (Rules that apply Models to Nodes based on Discovery)
● Broker (Configuration Management)
Razor and Puppet: The perfect marriage?
Razor DEMO
DISCOVERY
● PXE boot
● Microkernel
● Facter
● Communication
Razor and Puppet: The perfect marriage?
Razor DEMO
MODELS
● Operating System templates
CentOS/RHEL6 – Ubuntu Precise/Oneric – openSUSE – Debian VMWare ESXi 5
● Kickstart / preseed / ...
● Variables (Hostname, domainname, password, ...)
Razor and Puppet: The perfect marriage?
Razor DEMO
TAGS and MATCHER RULES
● Use existing default tags
● Possibility to create custom tags using “Matcher Rules)
Razor and Puppet: The perfect marriage?
Razor DEMO
DEFINING A POLICY
● Like a firewallrule (behaves alike)
● Apply a certain model based on certain (custom) tags
Razor and Puppet: The perfect marriage?
Razor DEMO
ENABLE A POLICY (AUTODEPLOY) / DELIVERY TO “BROKER”
● Wait for server(s) to be installed
● Drink coffee :)
● When deployed, node gets delivered to the “Broker” (Chef,puppet,...) for future management.
Razor and Puppet: The perfect marriage?
Razor in the future
Shortterm roadmap:
● Real OS Packages (End of Feb)● Improve postgresql data store support● Resolve scaling problems when under heavy load● RELIABILITY
Razor and Puppet: The perfect marriage?
Razor in the future
Longterm roadmap:
● Support for custom facts● Easier integration of new models● Better broker implementation
Razor and Puppet: The perfect marriage?
More information...
Razor:
● https://github.com/puppetlabs/Razor
OpenFuture:
● http://www.openfuture.be● http://twitter.com/Openfuture_be● Commercial contact: Ann Vanderheyden – ann@openfuture.be● Technical contact: technical@openfuture.be
OpenFuture is always hiring...