Skip to content

puppetlabs/puppetlabs-ntp

Folders and files

NameName
Last commit message
Last commit date
Nov 17, 2020
Mar 15, 2021
May 12, 2020
Mar 16, 2021
Jun 27, 2016
Sep 18, 2017
Mar 16, 2021
Jan 29, 2018
Dec 17, 2020
Nov 29, 2018
Oct 14, 2016
Nov 1, 2019
Dec 17, 2018
Nov 21, 2019
Nov 17, 2020
Nov 17, 2020
Mar 15, 2021
Apr 15, 2019
Jan 27, 2016
Feb 16, 2021
Oct 17, 2017
Mar 15, 2021
May 18, 2018
Mar 29, 2021
Sep 17, 2019
Nov 4, 2020
Dec 16, 2020
Jul 3, 2018
Feb 16, 2016
Jan 3, 2018
Nov 4, 2020
Mar 29, 2021
Jan 26, 2021
Jan 22, 2018
Mar 29, 2021
Feb 15, 2021

Repository files navigation

ntp

Table of Contents

  1. Module Description - What the module does and why it is useful
  2. Setup - The basics of getting started with ntp
  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

Module description

The ntp module installs, configures, and manages the NTP service across a range of operating systems and distributions.

Setup

Beginning with ntp

include ntp is enough to get you up and running. To pass in parameters specifying which servers to use:

class { 'ntp':
  servers => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
}

Usage

All parameters for the ntp module are contained within the main ntp class, so for any function of the module, set the options you want. See the common usages below for examples.

Install and enable NTP

include ntp

Change NTP servers

class { 'ntp':
  servers => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
}

Restrict who can connect

class { 'ntp':
  servers  => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
  restrict => ['127.0.0.1'],
}

Install a client that can't be queried

class { 'ntp':
  servers   => ['ntp1.corp.com', 'ntp2.corp.com'],
  restrict  => [
    'default ignore',
    '-6 default ignore',
    '127.0.0.1',
    '-6 ::1',
    'ntp1.corp.com nomodify notrap nopeer noquery',
    'ntp2.corp.com nomodify notrap nopeer noquery'
  ],
}

Listen on specific interfaces

Restricting NTP to a specific interface is especially useful on Openstack node, which may have numerous virtual interfaces.

class { 'ntp':
  servers  => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
  interfaces => ['127.0.0.1', '1.2.3.4']
}

Opt out of Puppet controlling the service

class { 'ntp':
  servers        => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
  restrict       => ['127.0.0.1'],
  service_manage => false,
}

Configure and run ntp without installing

class { 'ntp':
  package_manage => false,
}

Pass in a custom template

class { 'ntp':
  servers         => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
  restrict        => ['127.0.0.1'],
  service_manage  => false,
  config_epp      => 'different/module/custom.template.epp',
}

Connect to an NTP server with the burst option enabled

class { 'ntp':
  servers => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
  burst  => true,
}

Reference

See REFERENCE.md

Limitations

This module has been tested on all PE-supported platforms. Additionally, it is tested (but not supported) on Solaris 10 and Fedora 20-22.

For an extensive list of supported operating systems, see metadata.json

Development

We are experimenting with a new tool for running acceptance tests. It's name is puppet_litmus this replaces beaker as the test runner. To run the acceptance tests follow the instructions here.

Puppet modules on the Puppet Forge are open projects, and community contributions are essential for keeping them great. Please follow our guidelines when contributing changes.

For more information, see our module contribution guide.

Contributors

To see who's already involved, see the list of contributors.