Puppet Razor module will perform the installation of Razor on Ubuntu Precise system. See blog post.
It is considered part of the overall Project Razor infrastructure, so you can get help using the module or enhancing it over at the main Project Razor site on GitHub.
The puppet module tool in Puppet Enterprise 2.5.0+ and Puppet 2.7.14+ resolves dependencies automatically.
Puppet module dependencies for razor module:
- apt module
- Mongodb module
- Node.js module
- Ruby module
- stdlib module
- tftp module
- vcsrepo module
- sudo module
Install puppetlabs-razor module and dependencies into module_path:
$ puppet module install puppetlabs-razor
Preparing to install into /etc/puppet/modules ...
Downloading from http://forge.puppetlabs.com ...
Installing -- do not interrupt ...
/etc/puppet/modules
└─┬ puppetlabs-razor (v0.1.4)
├─┬ puppetlabs-mongodb (v0.0.1)
│ └── puppetlabs-apt (v0.0.3)
├── puppetlabs-nodejs (v0.2.0)
├── puppetlabs-stdlib (v2.3.2)
├── puppetlabs-tftp (v0.1.1)
├── puppetlabs-vcsrepo (v0.0.4)
└── saz-sudo (v2.0.0)
Puppet apply, apply test manifests:
puppet apply razor/tests/init.pp
Puppet master, add razor class to target node:
node razor_system {
class { 'sudo':
config_file_replace => false,
}
include razor
}
-
username: razor daemon username, default: razor.
-
directory; installation target directory, default: /opt/razor.
-
address: razor.ipxe chain address, and razor service listen address, default: facter ipaddress.
-
persist_host: ip address of the mongodb server, default: 127.0.0.1.
-
mk_checkin_interval: mk checkin interval, default: 60 seconds.
-
mk_name: razor tiny core linux mk name.
-
mk_source: razor mk iso source, default: Razor-Microkernel project production iso.
-
git_source: razor git repo source, default: Puppet Labs Razor .
-
git_revision: razor git repo revision, default: master.
file { 'custom_mk.iso': path => '/var/tmp/custom_mk.iso', source => 'puppet:///acme_co/files/custom_mk.iso', }
class { 'razor': directory => '/usr/local/razor', mk_name => 'rz_mk_custom-image.0.9.0.4.iso', mk_source => '/var/tmp/custom_mk.iso', require => File['custom_mk.iso'], }
rz_image allows management of images available for razor:
rz_image { 'VMware-VMvisor-Installer-5.0.0-469512.x86_64.iso':
ensure => 'present',
type => 'esxi',
source => '/opt/image/VMware-VMvisor-Installer-5.0.0-469512.x86_64.iso',
}
rz_image { 'Precise':
ensure => 'present',
type => 'os',
version => '12.04',
source => '/opt/image/ubuntu-12.04-server-amd64.iso',
}
- Although we can query uuid, it can not be specified.
See Razor and Razor wiki pages
Special thanks to Craig Dunn @crayfishx for adding RHEL support for razor dependency modules.
Bill ONeill [email protected]
Branan Purvine-Riley [email protected]
Chad Metcalf [email protected]
Gary Larizza [email protected]
Pierre-Yves Ritschard [email protected]
Rémi [email protected]
Stephen Johnson [email protected] [email protected]
Street Preacher [email protected]