[root@FS1 ~]# time dd if=/mnt/md2/nbd/ak1.nbd of=/mnt/md4/nfs/ak1.nbd bs=1M 10240+0 records in 10240+0 records out real 3m14.281s user 0m0.036s sys 1m1.980s3玉RAID5から 4玉RAID0へローカルで読み書き10GB(10*1024^3)
[root@FS1 ~]# time dd if=/dev/zero of=/mnt/md4/nfs/aikenn3.nbd bs=1M count=10240 10240+0 records in 10240+0 records out real 0m59.078s user 0m0.044s sys 0m41.355s [root@FS1 ~]# time dd if=/dev/zero of=/mnt/md5/nfs/ak3.nbd bs=1M count=10240 10240+0 records in 10240+0 records out real 3m3.873s user 0m0.044s sys 0m39.758sと約 181MB/secくらい書き込みでも出てますが、同じ4玉を使ったRAID5だと その約1/3です。sata_silじゃなくて chipsetが内蔵している sata_nvに4玉つないだ場合も計測したいところ…
[root@FS1 DriverInstall]# hdparm -ft /dev/sdd /dev/sdd: Timing buffered disk reads: 184 MB in 3.00 seconds = 61.33 MB/sec [root@FS1 DriverInstall]# hdparm -ft /dev/md4 /dev/md4: Timing buffered disk reads: 566 MB in 3.00 seconds = 188.40 MB/sec [root@FS1 DriverInstall]# hdparm -ft /dev/md5 /dev/md5: Timing buffered disk reads: 426 MB in 3.01 seconds = 141.43 MB/sec [root@FS1 DriverInstall]#PCIe x1に接続した sata_sil、sil3132 2本に2本ずつ接続して 素とRAID0と5でhdparm。
eth1: SK-9E22 10/100/1000Base-T Dual Port Server Adapter PrefPort:A RlmtMode:Check Link State eth2: SK-9E22 10/100/1000Base-T Dual Port Server Adapter PrefPort:B RlmtMode:Dual Check Link StatePCIe x4な GbEとあわせてどのくらいいけるか確かめたいところヽ(´ー`)ノ
sendmail(´ー`)アプデート必要
http://www.sendmail.com/company/advisory/index.shtml
http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-0058
詳細は ** RESERVED ** ですね(;´Д`)patch眺めてると 何となくこの辺りかなーってのが見えますが。
何はともあれ兎に角入替えろということで。
こんな生活できるのはあと何年くらいだろうねヽ(´ー`)ノ
[root@ns2 root]# tcpdump -i br0 igmp tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on br0, link-type EN10MB (Ethernet), capture size 96 bytes 20:18:27.106738 IP 192.168.25.108 > 224.0.0.251: igmp v2 report 224.0.0.251 20:35:58.102648 IP 192.168.25.108 > ALL-ROUTERS.MCAST.NET: igmp leave 224.0.0.251 20:36:12.592447 IP 192.168.25.108 > 224.0.0.251: igmp v2 report 224.0.0.251朝から眺めててこの1件だけだったりするし、uClinux/H8でigmpは要らないだろ~ということで、kernelのソースからの削除作業にいつか挑戦したいところ。少なくとも20kbくらいは小さくなりそうだし(´ー`)。しかし結構 IPv4のkernel中に根深く(ip_mc_* な関数として)埋まっているので単純にリンクしないようにするだけでは外せないのが辛いところ。
某所にてMS_Access用に PostgreSQLで稼動してる箱にpgpool投入ヽ(´ー`)ノ二重化
ということで、pgpoolを安全側に倒して入れてみたんですが、SEQUENCE多用してたり ODBCドライバの先にあるし…で pgpoolの運用は極度に安全側に倒してインストール(;´Д`)。案の定ですが「今日は重い!(゚Д゚)」「凄く時間がかかって(゚Д゚)ストレスですね」と不評バンバン(;´Д`)
ある程度予想はしてたんですが、こちらで書いてないプログラムで処理時間3秒~5秒かかってたのが7秒~10秒程度かかるようになってしまったらしく我慢できるトコできないトコの境界を超えてしまったらしく敗北。元に戻して対策を練ることに…こちらで書いてないプログラムなので流されてるSQLみてindex追加かPostgreSQL自体の最適化くらいしか手が無いかもしれず。
ODBCの向こう側でSQL生成されててコントロールしにくい箇所も多数あるシステムだし、クライアント数も40台くらいが同時アクセスと結構マトモな業務系で、サーバのloadavgも そろそろ1.00超えそうな危険水域だったので取りあえず元の状態に戻して・・・と後ろ向き(;´Д`)
SQLのチューニングを更に全体的に入れていけばloadavgも小さめに押さえることも出来て、応答時間も速くなるだろうからこの方向で進めるしかないかなあ…と考えつつ mrtg入れて通常業務時の負荷ログ取ることにして撤退(;´Д`)リベンジ予定
あと、pgpoolで接続してる2台のDBの片方のPostgreSQLのプロセスをkillall(pgpoolが接続してるので pg_ctlでは落ちない)かけたところ pgpoolがクライアントとの接続を一旦きってしまったらしく、各所でODBCドライバのエラーがバリバリ発生して苦情バンバン(;´Д`)電話が鳴りまくり。このへん設定で色々可能かもしれないので、まあコレも含めて差戻し再検討になったりして(;´Д`)敗走
もう一つの解としては、SEQとか使用している箇所についてだけSELECT時二重化…ですな。こっちだと逆に検索時の負荷分散も可能だし。ということで、まだまだこの話は続くのです(´ー`)
ls -lR |grep '.o$'|sort -n --key=5等で適当に *.oのサイズと名前を眺めつつ、これなくても大丈夫じゃないの?というのを削り落とし。で procfsステ(;´Д`)。procfsとかオイラが小学校入った頃には無かったと思うし、今の小学生は過保護で遺憾…というわけでもないんですが、ioctl叩いたり kernel直覗きで拾えるならイランだろ~どうせ psも netstatも入れないんだし(予定)…とか。
-rwxr-xr-x 1 root root 1073382 Mar 2 22:53 linux -rwxr-xr-x 1 root root 679440 Mar 2 22:53 linux.binさっきより30KB程度小さくなったかなヽ(´ー`)ノ他にも igmp.oとか要らなさそうなのが在るのでコレも追い出し予定。贅沢は敵(´ー`)なのです。
#if __GNUC__ == 3 #if __GNUC_MINOR__ >= 1 # define inline __inline__ __attribute__((always_inline)) # define __inline__ __inline__ __attribute__((always_inline)) # define __inline __inline__ __attribute__((always_inline)) #endif #elif __GNUC__ == 4 # define inline __inline__ __attribute__((always_inline)) # define __inline__ __inline__ __attribute__((always_inline)) # define __inline __inline__ __attribute__((always_inline)) #endifと書き換えて対応。元は __GNUC__ == 3 だけの記述だったので抜け落ちたようです。もちろんinlineじゃなくて大丈夫~ だとベターなんですが(-Osの場合)。
-rwxr-xr-x 1 root root 1133688 Mar 2 20:59 linux -rwxr-xr-x 1 root root 713656 Mar 2 20:59 linux.binあんまり小さくなってないねえ(;´Д`)約9KB減、約1.3%くらいですかね
#ifdef __KERNEL_SYSCALLS__ /* * we need this inline - forking from kernel space will result * in NO COPY ON WRITE (!!!), until an execve is executed. This * is no problem, but for the stack. This is handled by not letting * main() use the stack at all after fork(). Thus, no function * calls - which means inline code for fork too, as otherwise we * would use the stack upon exit from 'fork()'. * * Actually only pause and fork are needed inline, so that there * won't be any messing with the stack from main(), but we define * some others too. */と書いてるわけなんですよね。で、上記dupの件発見したのは gcc-3.4.5と gcc-4.0.2で吐かれた init/main.c のバイナリを objdump -D して眺めていたのが元です(;´Д`) あれ?こっち(3.4.5)は dupをインラインで吐いてるけどこっち(4.0.2)はサブルーチン化してる~ 賢いな 4.0.2トカ(;´Д`)
gcc-4.0.2 [root@FS1 linux-2.4.32]# ls -l linux linux.bin -rwxr-xr-x 1 root root 1070537 Mar 1 22:08 linux -rwxr-xr-x 1 root root 663768 Mar 1 22:08 linux.bin gcc-3.4.5 [root@FS1 linux-2.4.32]# ls -l linux linux.bin -rwxr-xr-x 1 root root 1134600 Mar 2 03:57 linux -rwxr-xr-x 1 root root 722568 Mar 2 03:57 linux.bin圧倒的じゃないか(;´Д`)
[root@ns root]# grep archives/000296.html /var/log/httpd/www.lancard.com-access_log.20060301 85.255.113.183 - - [01/Mar/2006:00:07:08 +0900] "GET /archives/000296.html HTTP/1.1" 200 12989 "http://www.google.com/search?hl=en&q=inurl%3A%22archives%2F000296%2Ehtml%22&hl=en&lr=en&start=google_page&num=100&sa=N&filter=0" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.183 - - [01/Mar/2006:00:07:09 +0900] "POST /mt/mt-comments.cgi HTTP/1.1" 200 9161 "http://www.lancard.com/archives/000296.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.183 - - [01/Mar/2006:00:07:11 +0900] "GET /archives/000296.html HTTP/1.1" 200 12989 "http://www.lancard.com/archives/000296.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.182 - - [01/Mar/2006:00:22:02 +0900] "GET /archives/000296.html HTTP/1.1" 200 12989 "http://www.google.com/search?hl=en&q=inurl%3A%22archives%2F000296%2Ehtml%22&hl=en&lr=en&start=google_page&num=100&sa=N&filter=0" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.182 - - [01/Mar/2006:00:22:03 +0900] "POST /mt/mt-comments.cgi HTTP/1.1" 200 9503 "http://www.lancard.com/archives/000296.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.182 - - [01/Mar/2006:00:22:05 +0900] "GET /archives/000296.html HTTP/1.1" 200 12989 "http://www.lancard.com/archives/000296.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.189 - - [01/Mar/2006:00:35:50 +0900] "GET /archives/000296.html HTTP/1.1" 200 12989 "http://www.google.com/search?hl=en&q=inurl%3A%22archives%2F000296%2Ehtml%22&hl=en&lr=en&start=google_page&num=100&sa=N&filter=0" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.189 - - [01/Mar/2006:00:35:51 +0900] "POST /mt/mt-comments.cgi HTTP/1.1" 200 9635 "http://www.lancard.com/archives/000296.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.189 - - [01/Mar/2006:00:35:53 +0900] "GET /archives/000296.html HTTP/1.1" 200 12989 "http://www.lancard.com/archives/000296.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.182 - - [01/Mar/2006:00:49:22 +0900] "GET /archives/000296.html HTTP/1.1" 200 12989 "http://www.google.com/search?hl=en&q=inurl%3A%22archives%2F000296%2Ehtml%22&hl=en&lr=en&start=google_page&num=100&sa=N&filter=0" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.182 - - [01/Mar/2006:00:49:23 +0900] "POST /mt/mt-comments.cgi HTTP/1.1" 200 9564 "http://www.lancard.com/archives/000296.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.182 - - [01/Mar/2006:00:49:25 +0900] "GET /archives/000296.html HTTP/1.1" 200 12989 "http://www.lancard.com/archives/000296.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.183 - - [01/Mar/2006:01:03:41 +0900] "GET /archives/000296.html HTTP/1.1" 200 12989 "http://www.google.com/search?hl=en&q=inurl%3A%22archives%2F000296%2Ehtml%22&hl=en&lr=en&start=google_page&num=100&sa=N&filter=0" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.183 - - [01/Mar/2006:01:03:41 +0900] "POST /mt/mt-comments.cgi HTTP/1.1" 200 9310 "http://www.lancard.com/archives/000296.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)" 85.255.113.183 - - [01/Mar/2006:01:03:43 +0900] "GET /archives/000296.html HTTP/1.1" 200 12989 "http://www.lancard.com/archives/000296.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en)"checkbox追加したり、ACCEPT_LANGUAGEで絞ったりしてるのでコメントspamについては命中率はほぼ0なんですが、spammerの巣として検出されたIPアドレスは弾きリスト行き(´ー`)