Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
3
Help us understand the problem. What is going on with this article?
@ackcell

Raspberry piに電源管理/死活監視モジュール「slee-Pi」をつけてMackerelをインストールしたら、色々と捗る仕組みができた件

More than 1 year has passed since last update.

Mechatraxの電源管理/死活監視モジュールslee-Pi2を入手、これからの開発・調査をするために、先ずはMackerelをインストールしてみた。その後、ごちゃごちゃやっていたら、それなりに今後にも使えそうなものができたので、ここに記録しておく。

詳細な手順等はGitHubで公開中なので、技術的にはもう何も言うことはないのだけど、ここではなぜこのような仕組みになったかを記す。

Raspberry piへの設定作業なので、ansibleのplaybookで実装するのは、この頃の私のデフォルト。一度コード化しておけば、何回も行う作業ならば、作業ミスも防げ、手順等をレビューなどで改善・改良できる。さらには資産にもなるので、もう私の中ではやらない手はないぐらい。

Mackerelを常用していると、その死活監視はその仕組み上リアルタイム性が劣るのを感じていた。特に電源管理・死活監視を司るslee-Piの開発・評価においては致命的になるかと考え、死活監視に関しては独自に実装する必要性を感じたので、boot・shutdown処理において直接slackに投稿する仕組みを実装することに

そのために、systemdのstartstop.serviceとして実装し、boot時に立ち上がったことを、shutdown時にはその旨のメッセージをslackにpostするようにした。当然、slackにはip reachableである前提。

そうこうするうちに、これを使えば、他の事にも使えると考え、実装したのがSTARTUP.shとSHUTDOWN.shをslackを叩くと同様なタイミングで実行する仕組み。

例えば、boot時に

sleep 300&&(sleepi2alarm --set "+5min" && shutdown -h now)

とやれば、5分後に

sleepi2alarm --set "+5min" && shutdown -h now

と投入されることになる。これによって、5分毎に起動・停止を延々と繰り返すRaspberry piができ上がり。

sleepi2alarmについてはsleepi2alarmを参照

さらには、

echo "(sleepi2alarm --set \"tomorrow 9:00:00\"&&shutdown -h)"|at 17:00

とやれば、9-5時にしか稼働しないRaspberry piができ上がります。
同様なシナリオとしては
boot時に

echo "shutdown -h now"|at 17:00

shutdown時に

sleepi2alarm --set "tomorrow 9:00:00"

と実行することでも可能です。
気を付けることとしては、boot時に時刻指定のshutdownコマンドを発行しないこと。例えば、

shutdown "17:00"

と投入すると、shutdownは17時に行われるが、Unprivileged usersがsshでログインできなくなり、色々と面倒なことになる。

これらのSTARTUP.sh/SHUTDOWN.shのコレクションは今後の評価・開発のシナリオに応じて充足していく予定。

3
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
3
Help us understand the problem. What is going on with this article?