Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
181 changes: 66 additions & 115 deletions hieradata/node/perfsonar1.ls.lsst.org.yaml
Original file line number Diff line number Diff line change
@@ -1,117 +1,68 @@
---
profile::core::nm_dispatch::interfaces:
nm::connections:
em1:
- "/sbin/ethtool --set-ring ${DEV} rx 2047 tx 511"
p2p1:
- "/sbin/ethtool --set-ring ${DEV} rx 4096 tx 4096"
p2p2:
- "/sbin/ethtool --set-ring ${DEV} rx 4096 tx 4096"

network::interfaces_hash:
p2p1:
bootproto: "none"
onboot: "yes"
type: "Ethernet"
mtu: "9000"
p2p2:
bootproto: "none"
onboot: "yes"
type: "Ethernet"
mtu: "9000"
p2p1.360: # lhn owamp
bootproto: "none"
onboot: "yes"
vlan: "yes"
type: "vlan"
ipaddress: "139.229.140.135"
netmask: "255.255.255.254"
nozeroconf: "yes"
mtu: "9000"
p2p1.726:
bootproto: "none"
onboot: "yes"
vlan: "yes"
type: "vlan"
ipaddress: "10.7.26.2"
netmask: "255.255.255.0"
nozeroconf: "yes"
mtu: "9000"
p2p1.728:
bootproto: "none"
onboot: "yes"
vlan: "yes"
type: "vlan"
ipaddress: "10.7.28.1"
netmask: "255.255.255.0"
nozeroconf: "yes"
mtu: "9000"
p2p2.370: # lhn perf
bootproto: "none"
onboot: "yes"
vlan: "yes"
type: "vlan"
ipaddress: "139.229.140.137"
netmask: "255.255.255.254"
nozeroconf: "yes"
mtu: "9000"
p2p2.727:
bootproto: "none"
onboot: "yes"
vlan: "yes"
type: "vlan"
ipaddress: "10.7.27.2"
netmask: "255.255.255.0"
nozeroconf: "yes"
mtu: "9000"
p2p2.729:
bootproto: "none"
onboot: "yes"
vlan: "yes"
type: "vlan"
ipaddress: "10.7.29.1"
netmask: "255.255.255.0"
nozeroconf: "yes"
mtu: "9000"

network::hostname: "%{facts.networking.fqdn}"
network::mroutes_hash:
p2p1.360: # owamp
routes:
"139.229.140.134/31": "p2p1.360"
"139.229.140.0/22": &via "139.229.140.134"
"139.229.144.248/32": *via
"10.128.0.0/20": *via
"10.125.0.0/20": *via
"198.17.196.0/24": *via # approximated
"198.32.252.39/32": *via
"198.32.252.192/31": *via # miami
"198.32.252.208/31": *via
"198.32.252.210/31": *via
"198.32.252.216/31": *via
"198.32.252.218/31": *via
"198.32.252.232/31": *via
"198.32.252.234/31": *via
"199.36.153.8/30": *via
"134.79.235.226/32": *via # SLAC IT-3892
"134.79.235.242/32": *via # SLAC IT-3892
"198.124.226.194/32": *via # es.net IT-5332
"198.124.226.198/32": *via # es.net IT-5332
"198.124.226.202/32": *via # es.net IT-5332
"198.124.226.206/32": *via # es.net IT-5332

p2p2.370: # iperf
routes:
"139.229.140.136/31": "p2p2.370"
"139.229.140.0/22": &via "139.229.140.136"
"139.229.144.248/32": *via
"10.128.0.0/20": *via
"10.125.0.0/20": *via
"198.17.196.0/24": *via # approximated
"198.32.252.194/31": *via # miami
"199.36.153.8/30": *via
"134.79.235.226/32": *via # SLAC IT-3892
"134.79.235.242/32": *via # SLAC IT-3892
"198.124.226.130/32": *via # es.net IT-5332
"198.124.226.134/32": *via # es.net IT-5332
"198.124.226.138/32": *via # es.net IT-5332
"198.124.226.142/32": *via # es.net IT-5332
content:
connection:
id: "eno1"
uuid: "595bfbca-06e8-462e-a265-93fcd1c05d5b"
type: "ethernet"
interface-name: "em1"
ethernet: {}
ipv4:
method: "auto"
ipv6:
method: "disabled"
proxy: {}
ethtool:
ring-rx: 2047
ring-tx: 2047
enp1s0f0:
content:
connection:
id: "enp1s0f0"
uuid: "a0cd35a7-a121-4e12-8ef2-1721f61cef4c"
type: "ethernet"
interface-name: "enp1s0f0"
ethernet:
mtu: 9000
ipv4:
address1: "139.229.140.135/31"
gateway: "139.229.140.134"
method: "manual"
never-default: "true"
route1: "139.229.140.13/32,139.229.140.134"
route2: "198.32.252.209/32,139.229.140.134"
route3: "198.124.226.130/32,139.229.140.134"
route4: "198.124.226.134/32,139.229.140.134"
route5: "198.124.226.138/32,139.229.140.134"
route6: "198.124.226.142/32,139.229.140.134"
route7: "134.73.235.226/32,139.229.140.134"
route8: "134.79.22.159/32,139.229.140.134"
ipv6:
method: "disabled"
proxy: {}
enp1s0f1:
content:
connection:
id: "enp1s0f1"
uuid: "71cd794b-c3d3-4db4-ad20-818eb84a9027"
type: "ethernet"
interface-name: "enp1s0f1"
ethernet:
mtu: 9000
ipv4:
address1: "139.229.140.137/31"
gateway: "139.229.140.136"
method: "manual"
never-default: "true"
route1: "139.229.140.15/32,139.229.140.136"
route2: "198.32.252.217/32,139.229.140.136"
route3: "198.124.226.194/32,139.229.140.136"
route4: "198.124.226.198/32,139.229.140.136"
route5: "198.124.226.202/32,139.229.140.136"
route6: "198.124.226.206/32,139.229.140.136"
route7: "134.79.235.242/32,139.229.140.136"
route8: "134.79.22.212/32,139.229.140.136"
ipv6:
method: "disabled"
proxy: {}
189 changes: 44 additions & 145 deletions spec/hosts/nodes/perfsonar1.ls.lsst.org_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@

