Auto Power-on?
# │forum
They're alive!!! But now the questions about recovering from power outages come. Two of these nodes are also going to host Pi-hole servers. They're on an UPS but I'd prefer not to have to field questions on how to get the internet back after a power outage that last more than an hour if I happen to be put of town. Is there a way to have the BMC remember the state and have them power back up when power is restored?Does this require the RTC battery or something?
Not for now. I don't know about the new firmware that the Team is developing, but the Community Edition of the firmware is going to gain this ability in some near future
In meantime, I guess you can write a script that starts given nodes
Does BMC have Cron or will I need to do it on another machine that does come back after an outage?
If you go to
, you could add
commands there I guess, although maybe with some delay to let the
process start
That might work. The script to start them would be pretty small.
I mean you edit the script I mentioned and add the commands there
This is my basic init.d script that turns on Node 4 only, as well as syncing the clock. #! /bin/sh echoLog(){ tee -a /tmp/startupLog.txt} diagnosticsPrint(){echo "[Attempt $webAttempts, $(date +%H:%M:%S)] "} startupRoutine(){ echo "########## Executing custom items ##########" | echoLog echo "==> Setting date from hw clock:" | echoLog hwclock -s && date | echoLog echo "==> Attempting to start Node 4" | echoLog webAttempts=1 until $(curl --output /dev/null --silent --head --fail http://localhost); do webAttempts=$(( $webAttempts + 1 )) echo "$(diagnosticsPrint) Waiting for webserver start. " | echoLog sleep 1 done echo "$(diagnosticsPrint) Webserver online - starting nodes" | echoLog curl -s "http://localhost/api/bmc?opt=set&type=power&node4=1" | echoLog } case "$1" in start) startupRoutine ;; stop) ;; restart) startupRoutine ;; status) # code to check status of app comes here # example: status program_name ;; *) echo "Usage: $0 {start|stop|status|restart}" esac echo "" exit 0