ホーム » t-saitoh の投稿 (ページ 19)

作者アーカイブ: t-saitoh

システム

最近の投稿

アーカイブ

カテゴリー

おひざの上

{CAPTION}

越前たけふ駅の道の駅オープン

北陸新幹線の延線開通1年前だけど、越前たけふ駅の道の駅がオープン

{CAPTION}

{CAPTION}

{CAPTION}

{CAPTION}

{CAPTION}

村国山⛰ウォーキング

今シーズン最初の山ウォーキング

{CAPTION}

{CAPTION}

{CAPTION}

{CAPTION}

{CAPTION}

ウォーキングの後は、越前たけふ駅の道の駅に寄り道。

リモート監視 nagios-nrpe を使ってみる

Raspberry-Pi で WiFi スキャンをさせたいけど、警告を出すために raspberry-pi 側に nagios4 のような本格的な監視システムを入れるのは資源のムダに思えたので、軽量な監視とすべく、リモート監視用の nagios-nrpe-server を使ってみた。

メインサーバ                port=5666 リモート    監視プラグイン
  nagios4 ----> check_nrpe ------------> nrpe ----> check_root
            nagios-nrpe-plugin     nagios-nrpe-server

nrpe は リモートの監視プラグインを check_nrpe と nagios-nrpe-server が経由して呼出してくれる。

リモートの監視側

nagios-nrpe-server をインストールして、監視サーバからの接続を許可する。インターネット経由で監視するなら、5666 ポートが通るようにファイアウォールの設定が必要。

((( 必要パッケージのインストール )))
$ sudo aptitude install nagios-nrpe-server

((( /etc/nagios/nrpe.cfg )))
# 監視サーバからの接続を許可
allowed_hosts=127.0.0.1,::1,192.168.xx.00/24
                           ~~~~~~~~~~~~~~~~~(追加)
((( /etc/nagios/nrpe.d/enabled.cfg )))
# 監視するためのチェック処理を登録。nrpe.cfg から nrpe.d/*.cfg に設定を移動
command[check_root]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /
command[check_load]=/usr/lib/nagios/plugins/check_load $ARG1$

((( /etc/default/nagios-nrpe-server )))
# 自宅内のような閉じた中でSSLが不要の場合
NRPE_OPTS="-n"
((( nagios-nrpe-server を再起動 )))
$ sudo systemctl restart nagios-nrpe-server

メインの監視サーバ側

nrpe用のプラグインをインストールすると、/etc/nagios-plugins/config/check_nrpe.cfg や /usr/lib/nagios/plugins/check_nrpe を入れてくれる。

((( 監視側にnrpe用のプラグインを追加 )))
$ sudo aptitude install nagios-nrpe-plugin  # nagios or icinga はインストール済み

((( nrpe の入ったリモートが呼び出せるか確認 )))
$ /usr/lib/nagios/plugins/check_nrpe -H リモート -c check_root
DISK OK - free space: / 21321 MB (74% inode=86%);| /=7363MB;23944;26937;0;29930

