Uncategorized

Pankha SelfHosted Centralized Fan Control Center.

Pankha: A Simple Solution to a Frustrating Problem – Smart Fan Control for Your Homelab

A Personal Story of Frustration and Innovation

I still remember the frustration I felt when I first started working with Linux systems. One of the most annoying issues I encountered was fan control. It seemed like a simple problem, but the solutions available were complicated and often didn’t work as expected. Manual PWM tweaking through sysfs was a nightmare, especially at 2 AM when something would overheat. Ancient scripts would work until the kernel updated, and vendor-specific tools only worked with specific hardware. There was no visual feedback, just guesswork, and GPU passthrough to a VM or HBA made it impossible to monitor anymore.

The Problem with Existing Solutions

As I delved deeper into the world of homelabs and servers, I realized that I wasn’t alone in my frustration. Many people were struggling with the same issues. The options available for fan control were limited and often didn’t scale well when you had multiple systems. You wanted to monitor and control fans across several machines, ideally from one place, but it seemed like an impossible task. And forget about managing multiple systems – you were copying configs, SSH-ing into boxes, hoping your changes would actually stick after a reboot.

A Solution is Born – Pankha

This is where Pankha comes in – a web-based fan control system designed from the ground up for distributed systems. Pankha provides real-time monitoring and control across all your machines from one dashboard. The core features of Pankha include a distributed architecture, real-time everything, smart fan curves, and hardware agnostic design. Every system runs a lightweight agent that discovers hardware automatically, no manual configuration files or hunting through hwmon paths required. The agent figures out what fans and sensors you have, what’s controllable, and reports back.

How Pankha Works

Pankha uses WebSocket connections to provide real-time updates, so you see temperature changes and fan speed adjustments as they happen. The system also allows you to create custom fan profiles with temperature curves, which can be applied dynamically without restarting anything. The fan control algorithm uses linear interpolation between temperature curve points, with proper error handling, state management, and the ability to update curves without restarting. Special identifiers let you control fans based on specific sensors or temperatures, making it easy to customize your setup.

Technical Details and Future Plans

Pankha is built using Node.js/TypeScript on the backend, React frontend, Python agents, and PostgreSQL database, all running in Docker for easy deployment. The system is currently in testing with four production systems running 24/7, and the roadmap includes features like historical temperature and fan speed graphs, alerting when temperatures exceed thresholds, and more sophisticated fan control algorithms. A mobile app for quick checks and multi-user support with proper authentication are also in the works.

Why Pankha Matters

Pankha solves a real problem for people who run homelabs or servers. It provides a simple and efficient way to monitor and control fans across multiple systems, all from one place. No more SSH-ing into each box to check temperatures or guessing which fans are controllable. Pankha is designed to be user-friendly, with a simple web-based interface that makes it easy to customize your setup and monitor your systems in real-time.

Conclusion

Pankha is a game-changing solution for anyone who has struggled with fan control on Linux systems. It’s a testament to the power of innovation and the importance of solving real-world problems. Whether you’re a seasoned sysadmin or just starting out with your homelab, Pankha is definitely worth checking out.

Pankha: Prosta Rozwiązanie Skomplikowanego Problemu – Inteligentny Kontroler Wentylatorów Dla Twojego Homelabu

Osobista Historia Frustracji i Innowacji

Nadal pamiętam frustrację, którą czułem, gdy po raz pierwszy zacząłem pracować z systemami Linux. Jednym z najbardziej irytujących problemów, z którymi się spotkałem, był kontroler wentylatorów. Wydawało się, że jest to prosty problem, ale rozwiązania dostępne były skomplikowane i często nie działały tak, jak oczekiwano. Ręczna regulacja PWM przez sysfs była koszmarem, zwłaszcza o 2 nad ranem, gdy coś przegrzało się. Starodawne skrypty działały, dopóki jądro nie zostało zaktualizowane, a narzędzia specyficzne dla producenta działały tylko z określonym sprzętem. Nie było żadnej wizualnej informacji zwrotnej, tylko zgadywanie, a przejście GPU do maszyny wirtualnej lub HBA uniemożliwiało monitorowanie.

Problem z Istniejącymi Rozwiązaniami

