Force 'main' IP on multi-homed Chef nodes


#1

Has anyone found a straightforward way to force Ohai to use a specific interface’s IP address as the “main” ip address for the Chef node? All our server’s are multi-homed (have 2-3 interfaces). Chef is currently picking the IP of an interface that should not be considered the main interface for the node. From what I found so far, Ohai references the order of the routes to determine which interface IP to select…?

Thanks,
George


#2

FWIW, the logic used to determine the automatic attribute ipaddress is
located here:

We’ve created custom ohai plugins for systems needing an ipaddress
override, and use the ohai cookbook
(https://github.com/opscode-cookbooks/ohai) to deploy them. Not sure if
I’d classify it as straightforward (was fairly daunting for me while I
was learning Chef), but it’s the only way that I currently know of to
deal with automatic attributes.

On 05/06/2015 05:27 PM, Vauter, George wrote:

Has anyone found a straightforward way to force Ohai to use a specific interface’s IP address as the “main” ip address for the Chef node? All our server’s are multi-homed (have 2-3 interfaces). Chef is currently picking the IP of an interface that should not be considered the main interface for the node. From what I found so far, Ohai references the order of the routes to determine which interface IP to select…?

Thanks,
George


#3

Hi,

I have achieved this before by changing the default route in the IP table
to be the main IP address. Obviously not very helpful unless this is
actually how you want your machines configured.

Regards,
Christine

On Thu, May 7, 2015 at 11:54 AM, Troy Ready troy.ready@gmail.com wrote:

FWIW, the logic used to determine the automatic attribute ipaddress is
located here:
https://github.com/chef/ohai/blob/master/lib/ohai/plugins/network.rb

We’ve created custom ohai plugins for systems needing an ipaddress
override, and use the ohai cookbook
(https://github.com/opscode-cookbooks/ohai) to deploy them. Not sure if
I’d classify it as straightforward (was fairly daunting for me while I
was learning Chef), but it’s the only way that I currently know of to
deal with automatic attributes.

On 05/06/2015 05:27 PM, Vauter, George wrote:

Has anyone found a straightforward way to force Ohai to use a specific
interface’s IP address as the “main” ip address for the Chef node? All our
server’s are multi-homed (have 2-3 interfaces). Chef is currently picking
the IP of an interface that should not be considered the main interface for
the node. From what I found so far, Ohai references the order of the
routes to determine which interface IP to select…?

Thanks,
George


#4

Thanks Christine - that would definitely be a simple approach but unfortunately we can’t modify our default route.

@Troy R - thanks for the plugin and cookbook - seems like a good solution.

Thanks,
George
On May 7, 2015, at 1:37 PM, Christine Draper <christine_draper@thirdwaveinsights.commailto:christine_draper@thirdwaveinsights.com> wrote:

Hi,

I have achieved this before by changing the default route in the IP table to be the main IP address. Obviously not very helpful unless this is actually how you want your machines configured.

Regards,
Christine

On Thu, May 7, 2015 at 11:54 AM, Troy Ready <troy.ready@gmail.commailto:troy.ready@gmail.com> wrote:
FWIW, the logic used to determine the automatic attribute ipaddress is
located here:
https://github.com/chef/ohai/blob/master/lib/ohai/plugins/network.rb

We’ve created custom ohai plugins for systems needing an ipaddress
override, and use the ohai cookbook
(https://github.com/opscode-cookbooks/ohai) to deploy them. Not sure if
I’d classify it as straightforward (was fairly daunting for me while I
was learning Chef), but it’s the only way that I currently know of to
deal with automatic attributes.

On 05/06/2015 05:27 PM, Vauter, George wrote:

Has anyone found a straightforward way to force Ohai to use a specific interface’s IP address as the “main” ip address for the Chef node? All our server’s are multi-homed (have 2-3 interfaces). Chef is currently picking the IP of an interface that should not be considered the main interface for the node. From what I found so far, Ohai references the order of the routes to determine which interface IP to select…?

Thanks,
George