Version information
This version is compatible with:
- Puppet Enterprise 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
- Puppet >= 3.0.0 < 5.0.0
- , , , , , , ,
Start using this module
Add this module to your Puppetfile:
mod 'theforeman-dns', '3.4.1'
Learn more about managing modules with a PuppetfileDocumentation
DNS module for Puppet
Installs and manages an ISC BIND DNS server with basic zones, primarily for The Foreman.
Usage
Include the top level dns
class to fully configure the service.
include ::dns
A key is set up to allow dynamic DNS updates, stored in rndc.key. This is used by Foreman's smart proxy to add and remove records on the fly.
Zones can be created with the dns::zone
resource:
dns::zone { 'example.com': }
Slaves can also be configured by setting allow_transfer
in the master's zone
and setting zonetype => 'slave'
in the slave's zone.
Credits
Based on zleslie-dns, with a lot of the guts ripped out. Thanks to zleslie for the original work
Contributing
- Fork the project
- Commit and push until you are happy with your contribution
- Send a pull request with a description of your changes
See the CONTRIBUTING.md file for much more information.
More info
See http://theforeman.org or at #theforeman irc channel on freenode
Copyright (c) 2010-2015 Foreman developers and Zach Leslie
Except where specified in provided modules, this program and entire repository is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Changelog
3.4.1
- Do not configure listen-on-v6 parameter if it's not set
3.4.0
- Add additional_options parameter to dns class for options without parameters
3.3.1
- Skip package installation when dns_server_package is empty
- Nest 'forwarders' only if 'forward' is used
- Use concat fragments instead of file resource templates for config
3.3.0
- Add dns_notify to dns class and dns::zone define
- Add acls hash
- Add controls hash
- Change default path for zones.conf to /etc/named/zones.conf for the RedHat OS family
3.2.0
- Add empty_zones_enable and forward global parameters
- Add service_ensure, service_enable parameters to manage service properties
- Change allow_recursion default to localnets and localhost to prevent open recursion
- Support Puppet 3.0 minimum
- Support Fedora 21, remove Debian 6 (Squeeze), add Ubuntu 16.04
3.1.0
- Support configuration on FreeBSD
- Add namedconf_template/optionsconf_template parameters to override templates
- Add allow_recursion parameter to control it on a global level
- Add recursion, allow_query, dnssec_enable and dnssec_validation global parameters
- Add manage_file, forward and forwarders parameters to dns::zone
- Add also_notify parameter to dns::zone
- Change package resource to ensure_packages
3.0.0
- Change theforeman-concat_native to puppetlabs-concat
- Test with Puppet 4
2.0.1
- Fix template variable lookups under the future parser
2.0.0
- Add masters/allow_transfer parameters to dns::zone to configure master/slave relationships
- Require that dns is explicitly included, not implicitly included by dns::zone
- Add and refactor dns::zone parameters
- Improve dns::zone defaults for soa, soaip etc.
- Replace dns::zone parameters for zone path and filename
- Remove unused rndc_alg/secret parameters
- Improve style and fix linting issues
- Refresh README
1.4.0
- Add listen_on_v6 parameter
- Prevent create-rndc key exec changing on every run
- Puppet 2.6 support deprecated
- Update gitignore, change fixtures to HTTPS
Dependencies
- puppetlabs/concat (>= 1.0.0 < 3.0.0)
- puppetlabs/stdlib (>= 2.6.0 < 5.0.0)
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.