Gdy zagłębiłem się głębiej w świat homelabów i serwerów, zrealizowałem, że nie jestem sam w swojej frustracji. Wiele osób borykało się z tymi samymi problemami. Opcje dostępne dla kontroli wentylatorów były ograniczone i często nie skalowały się dobrze, gdy miałeś wiele systemów. Chciałeś monitorować i kontrolować wentylatory na kilku maszynach, idealnie z jednego miejsca, ale wydawało się to niemożliwe. A zapomnij o zarządzaniu wieloma systemami – kopiowałeś konfiguracje, logowałeś się do skrzynek, licząc na to, że twoje zmiany będą nadal obowiązywać po restarcie.

Rozwiązanie się Rodzi – Pankha

To właśnie tutaj pojawia się Pankha – sieciowy system kontroli wentylatorów zaprojektowany od podstaw dla rozproszonych systemów. Pankha zapewnia monitorowanie i kontrolę w czasie rzeczywistym na wszystkich twoich maszynach z jednego pulpitu. Główne cechy Pankhi obejmują architekturę rozproszoną, wszystko w czasie rzeczywistym, inteligentne krzywe wentylatorów i projekt niezależny od sprzętu. Każdy system uruchamia lekki agent, który automatycznie odnajduje sprzęt, bez konieczności ręcznej konfiguracji plików lub wyszukiwania w hwmon. Agent ustala, które wentylatory i czujniki masz, co jest sterowalne i raportuje z powrotem.

Jak Działa Pankha

Pankha używa połączeń WebSocket, aby zapewnić aktualizacje w czasie rzeczywistym, więc widzisz zmiany temperatury i prędkości wentylatorów, gdy się wydarzają. System pozwala również tworzyć niestandardowe profile wentylatorów z krzywymi temperatury, które mogą być stosowane dynamicznie bez restartowania czegokolwiek. Algorytm kontroli wentylatorów używa interpolacji liniowej między punktami krzywej temperatury, z właściwym obsługiwaniem błędów, zarządzaniem stanem i możliwością aktualizacji krzywych bez restartowania. Specjalne identyfikatory pozwalają kontrolować wentylatory na podstawie określonych czujników lub temperatur, co ułatwia dostosowanie Twojej konfiguracji.

Szczegóły Techniczne i Planowane Funkcje

Pankha jest zbudowany przy użyciu Node.js/TypeScript na backendzie, React na frontendzie, agentów Python, bazy danych PostgreSQL, wszystko uruchomione w Dockerze dla łatwej instalacji. System jest obecnie testowany z czterema systemami produkcyjnymi działającymi 24/7, a plany rozwoju obejmują funkcje takie jak historyczne wykresy temperatury i prędkości wentylatorów, alarmy, gdy temperatury przekraczają progi, oraz bardziej zaawansowane algorytmy kontroli wentylatorów. Aplikacja mobilna do szybkich sprawdzeń i wsparcie dla wielu użytkowników z właściwą autentykacją również są w trakcie realizacji.

Dlaczego Pankha Jest Ważna

Pankha rozwiązuje prawdziwy problem dla osób, które prowadzą homelaby lub serwery. Zapewnia prosty i wydajny sposób monitorowania i kontrolowania wentylatorów na kilku maszynach, wszystko z jednego miejsca. Nie musisz już logować się do każdej skrzynki, aby sprawdzić temperatury lub zgadywać, które wentylatory są sterowalne. Pankha została zaprojektowana, aby być przyjazna dla użytkownika, z prostym interfejsem sieciowym, który ułatwia dostosowanie Twojej konfiguracji i monitorowanie systemów w czasie rzeczywistym.

Podsumowanie

Pankha jest rozwiązaniem, które zmienia sposób, w jaki myślimy o kontroli wentylatorów w systemach Linux. Jest to dowód na to, że innowacje mogą rozwiązywać prawdziwe problemy. Niezależnie od tego, czy jesteś doświadczonym administratorem systemów, czy dopiero zaczynasz swoją przygodę z homelabem, Pankha jest zdecydowanie warta sprawdzenia.

Leave a Reply

Your email address will not be published. Required fields are marked *

WordPress Appliance - Powered by TurnKey Linux