サーバの状態を他のマシンからモニタする(fbst)

 サーバの状態を 3.5 inch の液晶に表示するプログラム、fbst を作りましたが、サーバは離れた場所に置くため、他のマシンからモニタできないかと考えました。

 ネットワーク経由で、フレームバッファの内容を返す機能を追加しました。モニタするマシンは、受け取ったフレームバッファのデータを使い、SDL で表示するプログラムを作りました。

 考えてみたら、液晶がついていないサーバで動かせば、リモートでモニタできることになります。試してみると、HDMI をつなげていない RaspberryPi のフレームバッファは、656×416 のサイズでした。

 しかし、複数のサーバをモニタする場合、ネットワーク上に画像データが多数流れることになります。そこで、単純にサーバの数値のみをやり取りしたほうが良いと考え、数値のみを返すようにしました。受け取ったほうでグラフを描画するようにします。サーバ側でグラフを描画しないのでそれほど負荷にはならないでしょう。

 ただ、テキストの表示を SDL を使って表示すると、画像保存がちょっと面倒になりそうです。別な方法を探しています。

 複数のサーバをモニタする場合にそれぞれコマンドを起動したり、ウィンドウを整列させたりするのが面倒なので、一度に複数のサーバをモニタできるように表示するプログラムを作り変えました。

 ところが、segmentation fault したり、ネットワークの調子が悪いサーバがあると、指定した時間内にデータの取得が行えず、問題のないサーバのデータ取得も遅延することになります。もう少し処理方法を考えないと駄目なようです。

Raspberry Pi

Posted by sirius