describe 'perfsonar1.ls.lsst.org', :sitepp do
on_supported_os.each do |os, os_facts|
# XXX networking needs to be updated to support EL8+
next unless os =~ %r{centos-7-x86_64}
next unless os =~ %r{almalinux-9-x86_64}

context "on #{os}" do
let(:facts) do
Expand All @@ -28,155 +27,55 @@
it { is_expected.to compile.with_all_deps }

include_examples 'baremetal'
include_context 'with nm interface'
it { is_expected.to have_nm__connection_resource_count(3) }

it { is_expected.to contain_file('/etc/NetworkManager/dispatcher.d/50-em1').with_content(%r{rx 2047 tx 511}) }
it { is_expected.to contain_file('/etc/NetworkManager/dispatcher.d/50-p2p1').with_content(%r{.*rx 4096 tx 4096.*}) }
it { is_expected.to contain_file('/etc/NetworkManager/dispatcher.d/50-p2p2').with_content(%r{.*rx 4096 tx 4096.*}) }
context 'with eno1' do
let(:interface) { 'eno1' }

%w[p2p1 p2p2].each do |i|
it do
is_expected.to contain_network__interface(i).with(
bootproto: 'none',
onboot: 'yes',
type: 'Ethernet',
mtu: '9000'
)
end
it_behaves_like 'nm enabled interface'
it_behaves_like 'nm dhcp interface'
it_behaves_like 'nm ethernet interface'
it { expect(nm_keyfile['ethtool']['ring-rx']).to eq(2047) }

Check failure on line 39 in spec/hosts/nodes/perfsonar1.ls.lsst.org_spec.rb

View workflow job for this annotation

GitHub Actions / rake_checks

perfsonar1.ls.lsst.org on almalinux-9-x86_64 with eno1 Failure/Error: raise "nm::connection[#{interface}] not found in catalogue" if int.nil? RuntimeError: nm::connection[eno1] not found in catalogue
it { expect(nm_keyfile['ethtool']['ring-tx']).to eq(2047) }

Check failure on line 40 in spec/hosts/nodes/perfsonar1.ls.lsst.org_spec.rb

View workflow job for this annotation

GitHub Actions / rake_checks

perfsonar1.ls.lsst.org on almalinux-9-x86_64 with eno1 Failure/Error: raise "nm::connection[#{interface}] not found in catalogue" if int.nil? RuntimeError: nm::connection[eno1] not found in catalogue
end

it do
is_expected.to contain_network__interface('p2p1.360').with(
bootproto: 'none',
onboot: 'yes',
vlan: 'yes',
type: 'vlan',
ipaddress: '139.229.140.135',
netmask: '255.255.255.254',
nozeroconf: 'yes',
mtu: '9000'
)
context 'with enp1s0f0' do
let(:interface) { 'enp1s0f0' }

it_behaves_like 'nm enabled interface'
it_behaves_like 'nm manual interface'
it_behaves_like 'nm ethernet interface'
it { expect(nm_keyfile['ipv4']['address1']).to eq('139.229.140.135/31') }
it { expect(nm_keyfile['ipv4']['gateway']).to eq('139.229.140.134') }
it { expect(nm_keyfile['ethernet']['mtu']).to eq(9000) }
it { expect(nm_keyfile['ipv4']['route1']).to eq('139.229.140.13/32,139.229.140.134') }
it { expect(nm_keyfile['ipv4']['route2']).to eq('198.32.252.209/32,139.229.140.134') }
it { expect(nm_keyfile['ipv4']['route3']).to eq('198.124.226.130/32,139.229.140.134') }
it { expect(nm_keyfile['ipv4']['route4']).to eq('198.124.226.134/32,139.229.140.134') }
it { expect(nm_keyfile['ipv4']['route5']).to eq('198.124.226.138/32,139.229.140.134') }
it { expect(nm_keyfile['ipv4']['route6']).to eq('198.124.226.142/32,139.229.140.134') }
it { expect(nm_keyfile['ipv4']['route7']).to eq('134.73.235.226/32,139.229.140.134') }
it { expect(nm_keyfile['ipv4']['route8']).to eq('134.79.22.159/32,139.229.140.134') }
end

