Feature #2536
Cache Puppet server IP
| Status: | Closed | Start date: | 08/13/2009 | |
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assignee: | - | % Done: | 0% |
|
| Category: | network | |||
| Target version: | - | |||
| Affected Puppet version: | Branch: | |||
| Keywords: | ||||
| Votes: | 0 |
Description
Seems like currently the IP associated with the puppet server name is not cached on the client, but gets queried again from DNS all the time during a client run. Ideally, I think, the client should resolve the name when starting a run, and cache the IP until the run is complete.
As I’ve only noticed on our production systems, I’m setting targeting this report against 0.24.5. Maybe this is already fixed in newer versions, but I didn’t find a ticket for it.
History
Updated by James Turnbull almost 3 years ago
- Status changed from Unreviewed to Needs Decision
- Assignee set to Luke Kanies
- Affected Puppet version changed from 0.24.5 to 0.25.0rc1
This is still a potential issue.
Updated by Christian Hofstaedtler over 2 years ago
Also, reverse DNS of clients connecting should also be cached on the master side. Right now each request turns into at least one DNS lookup.
Updated by Luke Kanies about 2 years ago
- Status changed from Needs Decision to Accepted
- Assignee deleted (
Luke Kanies) - Target version set to 2.7.x
I think we’ve now got multiple tickets related to server resolution, so we should probably target the lot of them in statler.
Updated by Nigel Kersten about 1 year ago
- Status changed from Accepted to Closed
- Affected Puppet version deleted (
0.25.0rc1)
This would entirely break everyone using round robin DNS to load balance individual operations.
Can you not configure your local cache node-side to achieve this?
Updated by Nigel Kersten about 1 year ago
- Target version deleted (
2.7.x)
Updated by Christian Hofstaedtler about 1 year ago
Nigel Kersten wrote:
This would entirely break everyone using round robin DNS to load balance individual operations.
Can you not configure your local cache node-side to achieve this?
Local cache would imply running a local DNS caching resolver, as, on Linux, nscd is mostly broken and especially unreliable for hostname lookups. Running a full blown DNS resolver on each node is a bit of overkill ;)
At least for catalog operations, there was discussion that round robin DNS ain’t any good anyway, as there are >1 requests needed to compile a catalog, so a node has to target the same puppetmaster for each run. If this has changed in the meantime, yay!
Updated by Nigel Kersten about 1 year ago
Oh yes, that totally changed!
As of 0.25.x you can use round robin safely, and we have a lot of people doing it.
I’m reasonably fond of http://code.google.com/p/nsscache/ to make up for nscd inadequacies :)