ilo4-fan-controller

所属分类:Docker
开发工具:TypeScript
文件大小:84KB
下载次数:0
上传日期:2021-12-31 17:23:35
上 传 者sh-1993
说明:  用于模块化固件iLO4服务器的风扇控制器
(Fan controller for modded firmware iLO4 servers)

文件列表:
.dockerignore (4, 2022-01-01)
.env.template (106, 2022-01-01)
Dockerfile (910, 2022-01-01)
next-env.d.ts (201, 2022-01-01)
next.config.js (43, 2022-01-01)
package.json (713, 2022-01-01)
postcss.config.js (203, 2022-01-01)
public (0, 2022-01-01)
public\favicon.ico (100475, 2022-01-01)
public\favicon.ico:Zone.Identifier (0, 2022-01-01)
public\ilo-logo.png (322, 2022-01-01)
src (0, 2022-01-01)
src\components (0, 2022-01-01)
src\components\Fan (0, 2022-01-01)
src\components\Fan\Fan.tsx (1633, 2022-01-01)
src\components\Fan\index.ts (33, 2022-01-01)
src\components\screwtailwind.tsx (20283, 2022-01-01)
src\pages (0, 2022-01-01)
src\pages\_app.tsx (491, 2022-01-01)
src\pages\api (0, 2022-01-01)
src\pages\api\temps.ts (966, 2022-01-01)
src\pages\api\unlock.ts (710, 2022-01-01)
src\pages\api\update.ts (1245, 2022-01-01)
src\pages\index.tsx (15254, 2022-01-01)
src\schemas (0, 2022-01-01)
src\schemas\changeFanSpeed.ts (169, 2022-01-01)
src\styles (0, 2022-01-01)
src\styles\global.css (82, 2022-01-01)
src\types (0, 2022-01-01)
src\types\Fan.d.ts (310, 2022-01-01)
src\types\env.d.ts (148, 2022-01-01)
tailwind.config.js (207, 2022-01-01)
... ...

# Modded iLO4 Fan Controller for Gen 8 HP Servers


Freely manage your HP's fan speeds; anywhere, any time!

--- ## How this works - When you first load the page, a function runs through the [Next.js](https://nextjs.org/) `getServerSideProps` function which fetches the current data about the fan speeds of the server. This is then parsed and displayed on form, allowing you to have even 20 fans if you want as its all dynmaically parsed. - Once you either apply the settings, or select a preset, the server connects via SSH to iLO4 and then runs the required commands, normally it takes about 10-20 seconds for all the comamnds to run through, but the more fans you have the longer it will take. ## Important Information - There is **no authorization system** put in place, if you plan to expose this publicly, you must use some sort of authentication proxy such as [Authelia](https://github.com/authelia/authelia) which I have a guide for Kubernetes [here](https://github.com/DavidIlie/kubernetes-setup/tree/master/8%20-%20authelia). It wouldn't be fun for someone to put your server fans at 100% whilst you're not home. ## Installation > The main requirement is that your iLO4 firmware is flashed with the _["The Fan Hack"](https://www.reddit.com/r/homelab/comments/hix44v/silence_of_the_fans_pt_2_hp_ilo_4_273_now_with/)_ mod. ## Docker This resposity contains a docker image which can easily be pulled down to use in a Docker/Kubernetes environment. Modify the comamnd below with **your** values regarding your setup and then you can run the command: ```shell docker run -d \ --name=ilo4-fan-controller \ -p 3000:3000 \ -e ILO_USERNAME='*your username*' \ -e ILO_PASSWORD='*your password**' \ -e ILO_HOST='*the ip address you access ILO on*' \ --restart unless-stopped \ ghcr.io/davidilie/ilo4-fan-controller:latest ``` You can modify this to work with Rancher, Portainer, etc. ## Directly with node On your desired machine, clone down the repository and make a copy of the `.env.template` into `.env` and fill in **your** values. ```env ILO_HOST=x.x.x.x.x ILO_USERNAME=iasbdliyasiy*** ILO_PASSWORD=aosdubaiusldbaisdbi*** ``` Before you do anything you first need to build the project: ```shell # fetches the dependencies yarn # builds the nextjs project yarn build ``` You can then create a `systemd` service, use `pm2`, or just run it directly: ```shell yarn start ``` ## The Idea HP offers enterprise servers which are normally supposed to be in some sort of datacenter environment, where things such as fan speed are not really a concern. With this in mind, when old HPE servers are decommissioned and put on the used market, people like myself buy these servers to have them part of our _Home Datacenter_. These servers can easily start sounding like an airplane is starting to take off at your house, so modified firmwares of the server's IPMI system (iLO4) have been created in order to manage the fan speeds via SSH, but when your power goes off and you need to change the fan speed from your phone, that's a whole different story. The main inspiration for this project was this post I found on [r/homelab](https://www.reddit.com/r/homelab/comments/rcel73/i_created_a_web_page_to_manage_the_fans_of_my/), but I decided to create my own so that I can make it as customizable as possible and not have it restricted to some models.

近期下载者

相关文件


收藏者