From d363ec8dba3f46f1f63a469705268c3a7d763c6a Mon Sep 17 00:00:00 2001 From: Tom Hughes Date: Fri, 29 May 2020 17:21:01 +0100 Subject: [PATCH] Bond interfaces on pummelzacken --- cookbooks/networking/recipes/default.rb | 12 ++++++++---- roles/pummelzacken.rb | 10 ++++++++-- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/cookbooks/networking/recipes/default.rb b/cookbooks/networking/recipes/default.rb index 6648998f0..5c73c5cc3 100644 --- a/cookbooks/networking/recipes/default.rb +++ b/cookbooks/networking/recipes/default.rb @@ -48,10 +48,12 @@ node[:networking][:interfaces].each do |name, interface| node.normal[:networking][:interfaces][name][:zone] = role[:zone] end - prefix = node[:networking][:interfaces][name][:prefix] + if interface[:address] + prefix = node[:networking][:interfaces][name][:prefix] - node.normal[:networking][:interfaces][name][:netmask] = (~IPAddr.new(interface[:address]).mask(0)).mask(prefix) - node.normal[:networking][:interfaces][name][:network] = IPAddr.new(interface[:address]).mask(prefix) + node.normal[:networking][:interfaces][name][:netmask] = (~IPAddr.new(interface[:address]).mask(0)).mask(prefix) + node.normal[:networking][:interfaces][name][:network] = IPAddr.new(interface[:address]).mask(prefix) + end interface = node[:networking][:interfaces][name] @@ -77,7 +79,9 @@ node[:networking][:interfaces].each do |name, interface| } end - deviceplan["addresses"].push("#{interface[:address]}/#{prefix}") + if interface[:address] + deviceplan["addresses"].push("#{interface[:address]}/#{prefix}") + end if interface[:mtu] deviceplan["mtu"] = interface[:mtu] diff --git a/roles/pummelzacken.rb b/roles/pummelzacken.rb index 97f2af508..7b346bf6f 100644 --- a/roles/pummelzacken.rb +++ b/roles/pummelzacken.rb @@ -4,14 +4,20 @@ description "Master role applied to pummelzacken" default_attributes( :networking => { :interfaces => { + :bond => { + :interface => "bond0", + :bond => { + :slaves => %w[em1 p5p1] + } + }, :internal_ipv4 => { - :interface => "em1.2801", + :interface => "bond0.2801", :role => :internal, :family => :inet, :address => "10.0.0.20" }, :external_ipv4 => { - :interface => "em1.2800", + :interface => "bond0.2800", :role => :external, :family => :inet, :address => "193.60.236.18" -- 2.43.2