iDRAC IPMI Fan Controller

A tool designed to automate fan speed control on Dell PowerEdge servers. Utilising Python, this software monitors server conditions and adjusts fan speeds according to a predefined set of rules, optimising both cooling efficiency and noise reduction.

Built with Python, this tool interfaces with Dell's Integrated Dell Remote Access Controller (iDRAC) and Intelligent Platform Management Interface (IPMI) to dynamically manage fan speeds. Users can define specific rules that dictate fan behavior based on the server temperature, ensuring optimal hardware operation and noise reduction.

Dell LogoPython Logo
GitHub Actions

Development Process

iDRAC IPMI Fan Controller utilise GitHub Actions to automate several key operations:

  • Code Linting Ensures coding standards and improves readability.
  • Unit Tests Validates each part of the code to prevent regressions.
  • Test code coverage Measures the extent to which the code is covered by tests, encouraging thorough testing practices.
  • Automated docker build Facilitates consistent and rapid deployment across all environments by using Docker containers, streamlining the release and deployment processes.

Docker

Deployment of the fan controller is streamlined through Docker, allowing for effortless integration and scalability across multiple server environments. Automated Docker builds triggered by each release ensure that the latest version of the tool is readily available and easily deployable.