((( /etc/nagios-plugins/config/check_nrpe.cfg )))
# nagios/icingaなどのcommand設定の確認
# this command runs a program $ARG1$ with no arguments and enables SSL support
define command {
        command_name    check_nrpe
        command_line    /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
# this command runs a program $ARG1$ with no arguments and disables SSL support
define command {
        command_name    check_nrpe_nossl
        command_line    /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ -n
}

((( nagios4 のサービス監視に check_nrpe を呼出す設定を追加 )))
define service{
    use                 local-service
    host_name           リモート
    service_description DISK
    check_command       check_nrpe!check_root
    # check_command     check_nrpe_nossl!check_root  # SSLなしで設定した場合
}

((( nagios4 を再起動 )))
$ sudo systemctl restart nagios4

nagios4 で監視ができるようになったので、温湿度センサーや空気品質センサーの確認も nrpe 経由に変更してみた。

WiFiスキャンをさせてみた

自宅内のネットワークに繋がらない時があって悩んだら、外で使っていたモバイルルータがつけっぱなしで、自宅内ネットワークのサービスに接続できないのが原因だったりする。パケットも無駄に消費するので、自宅内でモバイルルータが動いていたら警告させるようにしたい。

wifi scan

メインサーバは有線だけなので、有線LAN接続で WiFi が空いている Raspberry-Pi で監視させてみた。

$ sudo iw dev wlan0 scan | grep "SSID: ルータのSSID"

最初は homebridge の homebridge-cmdswitch2 の state_cmd に仕込んでみたけど、モバイルルータが動いていたら警告してほしい。Siri のオートメーション経由で警告することもできるかもしれないけど、スマホに頼る形になるなぁ。

nagios で警告させたいけど、raspberry-pi に nagios を入れるのは資源のムダに思える。ということで、Raspberry-Pi には nagios の監視をリモートで呼び出す nagios-nrpe-server を 入れて、上記 iw コマンドを動かす check スクリプトを書いてみた。

check_iwscan

nagios-nrpe-server から呼出す際に、Raspberry-Pi で動かすのもあるし、OS 負荷が軽くなるように Lua で書いてみた。

#!/usr/bin/lua

-- 見つけるべきSSID
local check_list = {}
check_list[ "tsaitoh.net" ] = "ok"
check_list[ "tsaitoh.net_e5785" ] = "warning"
check_list[ "tsaitoh.net_hwd14" ] = "critical"

-- 見つけたSSID毎の数
local count = {}
count[ "ok" ] = 0
count[ "warning" ] = 0
count[ "critical" ] = 0

-- スキャン結果を処理
local handle = io.popen( "/usr/bin/sudo /sbin/iw dev wlan0 scan" , "r" )

if handle then
   for line in handle:lines() do
      -- SSID を抽出
      ssid = string.match( line , "^%s*SSID: (.+)$" )
      if ssid then
         -- SSID のカウント
         local lv = check_list[ssid]
         if lv then
            count[lv] = count[lv] + 1
         end
         -- print( ssid ) ;
      end
   end
   handle:close()
end

-- カウント結果に応じたexit値を決める
local status = 0
local st_mess = "Ok"

if count["critical"] > 0 then
   status = 2
   st_mess = "Critical"
elseif count[ "warning" ] > 0 then
   status = 1
   st_mess = "Warning"
end

-- 結果の表示
print( string.format( "IWSCAN %s - ok:%d/warn:%d/critical:%d" ,
                      st_mess , count["ok"] , count["warning"] , count["critical"] ) )
os.exit( status )

長男からママ+α誕プレ

{CAPTION}

古い家の解体工事

25年ほど前に新築した家に移り住んだけど、元の生家はそのままだった。でも傷みも激しいのでそろそろ解体と計画をしていた。でも雪もなくなりついに解体が始まった。

{CAPTION}{CAPTION}{CAPTION}{CAPTION}

猫寺までウォーキング

{CAPTION}

{CAPTION}

{CAPTION}

{CAPTION}

@TohruSaitoh-23/03/03

  • 03/03 書きなれない様式の文書で、語尾がマンネリ化していたので、ChatGPT に違う言い回しを教えてもらう。
  • 03/01 仕事がひと段落して今夜は「祝杯」のはずだったのだが、とある連絡で「やけ酒」に変更になった。
  • 02/24 あかん、ボケてる。
    祝日空けなのに月曜日の日程チェックしてた。
    金曜やんけ。
  • 02/22 2枚目中央の黒にゃん https://twitter.com/muRata_PR/status/162…

ウォーキング

  • 02/24 久々に #ウォーキング してみたけど、もどって目を掻いたら痒みが悪化。鼻も同様。この時期はマスクしてウォーキングでもダメやな。 #花粉症


この記事は@TohruSaitohのつぶやきのまとめです。

@TohruSaitoh-23/02/16

  • 02/16 いちゃもん付けてる人は、番号表示なしのクレジットカード増えてるの知らないんだろうな。チップ内のデータはそのまんまで番号や顔写真印刷なしバージョンが作られるだけ。ということで、マイナカードの表面にシール貼ってもよさそうだな。 https://twitter.com/YahooNewsTopics/stat…
  • 02/07 バカな動画を上げるのは昔はバカッターって言ってたけど、今はInstagramかtiktokだよなぁ。 今なら「バカ映え」とかいうのはどうかな?
  • 02/02 今日2/2はネコの節句です。 https://twitter.com/TohruSaitoh/status/1…

Thunderbird

  • 01/31 Microsoft 365 のメールを #Thunderbird#OAuth2 認証で使っていたんだけど、数日前に再認証の画面がでてから、色々設定しなおしても、365メールが読めなくなった。MS365の認証が厳しくなったのかな?


この記事は@TohruSaitohのつぶやきのまとめです。

Google 検索

My Google   Yahoo

Microsoft

ファンサイト