puppet-module-powerman
Table of Contents
Setup
What powerman affects
This module will install and configures powerman.
Usage
Install and configure powerman to listen on all interfaces and define devices, nodes and aliases
class { '::powerman':
listen => '0.0.0.0',
}
powerman::device { 'compute-ipmi':
driver => 'ipmipower',
endpoint => '/usr/sbin/ipmipower -D LAN_2_0 -u admin -p changeme -h bmc-compute[01-04]',
}
powerman::nodes { 'compute[01-04]':
device => 'compute-ipmi',
port => 'bmc-compute[01-04]',
}
powerman::alias { 'compute':
nodes => 'compute[01-04]',
}
To configure a system as a powerman client:
class { '::powerman':
server => false,
powerman_server => 'powerman.example.com',
}
This is an example of exporting console configurations for all physical servers:
if $facts['virtual'] == 'physical' {
@@powerman::device { "bmc-${::hostname}-ipmi":
driver => 'ipmipower',
endpoint => "/usr/sbin/ipmipower -D LAN_2_0 -u admin -p changeme -h bmc-${::hostname}-ipmi |&",
}
@@powerman::node { $::hostname:
device => "bmc-${::hostname}-ipmi",
port => "bmc-${::hostname}",
}
}
Then collect all the exported resources:
Powerman::Device <<| |>>
Powerman::Node <<| |>>
Powerman::Alias <<| |>>