it do
is_expected.to contain_network__interface('p2p1.726').with(
bootproto: 'none',
onboot: 'yes',
vlan: 'yes',
type: 'vlan',
ipaddress: '10.7.26.2',
netmask: '255.255.255.0',
nozeroconf: 'yes',
mtu: '9000'
)
end

it do
is_expected.to contain_network__interface('p2p1.728').with(
bootproto: 'none',
onboot: 'yes',
vlan: 'yes',
type: 'vlan',
ipaddress: '10.7.28.1',
netmask: '255.255.255.0',
nozeroconf: 'yes',
mtu: '9000'
)
end

it do
is_expected.to contain_network__interface('p2p2.370').with(
bootproto: 'none',
onboot: 'yes',
vlan: 'yes',
type: 'vlan',
ipaddress: '139.229.140.137',
netmask: '255.255.255.254',
nozeroconf: 'yes',
mtu: '9000'
)
end

it do
is_expected.to contain_network__interface('p2p2.727').with(
bootproto: 'none',
onboot: 'yes',
vlan: 'yes',
type: 'vlan',
ipaddress: '10.7.27.2',
netmask: '255.255.255.0',
nozeroconf: 'yes',
mtu: '9000'
)
end

it do
is_expected.to contain_network__interface('p2p2.729').with(
bootproto: 'none',
onboot: 'yes',
vlan: 'yes',
type: 'vlan',
ipaddress: '10.7.29.1',
netmask: '255.255.255.0',
nozeroconf: 'yes',
mtu: '9000'
)
end

context 'with p2p1.360 routes' do
let(:via) { '139.229.140.134' }

it do
is_expected.to contain_network__mroute('p2p1.360').with(
routes: [
'139.229.140.134/31' => 'p2p1.360',
'139.229.140.0/22' => via,
'139.229.144.248/32' => via,
'10.128.0.0/20' => via,
'10.125.0.0/20' => via,
'198.17.196.0/24' => via,
'198.32.252.39/32' => via,
'198.32.252.192/31' => via,
'198.32.252.208/31' => via,
'198.32.252.210/31' => via,
'198.32.252.216/31' => via,
'198.32.252.218/31' => via,
'198.32.252.232/31' => via,
'198.32.252.234/31' => via,
'199.36.153.8/30' => via,
'134.79.235.226/32' => via,
'134.79.235.242/32' => via,
'198.124.226.194/32' => via,
'198.124.226.198/32' => via,
'198.124.226.202/32' => via,
'198.124.226.206/32' => via,
]
)
end
end

context 'with p2p2.370 routes' do
let(:via) { '139.229.140.136' }

it do
is_expected.to contain_network__mroute('p2p2.370').with(
routes: [
'139.229.140.136/31' => 'p2p2.370',
'139.229.140.0/22' => via,
'139.229.144.248/32' => via,
'10.128.0.0/20' => via,
'10.125.0.0/20' => via,
'198.17.196.0/24' => via,
'198.32.252.194/31' => via,
'199.36.153.8/30' => via,
'134.79.235.226/32' => via,
'134.79.235.242/32' => via,
'198.124.226.130/32' => via,
'198.124.226.134/32' => via,
'198.124.226.138/32' => via,
'198.124.226.142/32' => via,
]
)
end
context 'with enp1s0f1' do
let(:interface) { 'enp1s0f1' }

it_behaves_like 'nm enabled interface'
it_behaves_like 'nm manual interface'
it_behaves_like 'nm ethernet interface'
it { expect(nm_keyfile['ipv4']['address1']).to eq('139.229.140.137/31') }
it { expect(nm_keyfile['ipv4']['gateway']).to eq('139.229.140.136') }
it { expect(nm_keyfile['ethernet']['mtu']).to eq(9000) }
it { expect(nm_keyfile['ipv4']['route1']).to eq('139.229.140.15/32,139.229.140.136') }
it { expect(nm_keyfile['ipv4']['route2']).to eq('198.32.252.217/32,139.229.140.136') }
it { expect(nm_keyfile['ipv4']['route3']).to eq('198.124.226.194/32,139.229.140.136') }
it { expect(nm_keyfile['ipv4']['route4']).to eq('198.124.226.198/32,139.229.140.136') }
it { expect(nm_keyfile['ipv4']['route5']).to eq('198.124.226.202/32,139.229.140.136') }
it { expect(nm_keyfile['ipv4']['route6']).to eq('198.124.226.206/32,139.229.140.136') }
it { expect(nm_keyfile['ipv4']['route7']).to eq('134.79.235.242/32,139.229.140.136') }
it { expect(nm_keyfile['ipv4']['route8']).to eq('134.79.22.212/32,139.229.140.136') }
end
end # on os
end # on_supported_os
Expand Down
Loading