Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 03ffe87f authored by BERARD Benjamin's avatar BERARD Benjamin
Browse files

[servan/fpga] Add fpga description

parent 6ae79ec5
No related branches found
No related tags found
1 merge request!359[servan/fpga] Add fpga description
Showing
with 504 additions and 21 deletions
......@@ -37,6 +37,44 @@
"kavlan-7": "10.4.196.1",
"kavlan-8": "10.5.4.1",
"kavlan-9": "10.5.68.1"
},
"fpga0": {
"kavlan-1": "192.168.196.11",
"kavlan-11": "10.7.227.11",
"kavlan-12": "10.11.227.11",
"kavlan-13": "10.15.227.11",
"kavlan-14": "10.19.227.11",
"kavlan-16": "10.27.227.11",
"kavlan-18": "10.35.227.11",
"kavlan-2": "192.168.212.11",
"kavlan-20": "10.43.227.11",
"kavlan-21": "10.47.227.11",
"kavlan-3": "192.168.228.11",
"kavlan-4": "10.4.4.11",
"kavlan-5": "10.4.68.11",
"kavlan-6": "10.4.132.11",
"kavlan-7": "10.4.196.11",
"kavlan-8": "10.5.4.11",
"kavlan-9": "10.5.68.11"
},
"fpga1": {
"kavlan-1": "192.168.196.21",
"kavlan-11": "10.7.227.21",
"kavlan-12": "10.11.227.21",
"kavlan-13": "10.15.227.21",
"kavlan-14": "10.19.227.21",
"kavlan-16": "10.27.227.21",
"kavlan-18": "10.35.227.21",
"kavlan-2": "192.168.212.21",
"kavlan-20": "10.43.227.21",
"kavlan-21": "10.47.227.21",
"kavlan-3": "192.168.228.21",
"kavlan-4": "10.4.4.21",
"kavlan-5": "10.4.68.21",
"kavlan-6": "10.4.132.21",
"kavlan-7": "10.4.196.21",
"kavlan-8": "10.5.4.21",
"kavlan-9": "10.5.68.21"
}
},
"kavlan6": {
......@@ -58,6 +96,44 @@
"kavlan-7": "2001:660:4406:193:8::1",
"kavlan-8": "2001:660:4406:194:8::1",
"kavlan-9": "2001:660:4406:195:8::1"
},
"fpga0": {
"kavlan-1": "2001:660:4406:180:8:1:0:1",
"kavlan-11": "2001:660:4406:1a0:108:1:0:1",
"kavlan-12": "2001:660:4406:2a0:108:1:0:1",
"kavlan-13": "2001:660:4406:4a0:108:1:0:1",
"kavlan-14": "2001:660:4406:5a0:108:1:0:1",
"kavlan-16": "2001:660:4406:7a0:108:1:0:1",
"kavlan-18": "2001:660:4406:8a0:108:1:0:1",
"kavlan-2": "2001:660:4406:181:8:1:0:1",
"kavlan-20": "2001:660:4406:3a0:108:1:0:1",
"kavlan-21": "2001:660:4406:6a0:108:1:0:1",
"kavlan-3": "2001:660:4406:182:8:1:0:1",
"kavlan-4": "2001:660:4406:190:8:1:0:1",
"kavlan-5": "2001:660:4406:191:8:1:0:1",
"kavlan-6": "2001:660:4406:192:8:1:0:1",
"kavlan-7": "2001:660:4406:193:8:1:0:1",
"kavlan-8": "2001:660:4406:194:8:1:0:1",
"kavlan-9": "2001:660:4406:195:8:1:0:1"
},
"fpga1": {
"kavlan-1": "2001:660:4406:180:8:2:0:1",
"kavlan-11": "2001:660:4406:1a0:108:2:0:1",
"kavlan-12": "2001:660:4406:2a0:108:2:0:1",
"kavlan-13": "2001:660:4406:4a0:108:2:0:1",
"kavlan-14": "2001:660:4406:5a0:108:2:0:1",
"kavlan-16": "2001:660:4406:7a0:108:2:0:1",
"kavlan-18": "2001:660:4406:8a0:108:2:0:1",
"kavlan-2": "2001:660:4406:181:8:2:0:1",
"kavlan-20": "2001:660:4406:3a0:108:2:0:1",
"kavlan-21": "2001:660:4406:6a0:108:2:0:1",
"kavlan-3": "2001:660:4406:182:8:2:0:1",
"kavlan-4": "2001:660:4406:190:8:2:0:1",
"kavlan-5": "2001:660:4406:191:8:2:0:1",
"kavlan-6": "2001:660:4406:192:8:2:0:1",
"kavlan-7": "2001:660:4406:193:8:2:0:1",
"kavlan-8": "2001:660:4406:194:8:2:0:1",
"kavlan-9": "2001:660:4406:195:8:2:0:1"
}
},
"main_memory": {
......@@ -197,6 +273,36 @@
"mountable": false,
"mounted": false,
"network_address": "servan-1-bmc.grenoble.grid5000.fr"
},
{
"device": "fpga0",
"enabled": true,
"interface": "Ethernet",
"ip": "172.16.23.11",
"ip6": "2001:660:4406:100:8:1:0:1",
"kavlan": true,
"mac": "00:0a:35:06:4a:b8",
"management": false,
"mountable": true,
"mounted": false,
"network_address": "servan-1-fpga0.grenoble.grid5000.fr",
"switch": "gw",
"switch_port": "ethernet1/1/97"
},
{
"device": "fpga1",
"enabled": true,
"interface": "Ethernet",
"ip": "172.16.23.21",
"ip6": "2001:660:4406:100:8:2:0:1",
"kavlan": true,
"mac": "00:0a:35:06:4a:b9",
"management": false,
"mountable": true,
"mounted": false,
"network_address": "servan-1-fpga1.grenoble.grid5000.fr",
"switch": "gw",
"switch_port": "ethernet1/1/98"
}
],
"operating_system": {
......
......@@ -37,6 +37,44 @@
"kavlan-7": "10.4.196.2",
"kavlan-8": "10.5.4.2",
"kavlan-9": "10.5.68.2"
},
"fpga0": {
"kavlan-1": "192.168.196.12",
"kavlan-11": "10.7.227.12",
"kavlan-12": "10.11.227.12",
"kavlan-13": "10.15.227.12",
"kavlan-14": "10.19.227.12",
"kavlan-16": "10.27.227.12",
"kavlan-18": "10.35.227.12",
"kavlan-2": "192.168.212.12",
"kavlan-20": "10.43.227.12",
"kavlan-21": "10.47.227.12",
"kavlan-3": "192.168.228.12",
"kavlan-4": "10.4.4.12",
"kavlan-5": "10.4.68.12",
"kavlan-6": "10.4.132.12",
"kavlan-7": "10.4.196.12",
"kavlan-8": "10.5.4.12",
"kavlan-9": "10.5.68.12"
},
"fpga1": {
"kavlan-1": "192.168.196.22",
"kavlan-11": "10.7.227.22",
"kavlan-12": "10.11.227.22",
"kavlan-13": "10.15.227.22",
"kavlan-14": "10.19.227.22",
"kavlan-16": "10.27.227.22",
"kavlan-18": "10.35.227.22",
"kavlan-2": "192.168.212.22",
"kavlan-20": "10.43.227.22",
"kavlan-21": "10.47.227.22",
"kavlan-3": "192.168.228.22",
"kavlan-4": "10.4.4.22",
"kavlan-5": "10.4.68.22",
"kavlan-6": "10.4.132.22",
"kavlan-7": "10.4.196.22",
"kavlan-8": "10.5.4.22",
"kavlan-9": "10.5.68.22"
}
},
"kavlan6": {
......@@ -58,6 +96,44 @@
"kavlan-7": "2001:660:4406:193:8::2",
"kavlan-8": "2001:660:4406:194:8::2",
"kavlan-9": "2001:660:4406:195:8::2"
},
"fpga0": {
"kavlan-1": "2001:660:4406:180:8:1:0:2",
"kavlan-11": "2001:660:4406:1a0:108:1:0:2",
"kavlan-12": "2001:660:4406:2a0:108:1:0:2",
"kavlan-13": "2001:660:4406:4a0:108:1:0:2",
"kavlan-14": "2001:660:4406:5a0:108:1:0:2",
"kavlan-16": "2001:660:4406:7a0:108:1:0:2",
"kavlan-18": "2001:660:4406:8a0:108:1:0:2",
"kavlan-2": "2001:660:4406:181:8:1:0:2",
"kavlan-20": "2001:660:4406:3a0:108:1:0:2",
"kavlan-21": "2001:660:4406:6a0:108:1:0:2",
"kavlan-3": "2001:660:4406:182:8:1:0:2",
"kavlan-4": "2001:660:4406:190:8:1:0:2",
"kavlan-5": "2001:660:4406:191:8:1:0:2",
"kavlan-6": "2001:660:4406:192:8:1:0:2",
"kavlan-7": "2001:660:4406:193:8:1:0:2",
"kavlan-8": "2001:660:4406:194:8:1:0:2",
"kavlan-9": "2001:660:4406:195:8:1:0:2"
},
"fpga1": {
"kavlan-1": "2001:660:4406:180:8:2:0:2",
"kavlan-11": "2001:660:4406:1a0:108:2:0:2",
"kavlan-12": "2001:660:4406:2a0:108:2:0:2",
"kavlan-13": "2001:660:4406:4a0:108:2:0:2",
"kavlan-14": "2001:660:4406:5a0:108:2:0:2",
"kavlan-16": "2001:660:4406:7a0:108:2:0:2",
"kavlan-18": "2001:660:4406:8a0:108:2:0:2",
"kavlan-2": "2001:660:4406:181:8:2:0:2",
"kavlan-20": "2001:660:4406:3a0:108:2:0:2",
"kavlan-21": "2001:660:4406:6a0:108:2:0:2",
"kavlan-3": "2001:660:4406:182:8:2:0:2",
"kavlan-4": "2001:660:4406:190:8:2:0:2",
"kavlan-5": "2001:660:4406:191:8:2:0:2",
"kavlan-6": "2001:660:4406:192:8:2:0:2",
"kavlan-7": "2001:660:4406:193:8:2:0:2",
"kavlan-8": "2001:660:4406:194:8:2:0:2",
"kavlan-9": "2001:660:4406:195:8:2:0:2"
}
},
"main_memory": {
......@@ -197,6 +273,36 @@
"mountable": false,
"mounted": false,
"network_address": "servan-2-bmc.grenoble.grid5000.fr"
},
{
"device": "fpga0",
"enabled": true,
"interface": "Ethernet",
"ip": "172.16.23.12",
"ip6": "2001:660:4406:100:8:1:0:2",
"kavlan": true,
"mac": "00:0a:35:06:4a:dc",
"management": false,
"mountable": true,
"mounted": false,
"network_address": "servan-2-fpga0.grenoble.grid5000.fr",
"switch": "gw",
"switch_port": "ethernet1/1/99"
},
{
"device": "fpga1",
"enabled": true,
"interface": "Ethernet",
"ip": "172.16.23.22",
"ip6": "2001:660:4406:100:8:2:0:2",
"kavlan": true,
"mac": "00:0a:35:06:4a:dd",
"management": false,
"mountable": true,
"mounted": false,
"network_address": "servan-2-fpga1.grenoble.grid5000.fr",
"switch": "gw",
"switch_port": "ethernet1/1/100"
}
],
"operating_system": {
......
......@@ -336,6 +336,182 @@
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Input byte counter for the network device port",
"labels": {
"interface": "fpga0"
},
"name": "network_ifacein_bytes_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Output byte counter for the network device port",
"labels": {
"interface": "fpga0"
},
"name": "network_ifaceout_bytes_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Input packet counter for the network device port",
"labels": {
"interface": "fpga0"
},
"name": "network_ifacein_packets_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Output packet counter for the network device port",
"labels": {
"interface": "fpga0"
},
"name": "network_ifaceout_packets_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Input counter of discarded packets for the network device port",
"labels": {
"interface": "fpga0"
},
"name": "network_ifacein_packets_discard_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Output counter of discarded packets for the network device port",
"labels": {
"interface": "fpga0"
},
"name": "network_ifaceout_packets_discard_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Input counter of packet errors for the network device port",
"labels": {
"interface": "fpga0"
},
"name": "network_ifacein_packets_error_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Output counter of packet errors for the network device port",
"labels": {
"interface": "fpga0"
},
"name": "network_ifaceout_packets_error_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Input byte counter for the network device port",
"labels": {
"interface": "fpga1"
},
"name": "network_ifacein_bytes_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Output byte counter for the network device port",
"labels": {
"interface": "fpga1"
},
"name": "network_ifaceout_bytes_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Input packet counter for the network device port",
"labels": {
"interface": "fpga1"
},
"name": "network_ifacein_packets_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Output packet counter for the network device port",
"labels": {
"interface": "fpga1"
},
"name": "network_ifaceout_packets_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Input counter of discarded packets for the network device port",
"labels": {
"interface": "fpga1"
},
"name": "network_ifacein_packets_discard_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Output counter of discarded packets for the network device port",
"labels": {
"interface": "fpga1"
},
"name": "network_ifaceout_packets_discard_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Input counter of packet errors for the network device port",
"labels": {
"interface": "fpga1"
},
"name": "network_ifacein_packets_error_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
},
{
"description": "Output counter of packet errors for the network device port",
"labels": {
"interface": "fpga1"
},
"name": "network_ifaceout_packets_error_total",
"period": 15000,
"source": {
"protocol": "network_equipment"
}
}
],
"model": "Dell PowerEdge R7525",
......
......@@ -494,6 +494,38 @@
"kind": "backbone",
"snmp_name": "ethernet1/1/96:1",
"uid": "renater-grenoble"
},
{
"kavlan_pattern": "ethernet1/1/%PORT%",
"kind": "node",
"port": "fpga0",
"rate": 100000000000,
"snmp_name": "ethernet1/1/97",
"uid": "servan-1"
},
{
"kavlan_pattern": "ethernet1/1/%PORT%",
"kind": "node",
"port": "fpga1",
"rate": 100000000000,
"snmp_name": "ethernet1/1/98",
"uid": "servan-1"
},
{
"kavlan_pattern": "ethernet1/1/%PORT%",
"kind": "node",
"port": "fpga0",
"rate": 100000000000,
"snmp_name": "ethernet1/1/99",
"uid": "servan-2"
},
{
"kavlan_pattern": "ethernet1/1/%PORT%",
"kind": "node",
"port": "fpga1",
"rate": 100000000000,
"snmp_name": "ethernet1/1/100",
"uid": "servan-2"
}
],
"rate": 10000000000,
......
......@@ -15,6 +15,8 @@ ipv4:
grenoble dahu eth0 0 0 4 0
grenoble troll eth0 0 0 6 0
grenoble servan eth0 0 0 7 0
grenoble servan fpga0 0 0 7 10
grenoble servan fpga1 0 0 7 20
grenoble drac eth0 0 0 8 0
lille chifflot eth0 0 0 4 0
lille chifflot eth1 0 0 4 100
......
......@@ -39,6 +39,20 @@ nodes:
enabled: false
mountable: false
mounted: false
fpga0:
interface: Ethernet
enabled: true
management: false
mountable: true
mounted: false
kavlan: true
fpga1:
interface: Ethernet
management: false
enabled: true
mountable: true
mounted: false
kavlan: true
storage_devices:
pci-0000:c3:00.0-nvme-1:
interface: NVME
......@@ -46,4 +60,16 @@ nodes:
pci-0000:c4:00.0-nvme-1:
interface: NVME
id: disk1
servan-1:
network_adapters:
fpga0:
mac: 00:0A:35:06:4A:B8
fpga1:
mac: 00:0A:35:06:4A:B9
servan-2:
network_adapters:
fpga0:
mac: 00:0A:35:06:4A:DC
fpga1:
mac: 00:0A:35:06:4A:DD
......@@ -240,6 +240,26 @@ gw:
96:
uid: renater-grenoble
kind: backbone
97:
uid: servan-1-fpga0
snmp_pattern: "ethernet1/1/%PORT%"
kavlan_pattern: "ethernet1/1/%PORT%"
rate: 100000000000
98:
uid: servan-1-fpga1
snmp_pattern: "ethernet1/1/%PORT%"
kavlan_pattern: "ethernet1/1/%PORT%"
rate: 100000000000
99:
uid: servan-2-fpga0
snmp_pattern: "ethernet1/1/%PORT%"
kavlan_pattern: "ethernet1/1/%PORT%"
rate: 100000000000
100:
uid: servan-2-fpga1
snmp_pattern: "ethernet1/1/%PORT%"
kavlan_pattern: "ethernet1/1/%PORT%"
rate: 100000000000
channels:
port-channel10:
uid: dignfs
......
......@@ -66,6 +66,8 @@ vlans:
local grenoble troll eth0 0 0 2 0
local grenoble drac eth0 0 0 3 0
local grenoble servan eth0 0 0 4 0
local grenoble servan fpga0 0 0 4 10
local grenoble servan fpga1 0 0 4 20
local lille chetemi eth0 0 0 0 0
local lille chetemi eth1 0 0 1 0
local lille chifflet eth0 0 0 2 0
......@@ -170,6 +172,8 @@ vlans:
global rennes paranoia eth1 0 0 34 100
global rennes paranoia eth2 0 0 34 200
global grenoble servan eth0 0 0 35 0
global grenoble servan fpga0 0 0 35 10
global grenoble servan fpga1 0 0 35 20
global sophia uvb eth0 0 0 40 0
global nancy gruss eth2 0 0 41 0
global luxembourg petitprince eth0 0 0 46 0
......@@ -182,6 +186,8 @@ vlans:
routed grenoble troll eth0 0 4 2 0
routed grenoble drac eth0 0 4 3 0
routed grenoble servan eth0 0 4 4 0
routed grenoble servan fpga0 0 4 4 10
routed grenoble servan fpga1 0 4 4 20
routed lille chetemi eth0 0 8 0 0
routed lille chetemi eth1 0 8 1 0
routed lille chifflet eth0 0 8 2 0
......
......@@ -267,7 +267,7 @@ def get_node_records(cluster_uid, node_uid, network_adapters)
end
end
#Handle interface aliases
#Handle interface aliases
if (net_hash["alias"])
net_hash["alias"].each { |cname|
cname_record = DNS::Zone::RR::CNAME.new
......@@ -301,10 +301,12 @@ def get_node_kavlan_records(_cluster_uid, node_uid, network_adapters, kavlan_ada
new_record.address = net_hash['ip']
new_record.label = "#{node_uid}-#{net_uid}" #sol-23-eth0-kavlan-1
records << new_record
cname_record = DNS::Zone::RR::CNAME.new
cname_record.label = "#{node_uid}-#{net_hash['pname']}"
cname_record.domainname = "#{node_uid}-#{net_uid}" #sol-23-eno1-kavlan-1
records << cname_record
if !/^fpga[0-9]$/.match(net_uid_eth)
cname_record = DNS::Zone::RR::CNAME.new
cname_record.label = "#{node_uid}-#{net_hash['pname']}"
cname_record.domainname = "#{node_uid}-#{net_uid}" #sol-23-eno1-kavlan-1
records << cname_record
end
end
if net_hash['ip6']
new_record_ipv6 = DNS::Zone::RR::AAAA.new
......@@ -644,15 +646,23 @@ def fetch_site_records(site, type)
node.fetch(kavlan_kind).each { |net_uid, net_hash|
net_hash.each { |kavlan_net_uid, ip|
kavlan_adapters["#{net_uid}-#{kavlan_net_uid}"] ||= {}
kavlan_adapters["#{net_uid}-#{kavlan_net_uid}"]['mounted'] = node['network_adapters'].select { |n|
n['device'] == net_uid
}[0]['mounted']
kavlan_adapters["#{net_uid}-#{kavlan_net_uid}"]['pname'] = node['network_adapters'].select { |n|
n['device'] == net_uid
}.first['name'] + '-' + kavlan_net_uid
if kavlan_kind == 'kavlan6'
kavlan_adapters["#{net_uid}-#{kavlan_net_uid}"]['ip6'] = ip
else
if /^eth[0-9]$/.match(net_uid)
kavlan_adapters["#{net_uid}-#{kavlan_net_uid}"]['mounted'] = node['network_adapters'].select { |n|
n['device'] == net_uid
}[0]['mounted']
kavlan_adapters["#{net_uid}-#{kavlan_net_uid}"]['pname'] = node['network_adapters'].select { |n|
n['device'] == net_uid
}.first['name'] + '-' + kavlan_net_uid
if kavlan_kind == 'kavlan6'
kavlan_adapters["#{net_uid}-#{kavlan_net_uid}"]['ip6'] = ip
else
kavlan_adapters["#{net_uid}-#{kavlan_net_uid}"]['ip'] = ip
end
end
if /^fpga[0-9]$/.match(net_uid)
kavlan_adapters["#{net_uid}-#{kavlan_net_uid}"]['mountable'] = node['network_adapters'].select { |n|
n['device'] == net_uid
}[0]['moutable']
kavlan_adapters["#{net_uid}-#{kavlan_net_uid}"]['ip'] = ip
end
}
......
......@@ -4,7 +4,7 @@ def get_network_info(node_hash, network_interface)
network_infos = []
if network_interface == "eth" then
adapters = node_network_adapters.select { |i| i['device'] =~ /eth/ and (i['mountable'] or i['mounted'])}
adapters = node_network_adapters.select { |i| i['device'] =~ /(eth|fpga)/ and (i['mountable'] or i['mounted'])}
if adapters.length > 0
if not adapters[0]['mounted']
raise "#{node_hash['uid']}: inconsistency: this code assumes first mountable ethernet adapter should be mounted: #{node_network_adapters}"
......@@ -90,8 +90,8 @@ def generate_puppet_dhcpg5k(options)
"filename" => "cluster-" + cluster_uid + ".conf",
"site_uid" => site_uid,
"nodes" => cluster_hash.fetch('nodes'),
"network_adapters" => ["eth", "bmc", "mic0"],
"optional_network_adapters" => ["mic0"]
"network_adapters" => ["eth", "bmc", "mic0", "fpga0", "fpga1"],
"optional_network_adapters" => ["mic0"],
}, options)
}
......
......@@ -16,7 +16,7 @@
ifinfos = get_network_info(node, network_interface)
ifinfos.each do |h|
case network_interface
when 'bmc', 'adm', 'mic0'
when 'bmc', 'adm', 'mic0', 'fpga0', 'fpga1'
uid_net = node_uid + '-' + network_interface
else
uid_net = h['name']
......@@ -60,4 +60,4 @@ group {
<% } %>
}
<% end %>
<% } %>
<% } %>
\ No newline at end of file
......@@ -136,8 +136,7 @@ def generate_reference_api
node["storage_devices"] = node["storage_devices"].sort_by{ |_sd, v| v['id'] }.map { |a| a[1] }
node["network_adapters"].each { |key, _hash| node["network_adapters"][key]["device"] = key; } # Add "device: ethX" within the hash
node["network_adapters"] = node["network_adapters"].sort_by_array(["eth0", "eth1", "eth2", "eth3", "eth4", "eth5", "eth6", "ib0.8100", "ib0", "ib1", "ib2", "ib3", "ib4", "ib5", "ib6", "ib7", "ibs1","bmc", "eno1", "eno2", "eno1np0", "eno2np1", "ens4f0", "ens4f1", "ens5f0", "ens5f1"]).values
node["network_adapters"] = node["network_adapters"].sort_by_array(["eth0", "eth1", "eth2", "eth3", "eth4", "eth5", "eth6", "ib0.8100", "ib0", "ib1", "ib2", "ib3", "ib4", "ib5", "ib6", "ib7", "ibs1","bmc", "eno1", "eno2", "eno1np0", "eno2np1", "ens4f0", "ens4f1", "ens5f0", "ens5f1", "fpga0", "fpga1"]).values
node["memory_devices"].each { |key, _hash| node["memory_devices"][key]["device"] = key; } # Add "device: dimm_a1" within the hash
node["memory_devices"] = node["memory_devices"].sort_by { |d, _|
[d.gsub(/dimm_(\d+)/, '\1').to_i,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment