# Dell Switch Sensor Discovery - LibreNMS vs Towerops Comparison **Analysis Date**: 2026-02-11 **Status**: ⚠️ Significant Gaps - Network switch platforms need attention ## Executive Summary Dell sensor coverage varies dramatically by platform type: - **Dell OS10**: 100% parity (excellent coverage) - **Dell rPDU**: 100% parity (excellent coverage) - **Dell UPS**: 80% parity (missing power sensor) - **Dell OME-M**: 100% parity (excellent coverage) - **Dell Compellent**: 100% parity (excellent coverage) - **Dell PowerVault**: 20% parity (CRITICAL - missing all sensors) - **Dell PowerConnect/DNOS**: 0% parity (CRITICAL - no sensor profile) - **Dell Force10 FTOS**: 0% parity (CRITICAL - no sensor profile) - **Dell SONiC**: 0% parity (CRITICAL - detected but no sensors) - **Dell Enterprise Servers (10892)**: 0% parity (CRITICAL - no profile) **Overall Assessment**: Excellent coverage for storage and infrastructure (OS10, rPDU, OME-M, Compellent), but **network switches are severely underserved**. --- ## Platform Coverage Overview | Device Category | LibreNMS | Towerops | Gap | |-----------------|----------|----------|-----| | **OS10 Switches** | Good | Excellent | None | | **rPDU** | Good | Excellent | None | | **UPS** | Power + State | State only | Missing power | | **OME-M** | Good | Excellent | None | | **Compellent Storage** | Good | Excellent | None | | **PowerVault Storage** | Temp, Voltage, Current, Charge, State | Hardware/Serial only | **CRITICAL** | | **PowerConnect/DNOS Switches** | Temperature | None | **CRITICAL** | | **Force10 FTOS Switches** | Temperature | None | **CRITICAL** | | **SONiC Switches** | Temp, Fan, PSU State | Detected, no sensors | **CRITICAL** | | **Quanta Switches** | Temp, Fan, PSU State | Basic only | Missing sensors | | **Dell Servers (10892)** | Temp, Power, Voltage, Fan, State | None | **CRITICAL** | --- ## Detailed Platform Analysis ### 1. Dell OS10 Switches ✅ **LibreNMS Discovery:** Generic ENTITY-SENSOR-MIB support **Towerops YAML Profile (`dell-os10.yaml`):** - ✅ **Temperature**: Chassis temperature (os10ChassisTempSensorValue), Card temperature (os10CardTempSensorValue) - ✅ **State**: Fan state (os10FanTrayOperStatus), Fan tray state (os10FanTrayOperStatus), PSU state (os10PowerSupplyOperStatus) **Gap Analysis:** - ✅ **Excellent parity** - Comprehensive coverage - Uses Dell Enterprise MIB (DELLEMC-OS10-CHASSIS-MIB) - **Severity**: None --- ### 2. Dell rPDU (Rack Power Distribution Units) ✅ **Towerops YAML Profile (`dell-rpdu.yaml`):** - ✅ **Current**: Load current (apcRPMCurrent) - ✅ **Power**: Load power (apcRPMPower) - ✅ **Voltage**: Phase voltage (apcRPMVoltage) - ✅ **State**: Load state (apcRPMStatusLoad), Phase state (apcRPMStatusPhase) - ✅ **Temperature**: Ambient temperature (apcRPMTemperature) - ✅ **Humidity**: Ambient humidity (apcRPMHumidity) **Gap Analysis:** - ✅ **Excellent parity** - Very comprehensive - Uses DellrPDU-MIB - **Severity**: None --- ### 3. Dell UPS ⚠️ **LibreNMS Discovery Modules:** - `power/dell-ups.inc.php` - Physical output power consumption (OID `1.3.6.1.4.1.674.10902.2.120.2.6.0`) **Towerops YAML Profile (`dell-ups.yaml`):** - ✅ **State**: Global status (upsBaseStatus) - ✅ **Count**: Estimated runtime (upsEstimatedMinutesRemaining) - ❌ **Missing**: Power consumption sensor **Gap Analysis:** - **Minor Gap**: Missing power consumption sensor - OID needed: `1.3.6.1.4.1.674.10902.2.120.2.6.0` (physicalOutputPresentConsumption) - **Impact**: Can't track UPS load in watts - **Severity**: MEDIUM (nice to have for capacity planning) - **Fix Effort**: LOW (1 hour - add single power sensor) --- ### 4. Dell OME-M (OpenManage Enterprise Modular) ✅ **Towerops YAML Profile (`dell-ome-m.yaml`):** - ✅ **State**: Extensive state monitoring (chassis, PSU, fan, IOM, BOSS, PCIe, fabric, server) - ✅ **Temperature**: Chassis temperature sensors - ✅ **Power**: PSU power output - ✅ **Voltage**: PSU voltage **Gap Analysis:** - ✅ **Excellent parity** - Very comprehensive - Uses DELL-MM-MIB-SMIv2 - **Severity**: None --- ### 5. Dell Compellent Storage ✅ **Towerops YAML Profile (`dell-compellent.yaml`):** - ✅ **Count**: Various count sensors - ✅ **FanSpeed**: Fan RPM - ✅ **State**: Extensive state monitoring (system, controller, disk, PSU, fan, IO, cache, enclosure, UPS) - ✅ **Temperature**: Temperature sensors - ✅ **Voltage**: Voltage sensors **Gap Analysis:** - ✅ **Excellent parity** - Very comprehensive - Uses DELL-STORAGE-SC-MIB - **Severity**: None --- ### 6. Dell PowerVault Storage ❌ **LibreNMS Discovery Modules:** - `temperature/dell-powervault.inc.php` - Parses text sensor messages - `voltage/dell-powervault.inc.php` - Parses text sensor messages - `current/dell-powervault.inc.php` - Parses text sensor messages - `charge/dell-powervault.inc.php` - Parses text sensor messages (battery %) - `state/dell-powervault.inc.php` - Status parsing **LibreNMS Discovery Method:** Unique text-based parsing - Uses `FCMGMT-MIB` (OID `1.3.6.1.3.94.1.8.1.6.*`) - Parses sensor messages in format: `"Sensor Name: Value Unit"` - Temperature regex: `/^ ([0-9]+) C ([0-9]+\.[0-9]+)F$/` - Voltage regex: `/^ ([0-9]+\.[0-9]+)V$/` - Current regex: `/^ ([0-9]+\.[0-9]+)A$/` - Charge regex: `/^ ([0-9]+)%$/` **Towerops YAML Profile (`dell-powervault.yaml`):** - ✅ **Hardware**: Serial number, firmware version - ❌ **No sensor discovery** **Gap Analysis:** - **CRITICAL Gap**: Missing all sensor discovery - LibreNMS discovers 5 sensor types via text parsing - **Impact**: No temperature, voltage, current, battery, or status monitoring - **Severity**: CRITICAL (complete absence of monitoring) - **Fix Effort**: HIGH (3-4 hours - requires implementing text parsing logic in vendor module) **Implementation Note:** - Cannot use YAML-based discovery (requires parsing text messages) - Must implement in `lib/towerops/snmp/profiles/vendors/powervault.ex` - Similar pattern to Arista post-processing --- ### 7. Dell PowerConnect/DNOS Switches ❌ **LibreNMS Discovery Modules:** - `temperature/powerconnect.inc.php` - CPU temperature - OID: `1.3.6.1.4.1.674.10895.5000.2.6132.1.1.43.1.8.1.5` (FASTPATH-BOXSERVICES-PRIVATE-MIB) - Model-specific OID: `1.3.6.1.4.1.89.53.15.1.9.1` (for PC5548, PC3548, PC3548P, PC2848) **Known Models:** - PC5548 (sysObjectID: `1.3.6.1.4.1.674.10895.3031`) - PC3548 (sysObjectID: `1.3.6.1.4.1.674.10895.3017`) - PC3548P (sysObjectID: `1.3.6.1.4.1.674.10895.3019`) - PC2848 (sysObjectID: `1.3.6.1.4.1.674.10895.3028`) **Towerops Coverage:** - ✅ **OS Detection**: Various PowerConnect models detected in `dell-powerconnect.yaml` - ❌ **No sensor discovery profile exists** **Gap Analysis:** - **CRITICAL Gap**: No sensor discovery for PowerConnect switches - LibreNMS discovers CPU temperature - **Impact**: No temperature monitoring on network switches - **Severity**: CRITICAL (common enterprise switch platform) - **Fix Effort**: MEDIUM (2-3 hours - create YAML sensor profile) **OIDs Needed:** ``` CPU Temperature: 1.3.6.1.4.1.674.10895.5000.2.6132.1.1.43.1.8.1.5 Alt Temperature (specific models): 1.3.6.1.4.1.89.53.15.1.9.1 MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB Divisor: 1 ``` --- ### 8. Dell Force10 FTOS Switches ❌ **LibreNMS Discovery Modules:** **S-Series (Stack Unit):** - MIB: `F10-S-SERIES-CHASSIS-MIB` - Temperature OID: `1.3.6.1.4.1.6027.3.10.1.2.2.1.14` (chStackUnitTemp) - Model OID: `1.3.6.1.4.1.6027.3.10.1.2.2.1.3` (chStackUnitSysType) **C-Series (Card/Slot):** - MIB: `F10-C-SERIES-CHASSIS-MIB` - Temperature OID: `1.3.6.1.4.1.6027.3.8.1.2.1.1.5` (chSysCardTemp) **E-Series (Advanced):** - MIB: `F10-CHASSIS-MIB` - Upper Temp OID: `1.3.6.1.4.1.6027.3.1.1.2.3.1.8` (chSysCardUpperTemp) - Lower Temp OID: `1.3.6.1.4.1.6027.3.1.1.2.3.1.9` (chSysCardLowerTemp) **Towerops Coverage:** - ✅ **OS Detection**: `ftos.yaml` detects Force10 switches - ❌ **No sensor discovery profile exists** **Gap Analysis:** - **CRITICAL Gap**: No sensor discovery for Force10 FTOS switches - LibreNMS discovers temperature for 3 series (S/C/E) - **Impact**: No temperature monitoring on Force10 switches - **Severity**: CRITICAL (common data center switch platform) - **Fix Effort**: MEDIUM-HIGH (3-4 hours - needs 3 series variants) --- ### 9. Dell SONiC Switches ❌ **LibreNMS Discovery:** Uses Quanta/NetGear MIB **MIB:** `NETGEAR-BOXSERVICES-PRIVATE-MIB` (OID base: `1.3.6.1.4.1.4413.1.1.43.1.*`) **Sensor Types:** - **Temperature**: `1.3.6.1.4.1.4413.1.1.43.1.8.1.4` (boxServicesTempSensorState) - **Fan Speed**: `1.3.6.1.4.1.4413.1.1.43.1.6.1.4` (boxServicesFanSpeed) - **PSU State**: `1.3.6.1.4.1.4413.1.1.43.1.7.1.3` (boxServicesPowSupplyItemState) - States: 0=other, 1=not present, 2=operational, 3=failed, 4=powering, 5=no power, 6=not powering, 7=incompatible **Towerops Coverage:** - ✅ **OS Detection**: `dell-sonic.yaml` detects by sysObjectID `1.3.6.1.4.1.4413.1.2.1.2.*` - ❌ **No sensor discovery profile exists** - Note: Generic `quanta.yaml` exists but `dell-sonic.yaml` has no sensor definitions **Gap Analysis:** - **CRITICAL Gap**: OS detected but zero sensor discovery - LibreNMS discovers 3 sensor types (temp, fan, PSU state) - **Impact**: No hardware monitoring for Dell SONiC switches - **Severity**: CRITICAL (modern data center switch platform) - **Fix Effort**: MEDIUM (2-3 hours - add sensors to existing YAML) --- ### 10. Dell Enterprise Servers (iDRAC/OpenManage) ❌ **LibreNMS Discovery Modules:** - `temperature/dell.inc.php` - Temperature probes (MIB-Dell-10892) - `power/dell.inc.php` - System wattage (amperageProbeTypeIsSystemWatts) - `voltage/dell.inc.php` - Voltage probes - `fanspeed/dell.inc.php` - Cooling device RPM - `state/dell.inc.php` - CPU, memory, PSU, intrusion, storage controller/disk/battery status **MIB:** `MIB-Dell-10892` (OID base: `1.3.6.1.4.1.674.10892.*`) **OIDs:** ``` Temperature: .1.3.6.1.4.1.674.10892.1.700.20.1.6 (temperatureProbeTable) Power: .1.3.6.1.4.1.674.10892.1.600.30.1.6 (amperageProbeTable) Voltage: .1.3.6.1.4.1.674.10892.1.600.20.1.6 (voltageProbeTable) Fan Speed: .1.3.6.1.4.1.674.10892.1.700.12.1.6 (coolingDeviceTable) PSU State: .1.3.6.1.4.1.674.10892.1.600.12.1.5 (powerSupplyTable) CPU State: .1.3.6.1.4.1.674.10892.1.1100.30.1.5 (processorDeviceStatusTable) Memory State: .1.3.6.1.4.1.674.10892.1.1100.50.1.5 (memoryDeviceTable) ``` **Towerops Coverage:** - ❌ **No Dell server/iDRAC profile exists** **Gap Analysis:** - **CRITICAL Gap**: No sensor discovery for Dell enterprise servers - LibreNMS discovers 7+ sensor types - **Impact**: Cannot monitor Dell rack servers, blades, or workstations via iDRAC - **Severity**: CRITICAL (very common enterprise server platform) - **Fix Effort**: HIGH (4-6 hours - comprehensive profile with many sensor types) --- ### 11. Quanta Network Switches ⚠️ **Note:** Dell SONiC uses Quanta hardware/MIB **Towerops YAML Profile (`quanta.yaml`):** - ✅ **Basic**: Some sensor definitions exist - ⚠️ **Incomplete**: Not comprehensive compared to what's available **Gap Analysis:** - **MEDIUM Gap**: Partial coverage, needs completion - Should match SONiC sensor requirements - **Severity**: MEDIUM (affects both Quanta-branded and Dell SONiC) --- ## MIB Mapping Reference ### Dell Enterprise Servers (iDRAC/OpenManage) ``` MIB: MIB-Dell-10892 Temperature: .1.3.6.1.4.1.674.10892.1.700.20.1.6 Power: .1.3.6.1.4.1.674.10892.1.600.30.1.6 Voltage: .1.3.6.1.4.1.674.10892.1.600.20.1.6 Fans: .1.3.6.1.4.1.674.10892.1.700.12.1.6 PSU State: .1.3.6.1.4.1.674.10892.1.600.12.1.5 ``` ### PowerConnect/DNOS ``` MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB CPU Temperature: .1.3.6.1.4.1.674.10895.5000.2.6132.1.1.43.1.8.1.5 Alt Temperature: .1.3.6.1.4.1.89.53.15.1.9.1 (specific models) Divisor: 1 ``` ### Force10 FTOS S-Series ``` MIB: F10-S-SERIES-CHASSIS-MIB Temperature: .1.3.6.1.4.1.6027.3.10.1.2.2.1.14 (chStackUnitTemp) ``` ### Force10 FTOS C-Series ``` MIB: F10-C-SERIES-CHASSIS-MIB Temperature: .1.3.6.1.4.1.6027.3.8.1.2.1.1.5 (chSysCardTemp) ``` ### Force10 FTOS E-Series ``` MIB: F10-CHASSIS-MIB Upper Temp: .1.3.6.1.4.1.6027.3.1.1.2.3.1.8 (chSysCardUpperTemp) Lower Temp: .1.3.6.1.4.1.6027.3.1.1.2.3.1.9 (chSysCardLowerTemp) ``` ### Dell SONiC / Quanta ``` MIB: NETGEAR-BOXSERVICES-PRIVATE-MIB Temperature: .1.3.6.1.4.1.4413.1.1.43.1.8.1.4 (boxServicesTempSensorState) Fan Speed: .1.3.6.1.4.1.4413.1.1.43.1.6.1.4 (boxServicesFanSpeed) PSU State: .1.3.6.1.4.1.4413.1.1.43.1.7.1.3 (boxServicesPowSupplyItemState) ``` ### PowerVault ``` MIB: FCMGMT-MIB All sensors: .1.3.6.1.3.94.1.8.1.6 (text parsing required) Temperature regex: /^ ([0-9]+) C ([0-9]+\.[0-9]+)F$/ Voltage regex: /^ ([0-9]+\.[0-9]+)V$/ Current regex: /^ ([0-9]+\.[0-9]+)A$/ Charge regex: /^ ([0-9]+)%$/ ``` --- ## Critical Gaps Summary | Platform | Gap Type | Severity | Impact | Fix Effort | |----------|----------|----------|--------|-----------| | **PowerConnect/DNOS** | No sensor discovery | **CRITICAL** | No temp monitoring | Medium (2-3 hours) | | **Force10 FTOS** | No sensor discovery | **CRITICAL** | No temp monitoring | Medium-High (3-4 hours) | | **SONiC** | No sensor discovery | **CRITICAL** | No hardware monitoring | Medium (2-3 hours) | | **PowerVault** | No sensor discovery | **CRITICAL** | No storage monitoring | High (3-4 hours) | | **Dell Servers (10892)** | No profile | **CRITICAL** | No server monitoring | High (4-6 hours) | | **UPS** | Missing power sensor | **MEDIUM** | No wattage tracking | Low (1 hour) | | **Quanta** | Incomplete | **MEDIUM** | Partial monitoring | Medium (2-3 hours) | --- ## Implementation Recommendations ### Priority 1 - Critical (Network Switches) 1. **PowerConnect/DNOS sensor profile** (2-3 hours) - Add CPU temperature discovery - Affects common enterprise access switches 2. **Dell SONiC sensor profile** (2-3 hours) - Add temperature, fan, PSU state discovery - Modern data center platform 3. **Force10 FTOS sensor profiles** (3-4 hours) - Implement S/C/E-Series temperature discovery - Common data center switch platform ### Priority 2 - Critical (Storage) 1. **PowerVault sensor discovery** (3-4 hours) - Implement text parsing in vendor module - Enables storage monitoring 2. **Dell Server (10892) profile** (4-6 hours) - Comprehensive server monitoring - Very common enterprise platform ### Priority 3 - Medium (Nice to Have) 1. **Dell UPS power sensor** (1 hour) - Add missing power consumption OID 2. **Complete Quanta profile** (2-3 hours) - Improve generic Quanta switch support --- ## Parity Target After Fixes - **OS10**: **100%** (current - already excellent) - **rPDU**: **100%** (current - already excellent) - **OME-M**: **100%** (current - already excellent) - **Compellent**: **100%** (current - already excellent) - **PowerConnect/DNOS**: 0% → **95%** - **Force10 FTOS**: 0% → **90%** - **SONiC**: 0% → **95%** - **PowerVault**: 20% → **90%** - **Dell Servers**: 0% → **95%** - **UPS**: 80% → **100%** --- ## Conclusion **Overall Status**: ⚠️ **Network Switches Need Urgent Attention** **Key Achievements**: - ✅ OS10: Excellent coverage - ✅ rPDU, OME-M, Compellent: Comprehensive monitoring - Infrastructure/storage platforms well-covered **Critical Needs**: - ❌ **Network switches severely underserved** (PowerConnect, Force10, SONiC) - ❌ PowerVault storage missing all sensors - ❌ Dell enterprise servers (iDRAC) not supported **Business Impact**: - Dell network switches (PowerConnect, Force10, SONiC) are **common in enterprise deployments** - Lack of temperature monitoring = **no alerting on overheating switches** - Lack of Dell server monitoring = **missing huge enterprise server market** **Recommendation**: 1. **Immediate**: Implement PowerConnect and SONiC sensor profiles (network switch focus) 2. **Short-term**: Add Force10 FTOS support (data center switches) 3. **Medium-term**: PowerVault and Dell server support (storage/compute platforms)