--------(--)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

2012-03-10(Sat)

サーバーの状態を監視する

まず、netstatコマンドを使ってネットワーク接続をモニタする
$ netstat -aoet | grep postgres
tcp 0 0 *:postgresql *:* LISTEN postgres 7056 off (0.00/0/0)
tcp 0 0 ip-XX-XXX-XX:postgresql host-sv2:46215 ESTABLISHED postgres 4186185 keepalive (6145.56/0/0)
tcp 0 0 ip-XX-XXX-XX:postgresql host-sv1:54236 ESTABLISHED postgres 6261899 keepalive (7128.60/0/0)
tcp 0 0 ip-XX-XXX-XX:postgresql host-sv1:54251 ESTABLISHED postgres 6261965 keepalive (7169.56/0/0)
tcp 0 0 ip-XX-XXX-XX:postgresql host-sv1:54223 ESTABLISHED postgres 6261897 keepalive (7128.60/0/0)
tcp 0 0 ip-XX-XXX-XX:postgresql host-sv1:46930 ESTABLISHED postgres 6262040 keepalive (7210.52/0/0)
tcp 0 0 ip-XX-XXX-XX:postgresql host-sv1:54216 ESTABLISHED postgres 6261824 keepalive (7026.20/0/0)
tcp 0 0 ip-XX-XXX-XX:postgresql host-sv1:54250 ESTABLISHED postgres 6261964 keepalive (7169.56/0/0)
tcp6 0 0 [::]:postgresql [::]:* LISTEN postgres 7057 off (0.00/0/0)

コマンドオプションは以下のとおり。
-a 現在のすべての接続を表示する
-o ネットワーク・タイマを表示する
-e 拡張表示モード。
-t tcpのみ表示する。(-u UDP)

ネットワーク接続状態(ESTABLISHED)の存在が確認できる。
LISTEN(接続オープン要求待ち状態)も確認できる。
netstatコマンドはその他いろいろ機能があるが割愛。
  
sarを使ってCPU,Network,Memory,Diskをモニタする。
まずはダウンロードと設定。
$ sudo aptitude install sysstat
$ cp /etc/default/sysstat sysstat_org
$ vim /etc/default/sysstat
(変更点のdiffは以下のとおり)
9c9,10
< ENABLED="false"
---
> # ENABLED="false"
> ENABLED="true"

$ /etc/init.d/sysstat restart

よし、使ってみる。
ディスクI/Oの使用状況を見てみる。
$ sar -b 1 2
02:19:11 AM tps rtps wtps bread/s bwrtn/s
02:19:12 AM 2.00 0.00 2.00 0.00 48.00
02:19:13 AM 0.00 0.00 0.00 0.00 0.00
Average: 1.00 0.00 1.00 0.00 24.00


パラメータの見方は以下のとおり。
tps 1秒あたりの転送 (デバイスに対するIOリクエスト) 数の合計。
rtps 1秒あたりの読み込みIOリクエストの回数の合計。
wtps 1秒あたりの書き込みIOリクエストの回数の合計。
bread/s 1秒あたりの(ブロック単位)読み込みIOリクエストのデータ量の合計。
bwrtn/s 1秒あたりの(ブロック単位)書き込みIOリクエストのデータ量の合計。


ブロックデバイス単位で表示。
$ sar -d 1 2
02:18:06 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
02:18:07 AM dev202-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
02:18:07 AM dev202-16 9.00 0.00 72.00 8.00 0.00 0.00 0.00 0.00
02:18:07 AM dev202-32 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

02:18:07 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
02:18:08 AM dev202-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
02:18:08 AM dev202-16 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
02:18:08 AM dev202-32 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

Average: DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
Average: dev202-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev202-16 4.50 0.00 36.00 8.00 0.00 0.00 0.00 0.00
Average: dev202-32 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00


ググりまくり。
rd_sec/s 1秒当たり読み込みIOリクエストのセクタ単位(512 バイト)のデータ量
wr_sec/s 1秒当たり書き込みIOリクエストのセクタ単位(512 バイト)のデータ量
avgrq-sz:デバイスへのIOリクエストの平均サイズ(セクタ)
avgqu-sz:デバイスへのIOリクエストのキュー(待ち行列)の平均サイズ
await:デバイスへのIOリクエストの平均待ち時間(ミリ秒)。キューにいる時間+処理時間。
svctm:デバイスへのIOリクエストの平均処理時間(ミリ秒)。
%util:デバイスへのIOリクエスト期間CPUの使用率(デバイス関連部分)。

ブロックデバイスが3つあるってことかなぁ??

vmstat
メモリ状態を単位Mで表示。
$ vmstat -S M 1 1
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
0 0 0 108 246 6681 0 0 2 6 0 0 0 0 100 0


メモリのアクティブ/非アクティブ
$ vmstat -a -S M  1 1
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free inact active si so bi bo in cs us sy id wa
1 0 0 111 3210 3758 0 0 2 6 0 0 0 0 100 0


ディスク情報
$ vmstat -d 
disk- ------------reads------------ ------------writes----------- -----IO------
total merged sectors ms total merged sectors ms cur sec
ram0 0 0 0 0 0 0 0 0 0 0
ram1 0 0 0 0 0 0 0 0 0 0
ram2 0 0 0 0 0 0 0 0 0 0
ram3 0 0 0 0 0 0 0 0 0 0
ram4 0 0 0 0 0 0 0 0 0 0
ram5 0 0 0 0 0 0 0 0 0 0
ram6 0 0 0 0 0 0 0 0 0 0
ram7 0 0 0 0 0 0 0 0 0 0
ram8 0 0 0 0 0 0 0 0 0 0
ram9 0 0 0 0 0 0 0 0 0 0
ram10 0 0 0 0 0 0 0 0 0 0
ram11 0 0 0 0 0 0 0 0 0 0
ram12 0 0 0 0 0 0 0 0 0 0
ram13 0 0 0 0 0 0 0 0 0 0
ram14 0 0 0 0 0 0 0 0 0 0
ram15 0 0 0 0 0 0 0 0 0 0
loop0 0 0 0 0 0 0 0 0 0 0
loop1 0 0 0 0 0 0 0 0 0 0
loop2 0 0 0 0 0 0 0 0 0 0
loop3 0 0 0 0 0 0 0 0 0 0
loop4 0 0 0 0 0 0 0 0 0 0
loop5 0 0 0 0 0 0 0 0 0 0
loop6 0 0 0 0 0 0 0 0 0 0
loop7 0 0 0 0 0 0 0 0 0 0
xvda1 237851 3600 15083058 1055860 1814752 284505 16794800 1254800 0 421
xvdb 1080162 3932 88461358 3379790 20596469 12874430 267785120 141905020 0 6386
xvdc 169 6 1388 30 0 0 0 0 0 0

パラメータの見方はman vmstatにまかせた。

参考:
 基礎から学ぶWindowsネットワーク 第15回
 ホストのネットワーク統計や状態を確認する 
 netstatコマンドを使いこなす
 Linux入門 iostatコマンド - I/Oの利用状況確認
 Linux入門 sarコマンド - CPU・ネットワーク・メモリ・ディスク情報確認
関連記事
スポンサーサイト

コメントの投稿

管理者にだけ表示を許可する

コメント

プロフィール

kumagonjp2

Author:kumagonjp2
Python,Django,R,Mongo,MySQL,Struts,Spring,データマイニングなどサーバー関係のメモを残していきます。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
雪が3Dで降るブログパーツ ver2

マウスで見る方向変えられます

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。