1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
|
# ntp
#### Table of Contents
1. [Module Description - What the module does and why it is useful](#module-description)
1. [Setup - The basics of getting started with ntp](#setup)
1. [Usage - Configuration options and additional functionality](#usage)
1. [Reference - An under-the-hood peek at what the module is doing and how](#reference)
1. [Limitations - OS compatibility, etc.](#limitations)
1. [Development - Guide for contributing to the module](#development)
## 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:
```puppet
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
```puppet
include ntp
```
### Change NTP servers
```puppet
class { 'ntp':
servers => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
}
```
### Restrict who can connect
```puppet
class { 'ntp':
servers => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
restrict => ['127.0.0.1'],
}
```
### Install a client that can't be queried
```puppet
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.
```puppet
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
```puppet
class { 'ntp':
servers => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
restrict => ['127.0.0.1'],
service_manage => false,
}
```
### Configure and run ntp without installing
```puppet
class { 'ntp':
package_manage => false,
}
```
### Pass in a custom template
```puppet
class { 'ntp':
servers => [ 'ntp1.corp.com', 'ntp2.corp.com' ],
restrict => ['127.0.0.1'],
service_manage => false,
config_epp => 'different/module/custom.template.epp',
}
```
## Reference
See [REFERENCE.md](REFERENCE.md)
## Limitations
This module has been tested on [all PE-supported platforms](https://forge.puppetlabs.com/supported#compat-matrix). Additionally, it is tested (but not supported) on Solaris 10 and Fedora 20-22.
## Development
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.](https://docs.puppetlabs.com/forge/contributing.html)
### Contributors
To see who's already involved, see the [list of contributors.](https://github.com/puppetlabs/puppetlabs-ntp/graphs/contributors)
|