ensure => $version, # Get version from the class declaration before => File['/etc/httpd.conf'], } file {'/etc/httpd.conf': ensure => file, owner => 'httpd', content => template('apache/httpd.conf.erb'), # Template from a module } service {'httpd': ensure => running, enable => true, subscribe => File['/etc/httpd.conf'], } }
were mentioned, time for the bad ones ◦ Master / Agent ▪ Sometimes not possible for agents to reach the master (Firewalls, vendor politics, proxies, whatever) • extensive Documentation / Learning puppet
vagrant up ◦ Get required images ◦ Setup and run virtual machines ◦ Install required software (incl. described versions) ◦ make application code in VM available
favorite environment, but the code runs in the VM • extremely fastened environment setup, e.g. for new employees. • Less space used when using several VM’s.
Instances with resizable compute capacity ◦ Auto-Scaling ◦ Tags | User Data ◦ EC2 is ephemeral (non-persistent) • Amazon Machine Image (AMI) • Tons of other services
slow and makes the application unsecure • Solution: Pre-Bake AMIs • Packer is a tool for creating identical machine images from a single source configuration