2007-06-27 :-)
_ ロディアのメモ帳
尽きたので次のメモ帳を補充しました。
_ 「なぜそんなにもWikiは重要なのか」(PDF)
( via 角谷さんのところ )
あう。
パターンランゲージじゃなくてパタンランゲージなんですね。
江渡浩一郎さんと言えば「qwikweb のひと」「Software Design の 『wiki つまみぐい』に名前があったひと」という認識しかありませんでした。オブジェクト倶楽部[ 2007-06-20 ]での講演では wiki と建築業界の話題がありました。ソフトウェアを作るときの「ビルド( build )」という言葉は建築業界を連想させます。
_ [zsh]指定したディレクトリ以下の Makefile 以外のファイルを削除する
zsh
% find /foo/bar/baz -type f | while read f; do if [ `basename $f` != "Makefile" ]; then rm $f fi done
ものすごく遅いです。basename が影響してるのかしら。ファイル名にマッチさせる部分は正規表現を使えそうな気がするのだけどよく分かりませんでした。
_ [NetBSD][httpd][アクセス拒否][Load Average]Load Average が高い
現象
こんな。
% top -d1 load averages: 2.72, 3.22, 3.60 19:44:11 55 processes: 54 sleeping, 1 on processor CPU states: % user, % nice, % system, % interrupt, % idle Memory: 290M Act, 247M Inact, 4024K Wired, 12M Exec, 489M File, 211M Free Swap: 128M Total, 128M Free PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND 17 root 18 0 0K 179M syncer 68:12 0.00% 0.00% [ioflush] 18 root -18 0 0K 179M aiodoned 3:31 0.00% 0.00% [aiodoned] 199 root 18 0 1180K 3280K pause 2:16 0.00% 0.00% ntpd 6994 www -4 0 7924K 3120K semwait 1:00 0.00% 0.00% httpd 16192 www -4 0 10M 3348K semwait 0:59 0.00% 0.00% httpd 19106 www -4 0 7780K 5836K semwait 0:58 0.00% 0.00% httpd 856 root 2 0 1124K 2060K select 0:55 0.00% 0.00% sendmail 16081 www 2 0 7120K 3004K poll 0:54 0.00% 0.00% httpd 21414 www -4 0 7888K 7072K semwait 0:54 0.00% 0.00% httpd 24878 www -4 0 7180K 6988K semwait 0:52 0.00% 0.00% httpd 8777 www -4 0 7828K 2988K semwait 0:52 0.00% 0.00% httpd 20441 www -4 0 7220K 7064K semwait 0:51 0.00% 0.00% httpd 25835 www -4 0 7808K 6964K semwait 0:51 0.00% 0.00% httpd 28749 www -4 0 7228K 3008K semwait 0:50 0.00% 0.00% httpd 860 root 2 0 300K 684K select 0:41 0.00% 0.00% sshd 18457 root 2 0 6148K 8044K select 0:12 0.00% 0.00% httpd 407 root 2 0 188K 408K kqread 0:11 0.00% 0.00% syslogd 317 tinydns 2 0 160K 236K netio 0:11 0.00% 0.00% tinydns 173 root 2 0 192K 352K select 0:08 0.00% 0.00% master 378 dnslog 2 0 60K 340K piperd 0:04 0.00% 0.00% logger 16 root -18 0 0K 179M pgdaemon 0:04 0.00% 0.00% [pagedaemon] 1020 root 10 0 268K 416K nanoslee 0:03 0.00% 0.00% cron 3512 rin 2 0 1116K 1372K select 0:02 0.00% 0.00% screen-4.0.3 22987 rin 3 0 788K 804K ttyin 0:01 0.00% 0.00% zsh 224 postfix 2 0 228K 444K select 0:01 0.00% 0.00% qmgr 22939 rin 28 0 156K 872K CPU 0:00 0.00% 0.00% top 5219 rin 18 0 492K 2124K pause 0:00 0.00% 0.00% zsh 26228 rin 18 0 500K 1776K pause 0:00 0.00% 0.00% zsh 19437 rin 18 0 436K 1224K pause 0:00 0.00% 0.00% screen-4.0.3 2 root 14 0 0K 179M crypto_w 0:00 0.00% 0.00% [cryptoret]
結論
httpd の負荷が高いのかしら。先日設定したアドレス[ 2007-06-23 ]にアドレス範囲を指定してなかったので /usr/pkg/etc/httpd/deny-us.conf を用意して以下を書きました。しばらく様子を見てます。
<Limit GET POST> Order allow,deny Allow from all Deny from 67.159.0.0/18 Deny from 64.124.0.0/14 Deny from 208.36.0.0/15 </Limit> </Directory>
作業ログ
せっかくだから sysstat してみました。
ref. Chapter17.Tuning NetBSD - 17.3.2. The sysstat utility
% sysstat all /0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10 Load Average ||||||| /0 /10 /20 /30 /40 /50 /60 /70 /80 /90 /100 <idle> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
/usr が多い?
% sysstat bufcache /0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10 Load Average |||||||| 34715 metadata buffers using 118782 kBytes of memory (12%). 125055 pages for cached file data using 500220 kBytes of memory (51%). 3272 pages for executables using 13088 kBytes of memory ( 1%). 52414 pages for anon (non-file) data 209656 kBytes of memory (21%). 52962 free pages 211848 kBytes of memory (21%). File System Bufs used % kB in use % Bufsize kB % Util % /usr 32181 92 101778 86 102076 86 100 /home 2127 6 14598 12 14788 12 99 /var 314 0 1264 1 1266 1 100 / 92 0 634 1 636 1 100 Total: 34714 99 118274 100 118766 100 100
んふ?
% sysstat iostat /0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10 Load Average ||||||| /0 /10 /20 /30 /40 /50 /60 /70 /80 /90 /100 CPU user| nice| system| interrupt|X idle|XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX /0 /10 /20 /30 /40 /50 /60 /70 /80 /90 /100 md0 kBps| tps| wd0 kBps|X tps| cd0 kBps| tps|
http のアクセスが多いっす。
% sysstat netstat /0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10 Load Average |||||| Local Address Foreign Address Proto Recv-Q Send-Q (state) fe80:1::217:31ff.ntp *.* udp6 0 0 localhost.ntp *.* udp6 0 0 fe80:2::1.ntp *.* udp6 0 0 localhost.smtp *.* tcp6 0 0 LISTEN hitomi.area51.gr.domain*.* udp 0 0 hitomi.area51.gr.ntp *.* udp 0 0 localhost.ntp *.* udp 0 0 localhost.smtp *.* tcp 0 0 LISTEN hitomi.area51.gr.ssh sumire.area51.gr.1191 tcp 0 0 ESTABLISHED hitomi.area51.gr.http ntsitm052211.sit.32253 tcp 0 0 TIME_WAIT hitomi.area51.gr.http ip-122-152-129-1.47672 tcp 0 0 TIME_WAIT hitomi.area51.gr.http rz502291.inktomi.38259 tcp 0 0 TIME_WAIT hitomi.area51.gr.http livebot-65-55-20.29902 tcp 0 0 TIME_WAIT hitomi.area51.gr.http ip-122-152-129-6.41018 tcp 0 0 TIME_WAIT hitomi.area51.gr.http livebot-65-55-20.30024 tcp 0 0 TIME_WAIT hitomi.area51.gr.http rz502290.inktomi.40232 tcp 0 0 TIME_WAIT hitomi.area51.gr.58230 210.188.216.246.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58229 210.188.204.58.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58228 210.188.216.246.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58227 210.188.204.58.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58226 210.188.216.246.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58225 210.188.204.58.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58224 210.188.216.246.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58223 210.188.204.58.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58222 210.188.216.246.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58221 210.188.204.58.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58220 210.188.216.246.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58219 210.188.204.58.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58218 210.188.216.246.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58217 210.188.204.58.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58216 210.188.216.246.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58215 210.188.204.58.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58214 210.188.216.246.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58213 210.188.204.58.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58212 210.188.216.246.http tcp 0 0 TIME_WAIT hitomi.area51.gr.58211 210.188.204.58.http tcp 0 0 TIME_WAIT
www ががんばってる?
% sysstat ps /0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10 Load Average ||||||||||||||| USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND www 13950 70.7 2.6 25420 26220 ?? R 10:06PM 0:01.78 ruby /home/rin/public_html/diary/index. root 17 0.0 17.1 0 173400 ?? DL 31May07 68:31.79 [ioflush] root 199 0.0 0.3 1180 3280 ?? Ss 31May07 2:17.98 /usr/sbin/ntpd root 407 0.0 0.1 188 520 ?? Is 31May07 0:11.60 /usr/sbin/syslogd -s www 23581 0.0 0.0 0 0 ?? ZW 1Jan70 0:00.00 (ruby18) root 0 0.0 17.1 0 173400 ?? DLs 31May07 0:00.54 [swapper] root 1 0.0 0.0 72 220 ?? Is 31May07 0:00.88 init root 2 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [cryptoret] root 3 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus0] root 4 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus1] root 5 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus2] root 6 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus3] root 7 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus4] root 8 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus5] root 9 0.0 17.1 0 173400 ?? DL 31May07 0:00.20 [usb0] root 10 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [usbtask] root 11 0.0 17.1 0 173400 ?? DL 31May07 0:00.13 [usb1] root 12 0.0 17.1 0 173400 ?? DL 31May07 0:00.19 [usb2] root 13 0.0 17.1 0 173400 ?? DL 31May07 0:00.09 [usb3] root 14 0.0 17.1 0 173400 ?? DL 31May07 0:00.23 [usb4] root 15 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atapibus0] root 16 0.0 17.1 0 173400 ?? DL 31May07 0:05.59 [pagedaemon] rin 21436 0.0 0.2 712 1536 p3 R+ 10:06PM 0:00.02 sysstat ps root 18 0.0 17.1 0 173400 ?? DL 31May07 3:33.31 [aiodoned] postfix 6493 0.0 0.1 192 968 ?? S 10:06PM 0:00.00 pickup -l -t unix -u tinydns 317 0.0 0.0 160 236 E0- I 31May07 0:11.99 /usr/pkg/bin/tinydns dnslog 378 0.0 0.0 60 340 E0- I 31May07 0:04.34 logger -t nbtinydns -p daemon.info root 703 0.0 0.0 1044 300 ?? Is 31May07 0:00.34 /usr/sbin/dhcpd -q vr0 root 860 0.0 0.1 300 972 ?? Is 31May07 0:41.79 /usr/sbin/sshd www 25963 0.0 0.4 6576 3568 ?? S 8:27PM 0:01.09 /usr/pkg/sbin/httpd -k start root 173 0.0 0.0 192 420 ?? Ss 31May07 0:08.57 /usr/libexec/postfix/master root 1083 0.0 0.0 88 280 ?? Is 31May07 0:00.02 /usr/sbin/inetd -l root 1020 0.0 0.0 268 420 ?? Is 31May07 0:03.71 /usr/sbin/cron postfix 224 0.0 0.0 228 444 ?? I 31May07 0:01.08 qmgr -l -t unix -u root 228 0.0 0.0 56 4 E0 IWs 31May07 0:00.00 /usr/libexec/getty Pc console root 230 0.0 0.0 56 4 E1 IWs 31May07 0:00.00 /usr/libexec/getty Pc ttyE1
はて?
apache httpd のログを見てみます。
% grep "27/Jun/2007" /var/log/httpd/access_log | awk '{ print $1}' | sort | uniq -c | sort -nr | head 4294 67.159.44.231 4231 64.124.85.214 2149 133.9.238.98 1259 38.99.13.124 1187 65.55.212.244 1184 122.152.129.6 1182 66.249.67.24 1136 122.152.129.11 985 220.194.55.47 932 222.145.161.158
IPひろば で探してみます。
OrgName: FDC Servers.net, LLC NetRange: 67.159.0.0 - 67.159.63.255 CIDR: 67.159.0.0/18
先日書いた /usr/pkg/etc/httpd/deny-us.conf はこんなでした。IP アドレス 1 つずつです。
<Directory /> <Limit GET POST> Order allow,deny Allow from all Deny from 67.159.44.233 Deny from 208.36.144.9 </Limit> </Directory>
ということでアドレス範囲を指定したわけでした。