DMTF / Redfish-Tacklebox

Python based utilities for performing common management operations with Redfish
Other
52 stars 25 forks source link

Power equipment tool to poke at PDUs #137

Closed mraineri closed 9 months ago

mraineri commented 10 months ago

If folks agree with the content, will update the README to include documentation. Could use some input on some of the arguments.

$ rf_power_equipment.py -u root -p password -r https://127.0.0.1:8000 list

FloorPDUs
  Id               | Model            | Serial Number    | State        | Health  
  1                | GLH9000          | 0458329          | Enabled      | OK      

RackPDUs
  Id               | Model            | Serial Number    | State        | Health  
  1                | ZAP4000          | 29347ZT536       | Enabled      | OK      

TransferSwitches
  Id               | Model            | Serial Number    | State        | Health  
  1                | ZAP4000          | 29347ZT536       | Enabled      | OK      

$ rf_power_equipment.py -u root -p password -r https://127.0.0.1:8000 status -t RackPDU -pe 1

RackPDU 1 Info

  Status: State: Enabled, Health: OK
  EquipmentType: RackPDU
  Model: ZAP4000
  Manufacturer: Contoso
  PartNumber: AA-23
  SerialNumber: 29347ZT536
  Version: 1.03b
  FirmwareVersion: 4.3.0
  ProductionDate: 2017-01-11T08:00:00Z
  AssetTag: PDX-92381
  Power: 6438 W
  Energy: 56438 kWh
  Temperature: 31 C

  Mains Id         | Nominal Voltage    | Phase Wiring         | State        | Voltage (V)  | Current (A)  | Power (W)   
  AC1              | 200 V to 240 V AC  | 3 Phase, 5 Wire      | ---          | Polyphase    | Polyphase    | ---         

  Branch Id        | Nominal Voltage    | Phase Wiring         | State        | Voltage (V)  | Current (A)  | Power (W)   
  A                | 200 V to 240 V AC  | 2 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 937.4       
  B                | 200 V to 240 V AC  | 2 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 977.8       
  C                | 200 V to 240 V AC  | 2 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 816.5       

$ rf_power_equipment.py -u root -p password -r https://127.0.0.1:8000 outlets -t RackPDU -pe 1

RackPDU 1 Outlets

  Outlet Id        | Nominal Voltage    | Phase Wiring         | State        | Voltage (V)  | Current (A)  | Power (W)   
  A1               | 120 V AC           | 1 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 197.4       
  A2               | 200 V to 240 V AC  | 2 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 384.5       
  A3               | 200 V to 240 V AC  | 2 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 349.9       
  A4               | 120 V AC           | 1 Phase, 3 Wire      | Enabled      | ---          | ---          | ---         
  A5               | 120 V AC           | 1 Phase, 3 Wire      | ---          | ---          | ---          | ---         
  B1               | 120 V AC           | 1 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 228.3       
  B2               | 200 V to 240 V AC  | 2 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 321.6       
  B3               | 200 V to 240 V AC  | 2 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 426.5       
  C1               | 120 V AC           | 1 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 56.8        
  C2               | 200 V to 240 V AC  | 2 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 394.1       
  C3               | 200 V to 240 V AC  | 2 Phase, 3 Wire      | Enabled      | Polyphase    | Polyphase    | 355.4       

$ rf_power_equipment.py -u root -p password -r https://127.0.0.1:8000 outletinfo -t RackPDU -pe 1 -o A2

Outlet A2 Info

  Status: State: Enabled, Health: OK
  PhaseWiringType: 2 Phase, 3 Wire
  VoltageType: AC
  OutletType: IEC C13 (250V; 10A or 15A)
  NominalVoltage: 200 V to 240 V AC
  RatedCurrentAmps: 12
  PowerState: On
  Voltage: 202.4 V
    Line1ToLine2  : 202.4 V
  Current: 1.9 A
    Line1  : 1.9 A
  Power: 384.5 W
  Energy: 52941 kWh
  Frequency: 60.1 Hz

$ rf_power_equipment.py -u root -p password -r https://127.0.0.1:8000 mainsinfo -t RackPDU -pe 1 -m AC1

Mains AC1 Info

  Status: State: N/A, Health: OK
  CircuitType: Mains
  PhaseWiringType: 3 Phase, 5 Wire
  NominalVoltage: 200 V to 240 V AC
  RatedCurrentAmps: 40
  BreakerState: Normal
  Voltage: 
    Line1ToLine2  : 202.8 V
    Line1ToNeutral: 117.8 V
    Line2ToLine3  : 203.8 V
    Line2ToNeutral: 116.6 V
    Line3ToLine1  : 205.3 V
    Line3ToNeutral: 118.5 V
  Current: 
    Line1  : 8.02 A
    Line2  : 8.66 A
    Line3  : 6.91 A
    Neutral: 2.74 A
  Power: 
    Line1ToLine2  : 738.9 W
    Line1ToNeutral: 198.4 W
    Line2ToLine3  : 748.3 W
    Line2ToNeutral: 231.5 W
    Line3ToLine1  : 759.6 W
    Line3ToNeutral: 58.1 W
  Frequency: 60.1 Hz

$ rf_power_equipment.py -u root -p password -r https://127.0.0.1:8000 branchinfo -t RackPDU -pe 1 -b B

Branch B Info

  Status: State: Enabled, Health: OK
  CircuitType: Branch
  PhaseWiringType: 2 Phase, 3 Wire
  NominalVoltage: 200 V to 240 V AC
  RatedCurrentAmps: 16
  BreakerState: Normal
  Voltage: 
    Line2ToLine3  : 203.6 V
    Line2ToNeutral: 116.7 V
  Current: 5.95 A
    Line2  : 5.95 A
  Power: 977.8 W
    Line1ToNeutral: 977.8 W
  Energy: 110345 kWh
  Frequency: 60.1 Hz
mraineri commented 9 months ago

Approved 2/2 (pending README updates)