If you are using Satellite 6 (or Foreman), what we have found that is easiest is the following:
- From Satellite 6, click on Configure > Puppet classes
- Locate the module, NTP in your example and click on it
- Click on the smart class parameter tab
- Locate the item you wish to overrride. For the NTP module I use, this would be the "servers" parameter. Click on the parameter to make it the active focus.
- Check the "override" box to allow Satellite to override the value
- Provide a sane default value to use when nothing matches
- In the "Order" box under the "Override Value For Specific Hosts" section, add "location" as a valid matcher
- Add the "Match" and "Value" sections for your environment.
For example,
Match : Location = chicago
Value : ["10.44.34.10","10.44.88.1","10.44.88.2"]
Any host that you add that has location set to chicago, will automatically substitute your default values, with the values that you defined in the override.
Note: if you want to override on a host by host basis, any parameter that you had selected "override" as shown in step 4, will be available under the hosts smart class parameter tab as well.
Hope that makes sense.. this is exactly how we are doing it with Foreman/Sat 6, which it sometimes a little different to the standard puppet way of doing things.