| トップ | Solaris | FreeBSD | Gentoo | CentOS | Fedora | Windows | Tips | 自宅サーバの動作確認 | サイト内検索(Namazu) | サイト内検索(HE) |
サーバの状態を確認する為に、ネットワークトラフィック監視ツールを導入する。
「Net-SNMP」を導入したら、次に「MRTG」を導入する。
なお、ここではサーバのIPアドレスが192.168.0.2であるものとする。
また、CPUやメモリ等の情報も監視しているが、HDDが「S.M.A.R.T.」に対応しており、温度を取得できる場合、
こちらの方法でHDDの温度も監視することが出来る。
Gentoo ~ # emerge mrtg |
Gentoo ~ # mkdir /etc/mrtg <= 設定ファイル用のディレクトリを作成
Gentoo ~ # cfgmaker --ifref=descr --ifdesc=descr public@192.168.0.2 > /etc/mrtg/mrtg.conf <= 設定ファイルの作成
Gentoo ~ # vi /etc/mrtg/mrtg.conf <= 設定ファイルの編集
# WorkDir: /home/http/mrtg
↓
WorkDir: /var/www/localhost/mrtg <= MRTGによる編集結果HTML格納先ディレクトリ
# Options[_]: growright, bits
↓
Options[_]: growright, noinfo <= グラフの左側を過去にする
EnableIPv6: no
Refresh: 300 <= 追加(ブラウザで表示したままの時のリフレッシュ間隔)
Language: eucjp <= 追加(日本語化)
[ ]内の部分を変更
Target[192.168.0.2_eth0]: \eth0:public@192.168.0.2:
SetEnv[192.168.0.2_eth0]: MRTG_INT_IP="192.168.0.2" MRTG_INT_DESCR="eth0"
MaxBytes[192.168.0.2_eth0]: 12500000
Title[192.168.0.2_eth0]: eth0 -- Gentoo.crimson-snow.net
PageTop[192.168.0.2_eth0]: <H1>eth0 -- Gentoo.crimson-snow.net</H1>
↓
Target[eth0]: \eth0:public@192.168.0.2:
SetEnv[eth0]: MRTG_INT_IP="192.168.0.2" MRTG_INT_DESCR="eth0"
MaxBytes[eth0]: 12500000
Title[eth0]: eth0 -- Gentoo.crimson-snow.net
PageTop[eth0]: <H1>eth0 -- Gentoo.crimson-snow.net</H1>
余計なものを表示させない為、以下の行を削除、またはコメントアウト
<div id="sysdetails">
<table>
<tr><td>System:</td> <td>Gentoo.crimson-snow.net in Home Server</td></tr>
<tr><td>Maintainer:</td> <td>kaz <kaz@crimson-snow.net></td></tr>
<tr><td>Description:</td><td>eth0 </td></tr>
<tr><td>ifType:</td> <td>ethernetCsmacd (6)</td></tr>
<tr><td>ifName:</td> <td></td></tr>
<tr><td>Max Speed:</td> <td>1250.0 kBytes/s</td></tr>
<tr><td>Ip:</td> <td>192.168.0.2 (crimson-snow.net)</td></tr>
</table>
</div>
ここまで
CPU使用率表示の為に以下を追加
### CPU Load Average ###
Target[cpu]: .1.3.6.1.4.1.2021.10.1.5.1&.1.3.6.1.4.1.2021.10.1.5.2:public@192.168.0.2
MaxBytes[cpu]: 100
Unscaled[cpu]: dwmy
Options[cpu]: gauge, absolute, growright, noinfo, nopercent
YLegend[cpu]: CPU Load(%)
ShortLegend[cpu]: (%)
LegendI[cpu]: 1minuteAVG
LegendO[cpu]: 5minuteAVG
Legend1[cpu]: 1minuteAVG(%)
Legend2[cpu]: 5minuteAVG(%)
Title[cpu]: Use rate of CPU
PageTop[cpu]: <H1>Use rate of CPU</H1>
空きメモリ量を表示する為に以下を追加
なお、物理メモリとスワップメモリのMAX値の調べ方は後述
### Memory Free ####
Target[mem]: .1.3.6.1.4.1.2021.4.6.0&.1.3.6.1.4.1.2021.4.4.0:public@192.168.0.2
MaxBytes1[mem]: 385724 <= 物理メモリのMAX値
MaxBytes2[mem]: 2097144 <= スワップメモリのMAX値
Unscaled[mem]: dwmy
Options[mem]: gauge, absolute, growright, noinfo
YLegend[mem]: Mem Free(Bytes)
ShortLegend[mem]: Bytes
kilo[mem]: 1024
kMG[mem]: k,M,G,T,P
LegendI[mem]: Real
LegendO[mem]: Swap
Legend1[mem]: Real Free[MBytes]
Legend2[mem]: Swap Free[MBytes]
Title[mem]: Free Memory
PageTop[mem]: <H1>Free Memory</H1>
ディスク使用率を表示する為に以下を追加
### Disk Used ####
Target[disk]: .1.3.6.1.4.1.2021.9.1.9.1&.1.3.6.1.4.1.2021.9.1.9.1:public@192.168.0.2
MaxBytes[disk]: 100
Unscaled[disk]: dwmy
Options[disk]: gauge, absolute, growright, nopercent, noinfo
YLegend[disk]: Disk Used(%)
ShortLegend[disk]: (%)
LegendI[disk]: / Disk used
LegendO[disk]: / Disk used
Legend1[disk]: / Disk used
Legend2[disk]: / Disk used
Title[disk]: Use rate of /
PageTop[disk]: <H1>Use rate of /</H1>
/home を別パーティションにしている場合には「Net-SNMP」の設定に合わせ、
ディスク使用率を表示する為に以下を追加
### /home Disk Used ####
Target[home]: .1.3.6.1.4.1.2021.9.1.9.2&.1.3.6.1.4.1.2021.9.1.9.2:public@192.168.0.2
<= 末尾の数字を上記の / より1増やす
MaxBytes[home]: 100
Unscaled[home]: dwmy
Options[home]: gauge, absolute, growright, nopercent, noinfo
YLegend[home]: Disk Used(%)
ShortLegend[home]: (%)
LegendI[home]: /home Disk used
LegendO[home]: /home Disk used
Legend1[home]: /home Disk used
Legend2[home]: /home Disk used
Title[home]: Use rate of /home
PageTop[home]: <H1>Use rate of /home</H1>
|
物理メモリとスワップメモリのMAX値の調べ方
Gentoo ~ # free
total used free shared buffers cached
Mem: 385724 374652 11072 0 99376 156820
↑ 物理メモリMAX値
-/+ buffers/cache: 118456 267268
Swap: 2097144 208 2096936
↑ スワップメモリMAX値
|
Solaris# mkdir /var/www/localhost/mrtg |
「Apache」の設定
編集結果HTML格納先ディレクトリにアクセスする為に「Apache」の設定ファイルを編集する。
また、このディレクトリのアクセス権も設定する。
Gentoo ~ # vi /etc/apache2/httpd.conf <= 設定ファイルの編集
Alias /mrtg "/var/www/localhost/mrtg"
内部からのみ許可する場合
<Location /mrtg>
Order deny,allow
Deny from All
Allow from 127.0.0.1
Allow from 192.168.0
Allow from ::1
</Location>
ここまで
外部からも許可する場合
<Location /mrtg>
Order deny,allow
Deny from All
Allow from All
Allow from ::1
</Location>
ここまで
Gentoo ~ # /etc/init.d/apache2 reload <= 設定の反映
|
「MRTG」は起動時に過去2回のログを使用する為、mrtg.confの修正後、2回目まで起動時にWARNINGが出る。
その為、mrtg.confの修正を行った場合、3回起動する。
Gentoo ~ # mrtg /etc/mrtg/mrtg.conf |
Gentoo ~ # indexmaker --columns=1 --addhead="<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=euc-jp\">" \ /etc/mrtg/mrtg.conf > /var/www/localhost/mrtg/index.html |
ネットワークトラフィック状況監視画面
http://サーバのIPアドレス/mrtg/eth0.html
CPU使用率監視画面
http://サーバのIPアドレス/mrtg/cpu.html
空きメモリ量監視画面
http://サーバのIPアドレス/mrtg/mem.html
ディスク使用率監視画面確認
http://サーバのIPアドレス/mrtg/disk.html
MRTGインデックス画面
http://サーバのIPアドレス/mrtg/
「MRTG」を定期的に実行する場合、cronによる実行とデーモンモードで起動して実行する方法がある。
cronによる自動実行
cronに登録して定期的に実行する。
Gentoo ~ # crontab -e <= cronの編集 */5 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.conf |
デーモンモードで起動しての実行
デーモンモードで起動する場合、設定ファイルの編集等を行う。
「MRTG」の設定
Gentoo ~ # vi /etc/mrtg/mrtg.conf <= 設定ファイルの編集 RunAsDaemon:Yes <= 追加 Interval:5 <= 5分毎にデータを収集する |
実行ユーザ・グループの作成
root権限で「MRTG」を実行する必要は無いので、専用のユーザ・グループを作成する。
Gentoo ~ # useradd mrtg <= 「MRTG」の実行ユーザを作成 |
「MRTG」の実行ユーザで出力先ディレクトリに書き込めるよう、権限を変更する。
Gentoo ~ # chown -R mrtg.mrtg /var/www/localhost/mrtg <= 編集結果HTML格納先ディレクトリのオーナを変更 Gentoo ~ # chown -R mrtg.mrtg /etc/mrtg <= ロックファイル作成ディレクトリのオーナを変更 |
起動用設定ファイルの編集
Gentoo ~ # vi /etc/conf.d/mrtg <= 設定ファイルの編集 #MRTG_CONF="/etc/mrtg.conf" ↓ MRTG_CONF="/etc/mrtg/mrtg.conf" <= 変更(設定ファイルを指定) #MRTG_USER="" ↓ MRTG_USER="mrtg" <= 変更(「MRTG」の実行ユーザを指定) #MRTG_GROUP="" ↓ MRTG_GROUP="mrtg" <= 変更(「MRTG」の実行グループを指定) #MRTG_LOG="/var/log/mrtg.log" ↓ MRTG_LOG="/var/www/localhost/mrtg.log" <= 変更(ログをとる場合、ログファイルを指定) |
「MRTG」の起動
Gentoo ~ # /etc/init.d/mrtg start |
「MRTG」の自動起動
Gentoo ~ # rc-update add mrtg default |