nsd

Puppet Module for managing NSD
Matt Dainty

Matt Dainty

bodgit

5,804 downloads

4,768 latest version

5.0 quality score

Version information

  • 2.0.0 (latest)
  • 1.0.0
released Jul 3rd 2019
This version is compatible with:
  • Puppet Enterprise 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >=4.6.0 <6.0.0
  • RedHat
    ,
    CentOS
    ,
    OracleLinux
    ,
    Scientific
    ,
    OpenBSD

Start using this module

Tags: nsd, dns

Documentation

bodgit/nsd — version 2.0.0 Jul 3rd 2019

nsd

Tested with Travis CI

Build Status Coverage Status Puppet Forge Dependency Status

Table of Contents

  1. Description
  2. Setup - The basics of getting started with nsd
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations - OS compatibility, etc.
  6. Development - Guide for contributing to the module

Description

This module manages NSD.

RHEL/CentOS and OpenBSD are supported using Puppet 4.6.0 or later.

Setup

Setup Requirements

On RHEL/CentOS platforms you will need to have access to the EPEL repository by using stahnma/epel or by other means.

Beginning with nsd

In the simplest case, configure NSD as a master with a single zone:

include ::nsd

::nsd::zone { 'example.com.':
  source => 'puppet:///modules/example/example.com.zone',
}

Usage

Configure NSD listening on the primary interface only as a slave for a single zone protected with the given TSIG key:

include ::nsd

::nsd::key { 'example.':
  algorithm => 'hmac-sha256',
  secret    => '6z+8iKRIQrwN43TFfO/Rf2NHzpHIFVi6PsJ7dDESclc=',
}

::nsd::zone { 'example.com.':
  allow_notify => [
    ['192.0.2.1', 'example.'],
  ],
  request_xfr  => [
    ['AXFR', '192.0.2.1', 'example.'],
  ],
}

Reference

The reference documentation is generated with puppet-strings and the latest version of the documentation is hosted at https://bodgit.github.io/puppet-nsd/.

Limitations

This module has been built on and tested against Puppet 4.6.0 and higher.

The module has been tested on:

  • RedHat Enterprise Linux 6/7
  • OpenBSD 6.0/6.1

Development

The module has both rspec-puppet and beaker-rspec tests. Run them with:

$ bundle exec rake test
$ PUPPET_INSTALL_TYPE=agent PUPPET_INSTALL_VERSION=x.y.z bundle exec rake beaker:<nodeset>

Please log issues or pull requests at github.