Important Pod Count
Number of Leaf Switches
let devices = merge(`analytics:/tags/labels/devices/pod_name/value/<_POD_NAME>/elements`)
let devicesInCPOD1 = merge(`analytics:/tags/labels/devices/pod_name/value/CPOD1/elements`)
if str(_POD_NAME) == "" {
let leafs = length(devicesInCPOD1) - 2
} else {
let leafs = length(devices) - 2
}
leafs
Number of VTEPs
let devices = merge(`analytics:/tags/labels/devices/pod_name/value/<_POD_NAME>/elements`)
let devicesInCPOD1 = merge(`analytics:/tags/labels/devices/pod_name/value/CPOD1/elements`)
if str(_POD_NAME) == "" {
let vteps = (length(devicesInCPOD1) - 2 ) / 2
} else {
if strContains(str(_POD_NAME), "SPOD") {
let vteps = ((length(devices) - 3) / 2)+1
} else {
let vteps = (length(devices) - 2) / 2
}
}
vteps
Total VLAN Count
let devices = merge(`analytics:/tags/labels/devices/pod_name/value/<_POD_NAME>/elements`)
let devicesInCPOD1 = merge(`analytics:/tags/labels/devices/pod_name/value/CPOD1/elements`)
if str(_POD_NAME) == "" {
let vlanConfig = `*:/Sysdb/bridging/config/vlanConfig` | where(dictHasKey(devicesInCPOD1, complexKey("{\"deviceID\": \""+_key+"\"}"))) | map(merge(_value))
} else {
let vlanConfig = `*:/Sysdb/bridging/config/vlanConfig` | where(dictHasKey(devices, complexKey("{\"deviceID\": \""+_key+"\"}"))) | map(merge(_value))
}
let numberVlan = newDict()
for deviceKey, deviceValue in vlanConfig {
for vlanKey, vlanValue in deviceValue{
numberVlan[vlanKey["value"]] = 1
}
}
length(numberVlan)
Max Size of the Floodlist
let devices = merge(`analytics:/tags/labels/devices/pod_name/value/<_POD_NAME>/elements`)
let devicesInCPOD1 = merge(`analytics:/tags/labels/devices/pod_name/value/CPOD1/elements`)
if str(_POD_NAME) == "" {
let vteps = (length(devicesCPOD1) -2) / 2
let vlanConfig = `*:/Sysdb/bridging/config/vlanConfig` | where(dictHasKey(devicesInCPOD1, complexKey("{\"deviceID\": \""+_key+"\"}"))) | map(merge(_value))
} else {
if strContains(str(_POD_NAME), "SPOD") {
let vteps = ((length(devices) - 3) / 2)+1
let vlanConfig = `*:/Sysdb/bridging/config/vlanConfig` | where(dictHasKey(devices, complexKey("{\"deviceID\": \""+_key+"\"}"))) | map(merge(_value))
} else {
let vteps = (length(devices) -2) / 2
let vlanConfig = `*:/Sysdb/bridging/config/vlanConfig` | where(dictHasKey(devices, complexKey("{\"deviceID\": \""+_key+"\"}"))) | map(merge(_value))
}
}
let numberVlan = newDict()
for deviceKey, deviceValue in vlanConfig {
for vlanKey, vlanValue in deviceValue{
numberVlan[vlanKey["value"]] = 1
}
}
let vlans = length(numberVlan)
vteps*vlans