Network change, and thus - host not manageable

In my foreman installation, the network 'eth0' is used for management.
Nodes are deployed through it, and everyone is happy. However, each node
(including the foreman server) has an additional 'bond0' network which is
used for data. This network configuration is created for each host using
Puppet, after the installation completes. While the host names do not
change, foreman is unable to send 'build' command, with the following error
message: "Failed to enable node2.mgmt for installation: ["IP address Does
not match selected Subnet"]"
Indeed - the default interface showing in the foreman info of this node2 is
the bond0 interface, and not the eth0 interface.
Another piece of info: I am using foreman 1.3.2.

Any tip on how to make sure foreman still shows (and uses) eth0 while other
interfaces become defined there? I would appreciate any assistance with
that.

Thanks!
Etzion

Foreman uses whatever is reported by Facter for the 'ipaddress' and
'macaddress' facts. If they don't display what you need, you can make
Foreman authoratative by changing the
'ignore_puppet_facts_for_provisioning' Setting

Greg

··· On 3 March 2014 19:55, Etzion Bar-Noy wrote: > In my foreman installation, the network 'eth0' is used for management. Nodes > are deployed through it, and everyone is happy. However, each node > (including the foreman server) has an additional 'bond0' network which is > used for data. This network configuration is created for each host using > Puppet, after the installation completes. While the host names do not > change, foreman is unable to send 'build' command, with the following error > message: "Failed to enable node2.mgmt for installation: ["IP address Does > not match selected Subnet"]" > Indeed - the default interface showing in the foreman info of this node2 is > the bond0 interface, and not the eth0 interface. > Another piece of info: I am using foreman 1.3.2. > > Any tip on how to make sure foreman still shows (and uses) eth0 while other > interfaces become defined there? I would appreciate any assistance with > that.

I'm also seeing this problem.

I'm using Foreman to deploy debian 7 hosts on a private network. Several of
these hosts must also join a public network. It so happens that I have the
private network on eth1 and the public network on eth0 for these hosts. I
find that, upon a successful build, the machine updates its "host" entry
with the MAC address of eth0. The /var/lib/dhcp/dhcpd.leases file reports
the correct MAC address. Unfortunately, this means that a rebuild will fail
because it isn't listening for a DHCP request from the correct address.

What is even odder is that the eth0 interface doesn't even have to be
enabled for this to occur.

It seems to me that another workaround (in addition to the puppet/facter
override) is to ensure that eth0 (or the alphabetically-first interface) is
always the interface that is "foreman-facing". But both solutions seem
hacky to me - shouldn't Foreman be looking for the IP address / MAC address
combo you deployed? I wonder what would happen if you named the loopback
device 'ao'?

Tom

··· On Monday, March 3, 2014 3:46:45 PM UTC-6, Greg Sutcliffe wrote: > > On 3 March 2014 19:55, Etzion Bar-Noy <etz...@barnoy.co.il > > wrote: > > In my foreman installation, the network 'eth0' is used for management. > Nodes > > are deployed through it, and everyone is happy. However, each node > > (including the foreman server) has an additional 'bond0' network which > is > > used for data. This network configuration is created for each host using > > Puppet, after the installation completes. While the host names do not > > change, foreman is unable to send 'build' command, with the following > error > > message: "Failed to enable node2.mgmt for installation: ["IP address > Does > > not match selected Subnet"]" > > Indeed - the default interface showing in the foreman info of this node2 > is > > the bond0 interface, and not the eth0 interface. > > Another piece of info: I am using foreman 1.3.2. > > > > Any tip on how to make sure foreman still shows (and uses) eth0 while > other > > interfaces become defined there? I would appreciate any assistance with > > that. > > Foreman uses whatever is reported by Facter for the 'ipaddress' and > 'macaddress' facts. If they don't display what you need, you can make > Foreman authoratative by changing the > 'ignore_puppet_facts_for_provisioning' Setting > > Greg >

Hi Tom.
It might get more interesting for the newly implemented network devices
names, like em0, em1 and p3p0 (and its likes) - very common with RHEL6 and
Dell servers. This is the future, however, and we will not be able to avoid
it for much longer now…

Etzion

··· On Thu, May 8, 2014 at 10:28 PM, Tom Downes wrote:

I’m also seeing this problem.

I’m using Foreman to deploy debian 7 hosts on a private network. Several
of these hosts must also join a public network. It so happens that I have
the private network on eth1 and the public network on eth0 for these hosts.
I find that, upon a successful build, the machine updates its “host” entry
with the MAC address of eth0. The /var/lib/dhcp/dhcpd.leases file reports
the correct MAC address. Unfortunately, this means that a rebuild will fail
because it isn’t listening for a DHCP request from the correct address.

What is even odder is that the eth0 interface doesn’t even have to be
enabled for this to occur.

It seems to me that another workaround (in addition to the puppet/facter
override) is to ensure that eth0 (or the alphabetically-first interface) is
always the interface that is “foreman-facing”. But both solutions seem
hacky to me - shouldn’t Foreman be looking for the IP address / MAC address
combo you deployed? I wonder what would happen if you named the loopback
device ‘ao’?

Tom

On Monday, March 3, 2014 3:46:45 PM UTC-6, Greg Sutcliffe wrote:

On 3 March 2014 19:55, Etzion Bar-Noy etz...@barnoy.co.il wrote:

In my foreman installation, the network ‘eth0’ is used for management.
Nodes
are deployed through it, and everyone is happy. However, each node
(including the foreman server) has an additional ‘bond0’ network which
is
used for data. This network configuration is created for each host
using
Puppet, after the installation completes. While the host names do not
change, foreman is unable to send ‘build’ command, with the following
error
message: "Failed to enable node2.mgmt for installation: [“IP address
Does
not match selected Subnet”]"
Indeed - the default interface showing in the foreman info of this
node2 is
the bond0 interface, and not the eth0 interface.
Another piece of info: I am using foreman 1.3.2.

Any tip on how to make sure foreman still shows (and uses) eth0 while
other
interfaces become defined there? I would appreciate any assistance with
that.

Foreman uses whatever is reported by Facter for the ‘ipaddress’ and
’macaddress’ facts. If they don’t display what you need, you can make
Foreman authoratative by changing the
’ignore_puppet_facts_for_provisioning’ Setting

Greg


You received this message because you are subscribed to a topic in the
Google Groups “Foreman users” group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/foreman-users/DFZI2gnjM5M/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at http://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.