powerman

pdk
powerman Puppet module

4,253 downloads

895 latest version

5.0 quality score

Version information

  • 1.1.0 (latest)
  • 1.0.0
  • 0.1.0
released Aug 25th 2021
This version is compatible with:
  • Puppet Enterprise 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x
  • Puppet >= 6.0.0 < 8.0.0
  • CentOS
    ,
    OracleLinux
    ,
    RedHat
    ,
    Debian
    ,
    Ubuntu

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'treydock-powerman', '1.1.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add treydock-powerman
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install treydock-powerman --version 1.1.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download
Tags: power, ipmi, serial

Documentation

treydock/powerman — version 1.1.0 Aug 25th 2021

puppet-module-powerman

Puppet Forge CI Status

####Table of Contents

  1. Setup - The basics of getting started with powerman
  2. Usage - Configuration options and additional functionality
  3. Reference - Module reference

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 <<| |>>

Reference

http://treydock.github.io/puppet-module-powerman/