Top / EBUG勉強会 / 20060520_SAG

自作ツールでシステム管理

川俣 吉広, kaw@on.rim.or.jp
2006, 5/20 @ EBUG 第18回会合(十日町市)
主旨
システムの「常態」を知ろう。
  • 異常を検知するためには、システムの通常の状態を知る
    → 一定期間にわたって測定を行い、傾向を把握。
  • サーバ毎に特徴があり、特徴を把握しておく
  • 自作のツール / 一般のツールを組み合わせて使ってみる

SAGとは?

System Activity Grapher ... 自作ツール

  • 特徴
    • システムの稼働状態を記録し、グラフ表示
      • ロードアベレージ, ネットワーク流量, 時刻同期, メモリ, ディスク使用量
      • プロセス生成回数, ファン回転数, ケース内温度, etc... (Linux Only)
    • サンプル ... kaw.ath.cx, plamo.linet.gr.jp
    • データは、/proc/*, コマンド (sysctl, netstat, du ...)から取得 ... 一般ユーザ権限で取得できる情報を使用
    • グラフ表示をカスタマイズできる ... gnuplotスクリプト
    • 伝送路は特に規定なし ... HTTPとかが手軽。scpとかでも可。
  • 低いリソース消費 ... Linux/98 on 486/66MHz, 14MB mem, 320MB HDD
  • 欠点
    • リアルタイム監視には向かない ... 毎時間更新
  • 実装
    • 構成
      • Shell script / Perl script / Gnuplot / NetPBM で構成
    • 動作内容 ... cronにて駆動
      • データ取得 ..... 任意の間隔
      • データ集計 ..... パース + 集計 + グラフ集計
      • 日変わり処理 ... ローテート / キャッシュ再生成
    • 低プライオリティで動作 ... renice -15
    • 競合状態の排除 ... 同じタイミングでの動作は逐次実行される
    • ローテート中のファイルに測定データを追加

pingscan ... もう一つの自作ツール

  • 監視するホストに順次pingを投げ、結果をPostgreSQLで記録
  • 社内LANのホスト, リモートサイト, アップストリームの死活監視。
    netcheck=> select count(*) from pingscan;
      count   
    ----------
     27937286
    (1 row)
    
    netcheck=> select daytime,dsthost,seq,ttl,rtt from pingscan order by daytime limit 5;
            daytime         |   dsthost    | seq | ttl |  rtt  
    ------------------------+--------------+-----+-----+-------
     2005-06-01 00:00:02+09 | 172.16.xx.yy1|   0 |   0 |     0
     2005-06-01 00:00:02+09 | 172.16.xx.yy2|   0 |  64 | 0.724
     2005-06-01 00:00:02+09 | 172.16.xx.yy4|   0 | 255 | 0.815
     2005-06-01 00:00:02+09 | 172.16.xx.y37|   0 |   0 |     0
     2005-06-01 00:00:02+09 | 172.16.xx.y38|   0 |   0 |     0
    (5 rows)
    pingscan.gif
    ウェブベースのU/I

運用例

実際には、その他のツールと併用して運用すると効果的。

sags.gif
構成例
  • LAN
    • pingscan, tcpdump, SAG
    • 内部サーバ
  • DMZ
    • snort, ntop, tcpdump, SAG ... promiscモードで動作するソフトと併用するとトラフィック全体を計測できる
    • ntpd, pflogd, pflist, SAG
  • ISP
    • www, SAG

事例

Squid Web Proxy Cacheのキャッシュ調整

  • オンメモリ・キャッシュの大きさは?
  • ...スワップぎりぎりまで確保してみる

スパム1

  • NTPのDelay増大 ... pingscanによる測定

スパム2

  • snortによるレポート ... 「TCP port sweep / TCP port scan」増大
  • 回線輻輳 ... SYN Packet測定

ルータトラブル

  • NTPのDelayが増大 ... pingscanによる測定
  • ネットワークの輻輳はなし
  • 時刻誤差も正常値
  • ...で、原因は?

メールサーバ過負荷

  • MUAで「メールの自動転送」を設定。エラーメールをループさせた奴がいた!

結論


長期における傾向把握が重要
各種パラメータを横断的に見る
データを見やすくカスタマイズ、は結構重要
One Linerが書けたりすると良いです
そして、なによりも
毎日見る

Top / EBUG勉強会 / 20060520_SAG

Attach file: filepingscan.gif 1558 download [Information] filesags.gif 1495 download [Information] filesags.fig 960 download [Information]
Reload  New Edit Freeze Diff Attach Copy Rename  Top Index Search Recent Backups  Help  RSS
Last-modified: 2006-05-21 (Sun) 18:45:45 (4417d)