Skip to content
This repository has been archived by the owner on Aug 17, 2023. It is now read-only.

Proteon/puppet-powerdns

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PowerDNS module

Build Status

This is a module to manage PowerDNS with Puppet. The configuration is split into several files and put in /etc/powerdns/pdns.d. This makes it easy to read which configurations are currently modified.

Usage

powerdns

include powerdns

powerdns::config

Set configuration settings in a pdns.d directory (this assumes that you have include=/etc/powerdns/pdns.d in pdns.conf).

powerdns::config { 'cache-ttl':
  ensure => present,
  value  => 20,
}

Or, set IPv6 address:

powerdns::config { 'local-ipv6':
  ensure => present,
  value  => $::ipaddress6,
}

powerdns::postgresql

This will install the postgresql backend for powerdns:

class { 'powerdns::postgresql':
  ensure   => present,
  user     => 'powerdns',
  password => 'secret',
  host     => 'localhost',
  port     => '5432',
  dbname   => 'pdns',
  dnssec   => 'no',
}

The dnssec value can be either 'yes' or 'no'. Default is 'yes'..

To be able to use it without importing data and without hassle, make sure that Postgres is installed before the powerdns::postgresql class.

powerdns::mysql

This will install the mysql backend for powerdns:

class { 'powerdns::mysql':
  ensure   => present,
  user     => 'powerdns',
  password => 'secret',
  host     => 'localhost',
  port     => '3306',
  dbname   => 'pdns',
  dnssec   => 'no',
}

The dnssec value can be either 'yes' or 'no'. Default is 'yes'.

powerdns recurser

class {'powerdns::recurser':
  allow_from => '127.0.0.1',
}

powerdns::recurser::option

See: http://doc.powerdns.com/html/built-in-recursor.html for a full list of configuration options

powerdns::recurser::option { 'log-common-errors':
  value  => 'off',
}

Testing

gem install bundler
bundle install
bundle exec rake

Dependencies are downloaded and used with librarian-puppet. If adding new dependencies, please add them in the Puppetfile and Modulefile, thanks!

Contribute

Send pull request and add tests. Make sure all tests pass (modify if you need) and make sure it's style-guide compliant.

About

Puppet module for managing PowerDNS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Puppet 73.4%
  • Ruby 26.6%