Project

General

Profile

ERF50-9294 » History » Version 3

Daniel Moessner, 09/22/2016 07:59 AM

1 1 Lukas Zapletal
h1. ERF50-9294 Failed to save: failed to detect boot server
2
3 3 Daniel Moessner
<pre>
4 1 Lukas Zapletal
ERF50-9294 [Foreman::WrappedException]: Unable to find IP address for 'foreman.home.lan' ([Resolv::ResolvError]: DNS result has no information for foreman.home.lan)
5 3 Daniel Moessner
</pre>
6 1 Lukas Zapletal
7 3 Daniel Moessner
<pre>
8
failed to detect boot server: ERF50-9294 [Foreman::WrappedException]: Unable to find IP address for 'capsule-server.satellite.example.com' ([SocketError]: getaddrinfo: Name or service not known)
9
</pre>
10 1 Lukas Zapletal
11 3 Daniel Moessner
* This happens when hostname set in the @tftp_servername@ option (TFTP Smart Proxy by default) has no valid DNS record via DNS servers set in SOA/NS record of the domain. Foreman resolves the hostname set in @tftp_servername@ to an IP address in order to ensure clients boots without any DNS requests.
12 1 Lukas Zapletal
13 3 Daniel Moessner
* By default, Foreman explicitly contacts DNS servers configured in the SOA therefore it ignores system-wide DNS setting (like @resolv.conf@, @/etc/hosts@, etc). This can lead to issues and this may be unexpected behaviour for some administrators.
14 1 Lukas Zapletal
15 3 Daniel Moessner
* Luckily, there is a global setting "Query local nameservers" (see Administer -> Settings) available to change that behaviour. Foreman will then query the locally configured resolver instead of the SOA/NS authorities when the setting is set.
16 2 Lukas Zapletal
17 3 Daniel Moessner
As an alternative, set the @tftp_servername@ configuration value to the server's IP address instead of the DNS name, directly in @/etc/foreman-proxy/settings.d/tftp.yml@, so Foreman won't need to resolve the hostname.
18
19
The relevant setting can be found on the Smart Proxy in @Administer -> Settings -> Provisoning ->  Query local nameservers@  (make sure to restart @foreman-proxy@ process after changing by issuing @# service foreman-proxy restart@):
20 2 Lukas Zapletal
21 1 Lukas Zapletal
<pre>
22 2 Lukas Zapletal
[root@myproxy ~]# cat /etc/foreman-proxy/settings.d/tftp.yml 
23 1 Lukas Zapletal
---
24
:enabled: true
25
:tftproot: /var/lib/tftpboot/
26 2 Lukas Zapletal
:tftp_servername: 192.168.99.1
27 1 Lukas Zapletal
</pre>
28
29
Foreman installer can set this automatically via @--foreman-proxy-tftp-servername@ option.