2ch特化型サーバ・ロケーション構築作戦のスレッドです。
・2ちゃんねるのサーバロケーション、PIEに関する関連作業・調整事項
・DNS登録・変更まわりの関連作業・調整事項
・2ちゃんねるのサーバで採用しているOS、FreeBSDに関する情報・調整事項
・各種作戦・プロジェクトとの連携、プロジェクト間の連携
等を取り扱います。
現在、複数サーバによる連携により、
サーバ能力のさらなるスケールアップをめざすための「雪だるま作戦」が進行中です。
また、次世代の携帯アクセス環境をめざした「べっかんこ作戦」も稼動しはじめました。
「2ちゃんねる証券取引所」や、「Be」の機能強化等、
2ちゃんねるは今日も変化し続けています。
前スレ:
2ch特化型サーバ・ロケーション構築作戦 Part19
http://qb5.2ch.net/test/read.cgi/operate/1121886018/
2ch特化型サーバ・ロケーション構築作戦 Part20
■ このスレッドは過去ログ倉庫に格納されています
1root▲ ★
NGNG372root▲ ★
2006/03/08(水) 01:45:11ID:???0 …しかし、>>370 なんてできるんだろうか。
それはとりあえず、おいておいて。
状況をダンプ。
まず、pfsync は確かに必要ありませんでした。
CARP だけで、ちゃんと VRRP のパケット出して通信できているっぽい。
で、CARP でサービス用IPアドレスを carp1 とかにつけると、
こういう状態になる。
fxp0: 206.223.150.95
carp1: 206.223.150.96
しかし、この状態において 206.223.150.96 宛てのIPパケットは、
carp1 ではなく、fxp0 I/F に到着する。
つまり、206.223.150.96 宛てのパケットは、
tcpdump -i carp1 では何一つ拾うことはできなくて、
tcpdump -i fxp0 としなければならない。
ということで、pcap でパケットを拾う場合も、
carp1 からではなくて、fxp0 から拾わなければならない。
しかしどうも、matd は carp1 からパケットを拾おうとしているらしく(自然な動作ですが)、
何一つ拾い上げてくれないので、当然 matd は今のままでは動かない。
それはとりあえず、おいておいて。
状況をダンプ。
まず、pfsync は確かに必要ありませんでした。
CARP だけで、ちゃんと VRRP のパケット出して通信できているっぽい。
で、CARP でサービス用IPアドレスを carp1 とかにつけると、
こういう状態になる。
fxp0: 206.223.150.95
carp1: 206.223.150.96
しかし、この状態において 206.223.150.96 宛てのIPパケットは、
carp1 ではなく、fxp0 I/F に到着する。
つまり、206.223.150.96 宛てのパケットは、
tcpdump -i carp1 では何一つ拾うことはできなくて、
tcpdump -i fxp0 としなければならない。
ということで、pcap でパケットを拾う場合も、
carp1 からではなくて、fxp0 から拾わなければならない。
しかしどうも、matd は carp1 からパケットを拾おうとしているらしく(自然な動作ですが)、
何一つ拾い上げてくれないので、当然 matd は今のままでは動かない。
373root▲ ★
2006/03/08(水) 01:49:10ID:???0 ふうむ、内部的には lo0 みたいな扱いみたいですね。< carpのI/F
%tcpdump -i carp1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on carp1, link-type NULL (BSD loopback), capture size 96 bytes
とか、言ってきます。
で、実際のパケットはcarp1には来なくて、fxp0(物理I/F)にやってくるのか。
ということで、
ifconfig fxp0 alias 206.223.150.96 というのと同じようにふるまうけど、
I/F の名前は carp1 になるってかんじなんですね。
まぁ、だからサービス用の(shared)IPアドレスを作る、
みたいな芸当ができるんでしょうけど。
ということで、本日のところはこれで。
%tcpdump -i carp1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on carp1, link-type NULL (BSD loopback), capture size 96 bytes
とか、言ってきます。
で、実際のパケットはcarp1には来なくて、fxp0(物理I/F)にやってくるのか。
ということで、
ifconfig fxp0 alias 206.223.150.96 というのと同じようにふるまうけど、
I/F の名前は carp1 になるってかんじなんですね。
まぁ、だからサービス用の(shared)IPアドレスを作る、
みたいな芸当ができるんでしょうけど。
ということで、本日のところはこれで。
374root▲ ★
2006/03/08(水) 01:52:26ID:???0 なんか、matd で飛ばした後のパケットみたい。
lo0 についているIPアドレス宛てのパケットなんだけど、
やってくるI/Fはem0からみたいな。
本日はこれで、おやすみなさい。
lo0 についているIPアドレス宛てのパケットなんだけど、
やってくるI/Fはem0からみたいな。
本日はこれで、おやすみなさい。
う〜む......
>>370
>input_if=fxp0
>なんて、matd.cf に書けると、うれしかったりするのかな。
そうできるように修正することは可能だとは思いますが,そうなると別の問題が......
carp1 なら待機中はちゃんとお休みしてくれるのでしょうけど,一方 fxp0 で
パケットキャプチャすると,待機中つまりパケットの転送をしてはならない時まで
パケットを拾って転送してしまうことになるかも知れないですね.その I/F に
対して付されていない IP アドレス宛のパケットをキャプチャするとなると
promiscuous モードにすることになりますが,そうなると全部拾っちゃいますからね.
>>370
>input_if=fxp0
>なんて、matd.cf に書けると、うれしかったりするのかな。
そうできるように修正することは可能だとは思いますが,そうなると別の問題が......
carp1 なら待機中はちゃんとお休みしてくれるのでしょうけど,一方 fxp0 で
パケットキャプチャすると,待機中つまりパケットの転送をしてはならない時まで
パケットを拾って転送してしまうことになるかも知れないですね.その I/F に
対して付されていない IP アドレス宛のパケットをキャプチャするとなると
promiscuous モードにすることになりますが,そうなると全部拾っちゃいますからね.
2006/03/08(水) 07:29:08ID:svlzFNIW0
load balancingしたいなら、これでいけるのでは?
IncomingとOutgoing両方できるみたいだし。
Address Pools and Load Balancing
http://www.openbsd.org/faq/pf/pools.html
IncomingとOutgoing両方できるみたいだし。
Address Pools and Load Balancing
http://www.openbsd.org/faq/pf/pools.html
2006/03/08(水) 07:31:17ID:f67uB7NwO
ファイヤーウォールってパケットの行き先設定出来なかったっけ?
>>376 それは NAT では?
要は carp を使った場合の問題というのは,fxp0 とは別に carp1 などの別 I/F を
用いることになる,しかもそちらではパケットキャプチャが機能しないってことなんですよね.
別 I/F を用いず fxp0 自体でフェイルオーバできればよさそうなんですけど.
で,こういうものもあるようですが......
http://www.freshports.org/net/freevrrpd/
freevrrpd is a VRRP (Virtual Router Redundancy Protocol) implementation
daemon under FreeBSD, NetBSD and OpenBSD.
要は carp を使った場合の問題というのは,fxp0 とは別に carp1 などの別 I/F を
用いることになる,しかもそちらではパケットキャプチャが機能しないってことなんですよね.
別 I/F を用いず fxp0 自体でフェイルオーバできればよさそうなんですけど.
で,こういうものもあるようですが......
http://www.freshports.org/net/freevrrpd/
freevrrpd is a VRRP (Virtual Router Redundancy Protocol) implementation
daemon under FreeBSD, NetBSD and OpenBSD.
379root▲ ★
2006/03/08(水) 11:06:00ID:???02006/03/08(水) 11:30:29ID:93a4Fhsb0
freevrrpdは本家のMLにたまに話が出てきますが、
もうメンテされてないというようなレスがつくのがオチだった気がします。
最近だと
ttp://lists.freebsd.org/pipermail/freebsd-net/2006-February/009899.html
とか。
もうメンテされてないというようなレスがつくのがオチだった気がします。
最近だと
ttp://lists.freebsd.org/pipermail/freebsd-net/2006-February/009899.html
とか。
>>380 う〜む......
>>379 2.0.4 が出たばかりのようですが,これはどうなんでしょう......
http://linux-ha.org/download/index.html#2.0.4
Stable release 2.0.4 (Mon Feb 27 10:09:15 MST 2006)
>>379 2.0.4 が出たばかりのようですが,これはどうなんでしょう......
http://linux-ha.org/download/index.html#2.0.4
Stable release 2.0.4 (Mon Feb 27 10:09:15 MST 2006)
2006/03/08(水) 21:42:12ID:/mw5TJE20
384root▲ ★
2006/03/09(木) 00:50:15ID:???0 で、>>375 を改めてじっくり読んでみると、
もしcarp環境でも、promiscにしないでfxp0から拾えれば問題ないようにも思えたり。
もしcarp環境でも、promiscにしないでfxp0から拾えれば問題ないようにも思えたり。
386root▲ ★
2006/03/09(木) 12:11:51ID:???0 >>350
> banana403 as master:
> # sysctl -w net.inet.carp.preempt=1
> # ifconfig pfsync0 syncdev vr0
> # ifconfig pfsync0 up
> # ifconfig carp1 create
> # ifconfig carp1 vhid 1 pass mugyu 206.223.150.96 255.255.255.0
これの動作ですが、
> # ifconfig carp1 vhid 1 pass mugyu 206.223.150.96 255.255.255.0
の時点で、自動的に fxp0 が promiscuous mode になるようです。
そういう実装なのか。
で、
fxp0: promiscuous mode enabled
arp_rtrequest: bad gateway 206.223.150.97 (!AF_LINK)
というシステムメッセージが出ます。(2行目がやや気になる)
手でオフにする際には、
ifconfig carp1 down
ifconfig carp1 destroy
という手順になりますが、これの destroy の時点で、
fxp0: promiscuous mode disabled
と出て、promiscuous mode ではなくなりました。
ううむ。
> banana403 as master:
> # sysctl -w net.inet.carp.preempt=1
> # ifconfig pfsync0 syncdev vr0
> # ifconfig pfsync0 up
> # ifconfig carp1 create
> # ifconfig carp1 vhid 1 pass mugyu 206.223.150.96 255.255.255.0
これの動作ですが、
> # ifconfig carp1 vhid 1 pass mugyu 206.223.150.96 255.255.255.0
の時点で、自動的に fxp0 が promiscuous mode になるようです。
そういう実装なのか。
で、
fxp0: promiscuous mode enabled
arp_rtrequest: bad gateway 206.223.150.97 (!AF_LINK)
というシステムメッセージが出ます。(2行目がやや気になる)
手でオフにする際には、
ifconfig carp1 down
ifconfig carp1 destroy
という手順になりますが、これの destroy の時点で、
fxp0: promiscuous mode disabled
と出て、promiscuous mode ではなくなりました。
ううむ。
388root▲ ★
2006/03/09(木) 14:16:07ID:???0 >>388 以前 LVS の代替品を探してた時にもちょっと出てたやつですね.
カーネルデバイス版の carp と比べると
・ 既存の I/F に対する alias としてアドレスを付す.
・ I/F を promiscuous モードにしない.
という点では扱いやすそうですね.
カーネルデバイス版の carp と比べると
・ 既存の I/F に対する alias としてアドレスを付す.
・ I/F を promiscuous モードにしない.
という点では扱いやすそうですね.
390root▲ ★
NGNG ucarp を試し中。
結構、うまく動く予感。
結構、うまく動く予感。
391root▲ ★
NGNG テストはうまくいきました。
現在、banana403/banana404 は ucarp で冗長化して動いています。
ping がとぎれることなく切り替わったのには、結構感動しました。
これで、live22x を 受付嬢環境で動かす準備が整いました。
つまり、雪だるまサーバ環境は、形としてようやくフルスペックにできることになります。
現在、banana403/banana404 は ucarp で冗長化して動いています。
ping がとぎれることなく切り替わったのには、結構感動しました。
これで、live22x を 受付嬢環境で動かす準備が整いました。
つまり、雪だるまサーバ環境は、形としてようやくフルスペックにできることになります。
392root▲ ★
NGNG あと、課題は、フロントエンドが落ちたのを検知して、
matd の仲間から自動的に切り離す部分ですね。
これは、httping とかを使って別途スクリプトを書こうかと。
matd の仲間から自動的に切り離す部分ですね。
これは、httping とかを使って別途スクリプトを書こうかと。
393root▲ ★
NGNG …って書いてたら、ping がかからなくなりました。
ucarp を起動しなおしたら直った。ううむ、バグかな。
しばらく、観察と調整をば。
ucarp を起動しなおしたら直った。ううむ、バグかな。
しばらく、観察と調整をば。
394root▲ ★
NGNG で、しばらく動かして安定なのを確認してから、live22x をのっけることにしようかと。
395root▲ ★
NGNG ○ ucarp の設定
daemontools 経由で利用することにする。
(banana403: /var/service/ucarp)
#!/bin/sh
exec 2>&1
exec env - TZ=JST-9 PATH="/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:/usr/local/sbin" \
ucarp --preempt --interface=fxp0 \
--srcip=206.223.150.95 \
--vhid=1 --pass=むぎゅむぎゅ \
--addr=206.223.150.96 \
--upscript=/usr/local/etc/zzz-matd-up.sh \
--downscript=/usr/local/etc/zzz-matd-down.sh \
--shutdown
(banana404: /var/service/ucarp)
#!/bin/sh
exec 2>&1
exec env - TZ=JST-9 PATH="/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:/usr/local/sbin" \
ucarp --preempt --interface=fxp0 \
--srcip=206.223.150.140 \
--advskew=128 \
--vhid=1 --pass=むぎゅむぎゅ \
--addr=206.223.150.96 \
--upscript=/usr/local/etc/zzz-matd-up.sh \
--downscript=/usr/local/etc/zzz-matd-down.sh \
--shutdown
daemontools 経由で利用することにする。
(banana403: /var/service/ucarp)
#!/bin/sh
exec 2>&1
exec env - TZ=JST-9 PATH="/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:/usr/local/sbin" \
ucarp --preempt --interface=fxp0 \
--srcip=206.223.150.95 \
--vhid=1 --pass=むぎゅむぎゅ \
--addr=206.223.150.96 \
--upscript=/usr/local/etc/zzz-matd-up.sh \
--downscript=/usr/local/etc/zzz-matd-down.sh \
--shutdown
(banana404: /var/service/ucarp)
#!/bin/sh
exec 2>&1
exec env - TZ=JST-9 PATH="/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:/usr/local/sbin" \
ucarp --preempt --interface=fxp0 \
--srcip=206.223.150.140 \
--advskew=128 \
--vhid=1 --pass=むぎゅむぎゅ \
--addr=206.223.150.96 \
--upscript=/usr/local/etc/zzz-matd-up.sh \
--downscript=/usr/local/etc/zzz-matd-down.sh \
--shutdown
396root▲ ★
NGNG (zzz-matd-up.sh)
#!/bin/sh
_LIP="127.0.0.1"
_VIP="206.223.150.96"
_CFFILE="/usr/local/etc/matd.cf"
_CFFILE_SKEL="/usr/local/etc/matd.cf.skel"
ifconfig fxp0 $_VIP netmask 255.255.255.255 alias
sed -e "s/%%IPADDR%%/${_VIP}/" < $_CFFILE_SKEL > $_CFFILE
svc -h /var/service/matd
(zzz-matd-down.sh)
#!/bin/sh
_LIP="127.0.0.1"
_VIP="206.223.150.96"
_CFFILE="/usr/local/etc/matd.cf"
_CFFILE_SKEL="/usr/local/etc/matd.cf.skel"
sed -e "s/%%IPADDR%%/${_LIP}/" < $_CFFILE_SKEL > $_CFFILE
svc -h /var/service/matd
ifconfig fxp0 $_VIP delete
#!/bin/sh
_LIP="127.0.0.1"
_VIP="206.223.150.96"
_CFFILE="/usr/local/etc/matd.cf"
_CFFILE_SKEL="/usr/local/etc/matd.cf.skel"
ifconfig fxp0 $_VIP netmask 255.255.255.255 alias
sed -e "s/%%IPADDR%%/${_VIP}/" < $_CFFILE_SKEL > $_CFFILE
svc -h /var/service/matd
(zzz-matd-down.sh)
#!/bin/sh
_LIP="127.0.0.1"
_VIP="206.223.150.96"
_CFFILE="/usr/local/etc/matd.cf"
_CFFILE_SKEL="/usr/local/etc/matd.cf.skel"
sed -e "s/%%IPADDR%%/${_LIP}/" < $_CFFILE_SKEL > $_CFFILE
svc -h /var/service/matd
ifconfig fxp0 $_VIP delete
397root▲ ★
NGNG 観察中、、、。
問題なさげなので、これでしばらく動かしてみるです。
問題なさげなので、これでしばらく動かしてみるです。
2006/03/10(金) 02:28:23ID:PuC6Jsyv0
>>391 乙でした。
http://www.freebsd.org/releases/6.1R/todo.html を
みると、とても3月中にリリースされるとは思えない状態ですね。
次は、mod_cacheですかね。
http://www.freebsd.org/releases/6.1R/todo.html を
みると、とても3月中にリリースされるとは思えない状態ですね。
次は、mod_cacheですかね。
399root▲ ★
NGNG >>398
どもです。
ちょっと某所で聞いてみたんですが、どうも10日ぐらいはかかるっぽいみたいな。
でもとても出そうもない状態、というのもまぁ、いつものことっぽいらしいので、
見切り発車で出るのかもしんないですね。
うまく matd に乗せ換えられれば、フロントのメンテやバージョンアップも楽になります。
例えば mod_cache を入れた個体と入れない個体を準備しておくとかすれば、
テストもやりやすいのかなと。
どもです。
ちょっと某所で聞いてみたんですが、どうも10日ぐらいはかかるっぽいみたいな。
でもとても出そうもない状態、というのもまぁ、いつものことっぽいらしいので、
見切り発車で出るのかもしんないですね。
うまく matd に乗せ換えられれば、フロントのメンテやバージョンアップも楽になります。
例えば mod_cache を入れた個体と入れない個体を準備しておくとかすれば、
テストもやりやすいのかなと。
>>390-399 乙です.ucarp の README 見ると,
And last, but not least, you can use a script that will connect to your switches
and flush their ARP cache. Some users reported that transitions were way faster
when also switching MAC addresses.
ってことも書いてありますね.
And last, but not least, you can use a script that will connect to your switches
and flush their ARP cache. Some users reported that transitions were way faster
when also switching MAC addresses.
ってことも書いてありますね.
401root▲ ★
2006/03/10(金) 11:12:55ID:???0402root▲ ★
NGNG 信頼性を上げるため、相手方のチェックを直結I/Fに変更。
(banana403:/var/service/ucarp/run)
#!/bin/sh
exec 2>&1
exec env - TZ=JST-9 PATH="/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:/usr/local/sbin" \
ucarp --preempt --interface=vr0 \
--srcip=10.0.0.1 \
--vhid=1 --pass=むぎゅ \
--addr=206.223.150.96 \
--upscript=/usr/local/etc/zzz-matd-up.sh \
--downscript=/usr/local/etc/zzz-matd-down.sh \
--shutdown
(banana404:/var/service/ucarp/run)
#!/bin/sh
exec 2>&1
exec env - TZ=JST-9 PATH="/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:/usr/local/sbin" \
ucarp --preempt --interface=vr0 \
--srcip=10.0.0.2 \
--advskew=128 \
--vhid=1 --pass=むぎゅ \
--addr=206.223.150.96 \
--upscript=/usr/local/etc/zzz-matd-up.sh \
--downscript=/usr/local/etc/zzz-matd-down.sh \
--shutdown
(banana403:/var/service/ucarp/run)
#!/bin/sh
exec 2>&1
exec env - TZ=JST-9 PATH="/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:/usr/local/sbin" \
ucarp --preempt --interface=vr0 \
--srcip=10.0.0.1 \
--vhid=1 --pass=むぎゅ \
--addr=206.223.150.96 \
--upscript=/usr/local/etc/zzz-matd-up.sh \
--downscript=/usr/local/etc/zzz-matd-down.sh \
--shutdown
(banana404:/var/service/ucarp/run)
#!/bin/sh
exec 2>&1
exec env - TZ=JST-9 PATH="/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:/usr/local/sbin" \
ucarp --preempt --interface=vr0 \
--srcip=10.0.0.2 \
--advskew=128 \
--vhid=1 --pass=むぎゅ \
--addr=206.223.150.96 \
--upscript=/usr/local/etc/zzz-matd-up.sh \
--downscript=/usr/local/etc/zzz-matd-down.sh \
--shutdown
403root▲ ★
NGNGNGNG
405root▲ ★
2006/03/10(金) 19:10:22ID:???0 バーチャルIPアドレスを変えて(例えば206.223.150.97)もう一組、
matd+ucarpのペアを動かして、
そっちはbanana404スタメン・banana403ピンチヒッターに設定して
動かすってのはどうだろうか。
matd+ucarpのペアを動かして、
そっちはbanana404スタメン・banana403ピンチヒッターに設定して
動かすってのはどうだろうか。
406root▲ ★
NGNG408root▲ ★
NGNG BG3/BG4、live22系と同じように /etc/libmap.conf を設定した。
マルチスレッドで動いている squid の効率が、少しでもよくなれば。
%cat /etc/libmap.conf
libpthread.so.2 libthr.so.2
マルチスレッドで動いている squid の効率が、少しでもよくなれば。
%cat /etc/libmap.conf
libpthread.so.2 libthr.so.2
409root▲ ★
NGNG とりあえずメモ
マスター側のリブートでは、まったく問題なし。
しかしバックアップ側をリブートすると、微妙なことが起こった。< ucarp
一瞬マスターモードになり、すぐにバックアップモードに。
で、その影響でちょっとの間マスターが2匹になり、www2がつながらなく。
バックアップ側は、--preempt をやめればいいのかな。
マスター側のリブートでは、まったく問題なし。
しかしバックアップ側をリブートすると、微妙なことが起こった。< ucarp
一瞬マスターモードになり、すぐにバックアップモードに。
で、その影響でちょっとの間マスターが2匹になり、www2がつながらなく。
バックアップ側は、--preempt をやめればいいのかな。
410root▲ ★
NGNG ついに掲示板サーバで(プライベート側だから圧縮なしだけど)、
1サーバの転送量だけで、トラフィックの32ビットカウンターがあふれる日がやってきた。
【ひなあられ】負荷監視所_20060301
http://live14.2ch.net/test/read.cgi/liveplus/1141207819/383
後で、雪だるま系のMRTGは別系統にする予定。
1サーバの転送量だけで、トラフィックの32ビットカウンターがあふれる日がやってきた。
【ひなあられ】負荷監視所_20060301
http://live14.2ch.net/test/read.cgi/liveplus/1141207819/383
後で、雪だるま系のMRTGは別系統にする予定。
411root▲ ★
NGNG live22
httpd が signal 10 でダウン。
pid 41367 (httpd), uid 2001: exited on signal 10
pid 25496 (httpd), uid 2001: exited on signal 10
pid 25531 (httpd), uid 2001: exited on signal 10
pid 25484 (httpd), uid 2001: exited on signal 10
pid 25523 (httpd), uid 2001: exited on signal 10
pid 25488 (httpd), uid 2001: exited on signal 10
pid 25476 (httpd), uid 2001: exited on signal 10
pid 25475 (httpd), uid 2001: exited on signal 10
pid 25541 (httpd), uid 2001: exited on signal 10
pid 25520 (httpd), uid 2001: exited on signal 10
pid 25495 (httpd), uid 2001: exited on signal 10
pid 25527 (httpd), uid 2001: exited on signal 10
pid 25562 (httpd), uid 2001: exited on signal 10
pid 25535 (httpd), uid 2001: exited on signal 10
pid 25506 (httpd), uid 2001: exited on signal 10
pid 25533 (httpd), uid 2001: exited on signal 10
httpd が signal 10 でダウン。
pid 41367 (httpd), uid 2001: exited on signal 10
pid 25496 (httpd), uid 2001: exited on signal 10
pid 25531 (httpd), uid 2001: exited on signal 10
pid 25484 (httpd), uid 2001: exited on signal 10
pid 25523 (httpd), uid 2001: exited on signal 10
pid 25488 (httpd), uid 2001: exited on signal 10
pid 25476 (httpd), uid 2001: exited on signal 10
pid 25475 (httpd), uid 2001: exited on signal 10
pid 25541 (httpd), uid 2001: exited on signal 10
pid 25520 (httpd), uid 2001: exited on signal 10
pid 25495 (httpd), uid 2001: exited on signal 10
pid 25527 (httpd), uid 2001: exited on signal 10
pid 25562 (httpd), uid 2001: exited on signal 10
pid 25535 (httpd), uid 2001: exited on signal 10
pid 25506 (httpd), uid 2001: exited on signal 10
pid 25533 (httpd), uid 2001: exited on signal 10
413root▲ ★
2006/03/11(土) 04:37:10ID:???0414root▲ ★
NGNG live22x.2ch.net を matd (受付嬢)環境に移行します。
以下のDNSサーバの設定変更をよろしくお願いします。
(現在)
Clive22x.2ch.net:live22y.2ch.net:300
(変更後)
+live22x.2ch.net:206.223.150.96:300
以下のDNSサーバの設定変更をよろしくお願いします。
(現在)
Clive22x.2ch.net:live22y.2ch.net:300
(変更後)
+live22x.2ch.net:206.223.150.96:300
416root▲ ★
2006/03/12(日) 13:33:56ID:???0 【実況】 live22x Part13
http://qb5.2ch.net/test/read.cgi/operate/1141564207/397
(gdb) where
#0 0x283b04d3 in _umtx_op () from /lib/libc.so.6
#1 0x2836d066 in _thread_bp_death () from /usr/lib/libthr.so.2
#2 0x2836c5bd in pthread_cond_destroy () from /usr/lib/libthr.so.2
#3 0x28329a2d in apr_thread_cond_wait ()
from /usr/local/lib/apache2/libapr-0.so.9
#4 0x080688b7 in ap_queue_info_wait_for_idler ()
#5 0x080666bd in listener_thread ()
#6 0x283277e8 in dummy_worker () from /usr/local/lib/apache2/libapr-0.so.9
#7 0x2836c05d in pthread_create () from /usr/lib/libthr.so.2
#8 0x00000000 in ?? ()
(gdb)
前のと同じか。
http://qb5.2ch.net/test/read.cgi/operate/1141564207/397
(gdb) where
#0 0x283b04d3 in _umtx_op () from /lib/libc.so.6
#1 0x2836d066 in _thread_bp_death () from /usr/lib/libthr.so.2
#2 0x2836c5bd in pthread_cond_destroy () from /usr/lib/libthr.so.2
#3 0x28329a2d in apr_thread_cond_wait ()
from /usr/local/lib/apache2/libapr-0.so.9
#4 0x080688b7 in ap_queue_info_wait_for_idler ()
#5 0x080666bd in listener_thread ()
#6 0x283277e8 in dummy_worker () from /usr/local/lib/apache2/libapr-0.so.9
#7 0x2836c05d in pthread_create () from /usr/lib/libthr.so.2
#8 0x00000000 in ?? ()
(gdb)
前のと同じか。
417root▲ ★
2006/03/12(日) 13:49:06ID:???0418root▲ ★
NGNG2006/03/12(日) 23:37:20ID:iiVdso7J0
一瞬今年中にみえますたw
2006/03/13(月) 17:46:47ID:u14MvpfC0
特化型サーバスレのこともたまには思い出してあげてください
つ http://search.cpan.org/~ingy/orz-0.10/lib/orz.pm
422root▲ ★
NGNG >>422
"use orz"から"no orz"までソースをコメントするAcme::的なモジュールです
0.10から0.11の変更点は"orz !!!"を"orz..."に変更しています
Module::Compileのお遊び的な使い方としてのモジュールでしょうね
"use orz"から"no orz"までソースをコメントするAcme::的なモジュールです
0.10から0.11の変更点は"orz !!!"を"orz..."に変更しています
Module::Compileのお遊び的な使い方としてのモジュールでしょうね
428root▲ ★
NGNG >>427
正しく変わったのを確認しました。
特に問題は観察されていません。
これで、雪だるまシステムは「形として」、描いたとおりのものになりました。
構想から1年以上ですか。
あとは、より磨いていくことになります。
とりあえず、虫を踏まないようになってほしいとか、
フロントやバックを増やすにはもうちょっと作業が必要とか、
過去ログ関係とかをもっとスマートにやりたいなとかありますが、
このあたりは、例によってぼちぼちすすめていこうかなと。
正しく変わったのを確認しました。
特に問題は観察されていません。
これで、雪だるまシステムは「形として」、描いたとおりのものになりました。
構想から1年以上ですか。
あとは、より磨いていくことになります。
とりあえず、虫を踏まないようになってほしいとか、
フロントやバックを増やすにはもうちょっと作業が必要とか、
過去ログ関係とかをもっとスマートにやりたいなとかありますが、
このあたりは、例によってぼちぼちすすめていこうかなと。
429root▲ ★
NGNG で、本気モードでパケットが来た時に、matd がどうなるかということですね。
あとで matd.stats を外から見られるようにしておくか。
あとで matd.stats を外から見られるようにしておくか。
430root▲ ★
NGNG とりあえず、今の状態(matd.stats)。
[matd statistics] Tue, 14 Mar 2006 15:41:47.105 (JST)
user CPU time = 0:02:24.583, system CPU time = 0:20:11.934
elapsed time = 95:34:27.758, CPU load = 0.39%
minor page faults = 231, major page faults = 0, swaps = 0
block inputs = 0, block outputs = 0
messages sent = 2, messages received = 0
signals = 2, vol ctx switches = 32584418, invol ctx switches = 2811721
forwarded packets:
00:30:48:53:ec:20 = 47641159
00:30:48:83:ab:30 = 47656010
00:30:48:83:a6:2a = 47658945
elapsed time (configuration age) = 95:34:26.741
[matd statistics] Tue, 14 Mar 2006 15:41:47.105 (JST)
user CPU time = 0:02:24.583, system CPU time = 0:20:11.934
elapsed time = 95:34:27.758, CPU load = 0.39%
minor page faults = 231, major page faults = 0, swaps = 0
block inputs = 0, block outputs = 0
messages sent = 2, messages received = 0
signals = 2, vol ctx switches = 32584418, invol ctx switches = 2811721
forwarded packets:
00:30:48:53:ec:20 = 47641159
00:30:48:83:ab:30 = 47656010
00:30:48:83:a6:2a = 47658945
elapsed time (configuration age) = 95:34:26.741
431root▲ ★
NGNG 1:1 スレッド (-lthr) にしてから明らかに負荷が下がって、パフォーマンスが上がりました。
LA
http://mumumu.mu/mrtgc/mrtg-rrd.cgi/load/blackgoat4load.html
プライベート側のトラフィック(c-xxxxからの要求を処理できるようになった)
http://mumumu.mu/mrtgc/mrtg-rrd.cgi/traffic/blackgoat4-privatetraf.html
さて、どこまで延命できるのか。< BG3/4
LA
http://mumumu.mu/mrtgc/mrtg-rrd.cgi/load/blackgoat4load.html
プライベート側のトラフィック(c-xxxxからの要求を処理できるようになった)
http://mumumu.mu/mrtgc/mrtg-rrd.cgi/traffic/blackgoat4-privatetraf.html
さて、どこまで延命できるのか。< BG3/4
2006/03/14(火) 20:18:39ID:WjY6I8pQ0
>>428
ということは雪だるま作戦プロジェクトはリリース版稼動開始ってことでよろしいのでしょうか。
ということは雪だるま作戦プロジェクトはリリース版稼動開始ってことでよろしいのでしょうか。
433root▲ ★
NGNG >>432
実験はずっと続きますが、
ネットワークの形というか各サーバの論理構成(≠台数)としては、
メンバーがそろったという認識です。
・ロードバランサ(受付嬢: ユーザからの接続要求を各フロントに振り分ける)
・フロントエンド(ユーザからの要求の処理: bbs.cgi、read.cgi、削除系の呪文(未対応…)が動作)
・バックエンド(フロントエンドからの要求の処理: フロントにdat提供、実際の書き込み処理)
実験はずっと続きますが、
ネットワークの形というか各サーバの論理構成(≠台数)としては、
メンバーがそろったという認識です。
・ロードバランサ(受付嬢: ユーザからの接続要求を各フロントに振り分ける)
・フロントエンド(ユーザからの要求の処理: bbs.cgi、read.cgi、削除系の呪文(未対応…)が動作)
・バックエンド(フロントエンドからの要求の処理: フロントにdat提供、実際の書き込み処理)
434root▲ ★
NGNG 超簡便な図を描くと、今の構成こんなかんじ。
クライアントたち Webブラウザとか専用ブラウザとかBG3/4とか
│ ↑
↓ │
b1⇔b2 │ ポイント: 帰りのトラフィックはb1(b2)を経由せず、x1〜x3から直接届く
├┬┐ │ b1が落ちるとb2に自動切換え、x1〜x3が落ちると自動切り離し(未実装)
↓↓↓ │
x1 x2 x3─┘ 各種cgiはここで動く
│││ dat/index.html/subject.txt/subback.htmlはlive22から必要に応じてすぐもらう
│││ SETTING.TXTやdat落ちした過去ログはlive22から定期的にゆっくりもらう
↓↓↓
live22 実際の書き込み処理を受けつける
ここではcgiは動かない(今はまだ削除系cgiとかが動いている)
x1〜x3にdat/index.html/subject.txt/subback.htmlを提供する
Samba24やtimecount/timecloseのための規制系データは、
live22x1が上記のlive22の位置にいて、そこで一元管理
もし仮にlive22x1が落ちてもこれらの規制がスキップになるだけで、動作は継続
クライアントたち Webブラウザとか専用ブラウザとかBG3/4とか
│ ↑
↓ │
b1⇔b2 │ ポイント: 帰りのトラフィックはb1(b2)を経由せず、x1〜x3から直接届く
├┬┐ │ b1が落ちるとb2に自動切換え、x1〜x3が落ちると自動切り離し(未実装)
↓↓↓ │
x1 x2 x3─┘ 各種cgiはここで動く
│││ dat/index.html/subject.txt/subback.htmlはlive22から必要に応じてすぐもらう
│││ SETTING.TXTやdat落ちした過去ログはlive22から定期的にゆっくりもらう
↓↓↓
live22 実際の書き込み処理を受けつける
ここではcgiは動かない(今はまだ削除系cgiとかが動いている)
x1〜x3にdat/index.html/subject.txt/subback.htmlを提供する
Samba24やtimecount/timecloseのための規制系データは、
live22x1が上記のlive22の位置にいて、そこで一元管理
もし仮にlive22x1が落ちてもこれらの規制がスキップになるだけで、動作は継続
435root▲ ★
NGNG 今の構成はlive22が落ちると全滅。
live22のところの冗長化・強化手段の例とか。
↓ ↑
B1⇔B2 │
├─┬─┐ │ B1が落ちるとB2に自動切換え、SV1〜SVnが落ちると自動切り離し
↓ ↓ ↓ │
SV1 SV2 ... SVn┘
│ │ │
外部HDD FC-AL等でSV1〜SVnが外部HDDを共有
HDDはRAID 5構成
live22のところの冗長化・強化手段の例とか。
↓ ↑
B1⇔B2 │
├─┬─┐ │ B1が落ちるとB2に自動切換え、SV1〜SVnが落ちると自動切り離し
↓ ↓ ↓ │
SV1 SV2 ... SVn┘
│ │ │
外部HDD FC-AL等でSV1〜SVnが外部HDDを共有
HDDはRAID 5構成
436root▲ ★
NGNG 昔やったおまじないを思い出したので、
banana403/banana404 の matd 起動スクリプトを nice してみた。
とりあえず WCPU がちょっぴり増えたので、それなりに動いているかなと。
苦しくなったら、BG3/4 の squid もやろうかと。
#!/bin/sh
exec 2>&1
exec env - TZ=JST-9 PATH="/usr/sbin:/usr/bin:/bin:/usr/local/bin" \
/usr/bin/nice -n -20 /usr/local/sbin/matd -F \
-f /usr/local/etc/matd.cf \
-s /var/log/matd.stats
banana403/banana404 の matd 起動スクリプトを nice してみた。
とりあえず WCPU がちょっぴり増えたので、それなりに動いているかなと。
苦しくなったら、BG3/4 の squid もやろうかと。
#!/bin/sh
exec 2>&1
exec env - TZ=JST-9 PATH="/usr/sbin:/usr/bin:/bin:/usr/local/bin" \
/usr/bin/nice -n -20 /usr/local/sbin/matd -F \
-f /usr/local/etc/matd.cf \
-s /var/log/matd.stats
2006/03/14(火) 22:03:07ID:WjY6I8pQ0
438root▲ ★
NGNG >>437
同じ外部ストレージの中身を(FC-ALとかで)共有する路線かなと。
そうしておいて SV1 〜 SVn を並列で稼動できれば、
HDDのI/Oキャパが板一枚でいっぱいになるか(2chではありえないと思う)、
帰り側のネットワークがいっぱいになるまでは、スケールするんじゃないかなと。
同じ外部ストレージの中身を(FC-ALとかで)共有する路線かなと。
そうしておいて SV1 〜 SVn を並列で稼動できれば、
HDDのI/Oキャパが板一枚でいっぱいになるか(2chではありえないと思う)、
帰り側のネットワークがいっぱいになるまでは、スケールするんじゃないかなと。
2006/03/14(火) 22:22:23ID:WjY6I8pQ0
>>438
そうなるとSumaみたいなのが必要になってくるわけですな・・・
そうなるとSumaみたいなのが必要になってくるわけですな・・・
2006/03/15(水) 00:04:21ID:zGV61Xb10
>>440
前からきになっていたのですが、SumaってFCにつながっている
複数のサーバから同一ファイルをアクセスできるのですか?
箱物のみ共有で、ファイルの共有はできないと思っていたのですが。
(AppleのXsanみたいなソフトがサーバ側に必要と思っていました。)
前からきになっていたのですが、SumaってFCにつながっている
複数のサーバから同一ファイルをアクセスできるのですか?
箱物のみ共有で、ファイルの共有はできないと思っていたのですが。
(AppleのXsanみたいなソフトがサーバ側に必要と思っていました。)
442root▲ ★
2006/03/15(水) 01:31:12ID:???02006/03/15(水) 02:06:07ID:wQ/ASUE00
>>442
普通は排他処理が働いて書き込みできないかと
リードオンリーならNFSマウントみたいな形で十分対処できますがね・・・
書き込みありだから何か工夫がいると思います
今までにrootさんがお守り修行で培ってきた経験が生かせるか、それとも新しい修行が必要かはわかりませんがね
普通は排他処理が働いて書き込みできないかと
リードオンリーならNFSマウントみたいな形で十分対処できますがね・・・
書き込みありだから何か工夫がいると思います
今までにrootさんがお守り修行で培ってきた経験が生かせるか、それとも新しい修行が必要かはわかりませんがね
2006/03/15(水) 02:11:11ID:wQ/ASUE00
445root▲ ★
NGNG 質問・雑談スレ218@運用情報板
http://qb5.2ch.net/test/read.cgi/operate/1142144559/347
うーむ、またこのエラーが。
Apache 2.2 + 64bit 版のみなのかなぁ。
>>443-444
ro で複数ホストから mount できるなら、読ませるほうを分担させることは可能かもですね。
書き込みは(とりあえず)1箇所でやることにして、読み出しを別のやつらに分業させるとか。
http://qb5.2ch.net/test/read.cgi/operate/1142144559/347
うーむ、またこのエラーが。
Apache 2.2 + 64bit 版のみなのかなぁ。
>>443-444
ro で複数ホストから mount できるなら、読ませるほうを分担させることは可能かもですね。
書き込みは(とりあえず)1箇所でやることにして、読み出しを別のやつらに分業させるとか。
とうとう matd 本格稼働ですか.とりあえず今のところ異常なしで一安心ですかね.
>>429
>で、本気モードでパケットが来た時に、matd がどうなるかということですね。
というのは確認しておきたいところですが.
で,>>435 >>438 というのはバック側をフェイルオーバだけじゃなく
ロードバランスするって意味ですか? そうなると......bbsd では
subject データなどをオンメモリ管理してるので,remote shared memory
とか使わないとつじつまが合わなくなってしまいますね.単一鯖の shared memory
でも処理が煩雑になるので,それを避けるためマルチプロセスでなく
シングルプロセスにしてるんですが.というか,単一鯖での bbsd の限界が来る前に
ユーザが追随できなくなりそうな気もしますが......今のところ最速 1000 は
4秒ですが,1スレを数秒で使い切るようなレス速度になれば,現実的には
次スレを探すのにある程度時間がかかるとか,一方みんながスレを立てようとすれば
スレ立て制限に引っかかるとか,そういう部分で必然的にブレーキがかかりそうな気もします.
ということで,bbsd についてはフェイルオーバだけ考えればいいのではないかと思います.
httpd の方は,フロント側で mod_cache を使ってもなお不足であればロードバランスも
考えた方がいいのかも知れませんけど.
pthread_cond_wait() が実行されるべきところで pthread_cond_destroy() が
実行されてしまうとか(>>416),dlopen() or dlsym() が失敗してるらしいとか(>>445),
このあたりは不可解ですね...... OS の虫なのか libapr が腐ってるのか......
>>429
>で、本気モードでパケットが来た時に、matd がどうなるかということですね。
というのは確認しておきたいところですが.
で,>>435 >>438 というのはバック側をフェイルオーバだけじゃなく
ロードバランスするって意味ですか? そうなると......bbsd では
subject データなどをオンメモリ管理してるので,remote shared memory
とか使わないとつじつまが合わなくなってしまいますね.単一鯖の shared memory
でも処理が煩雑になるので,それを避けるためマルチプロセスでなく
シングルプロセスにしてるんですが.というか,単一鯖での bbsd の限界が来る前に
ユーザが追随できなくなりそうな気もしますが......今のところ最速 1000 は
4秒ですが,1スレを数秒で使い切るようなレス速度になれば,現実的には
次スレを探すのにある程度時間がかかるとか,一方みんながスレを立てようとすれば
スレ立て制限に引っかかるとか,そういう部分で必然的にブレーキがかかりそうな気もします.
ということで,bbsd についてはフェイルオーバだけ考えればいいのではないかと思います.
httpd の方は,フロント側で mod_cache を使ってもなお不足であればロードバランスも
考えた方がいいのかも知れませんけど.
pthread_cond_wait() が実行されるべきところで pthread_cond_destroy() が
実行されてしまうとか(>>416),dlopen() or dlsym() が失敗してるらしいとか(>>445),
このあたりは不可解ですね...... OS の虫なのか libapr が腐ってるのか......
447root▲ ★
NGNG >>446
> とうとう matd 本格稼働ですか.とりあえず今のところ異常なしで一安心ですかね.
ですね。
今実況が盛り上がっていますが、問題なく動作しています。
> ということで,bbsd についてはフェイルオーバだけ考えればいいのではないかと思います.
そですね。
そのほうが(= 書く人は一人にする)いろんな意味でよさそうなかんじ。
最終段落は、確かにってかんじかなと、、、。
ex14 (64bit) も Apache 2.0.55 ではこの現象は発生しなかったので、
apr 問題なのかもしれないですね。
> とうとう matd 本格稼働ですか.とりあえず今のところ異常なしで一安心ですかね.
ですね。
今実況が盛り上がっていますが、問題なく動作しています。
> ということで,bbsd についてはフェイルオーバだけ考えればいいのではないかと思います.
そですね。
そのほうが(= 書く人は一人にする)いろんな意味でよさそうなかんじ。
最終段落は、確かにってかんじかなと、、、。
ex14 (64bit) も Apache 2.0.55 ではこの現象は発生しなかったので、
apr 問題なのかもしれないですね。
448root▲ ★
NGNG 【実況】 live22x Part13
http://qb5.2ch.net/test/read.cgi/operate/1141564207/414
32bit でも発生。つまり、32bitか64bitかは無関係と。
Apache 2.0系では発生したことがないので、それ系か。
…Apache 2.2系でmod_cgidsoを作る時ですが、
gcc -c read.c -I`apxs -q INCLUDEDIR` `apr-1-config --includes` -O2 -Wall -funsigned-char -fPIC -o read.o
gcc -shared read.o `apr-1-config --link-ld` `apxs -q LIBS` -Wl,-S,-soname,read.so -o read.so
とやっていますが、これではだめとか、
あるいはApacheのほうで、
#if defined(AP_SERVER_MINORVERSION_NUMBER) && AP_SERVER_MINORVERSION_NUMBER >= 2
ap_filter_rec_t frec = {"READDAT", {rdat_filter}, NULL, AP_FTYPE_RESOURCE, NULL, NULL, 0, 0};
#else
ap_filter_rec_t frec = {"READDAT", {rdat_filter}, NULL, AP_FTYPE_RESOURCE, NULL};
#endif
に類似するような変更が、実は他にも存在しているのかとか。
# でもそれだと、途中からおかしくなる理屈が、、、。
http://qb5.2ch.net/test/read.cgi/operate/1141564207/414
32bit でも発生。つまり、32bitか64bitかは無関係と。
Apache 2.0系では発生したことがないので、それ系か。
…Apache 2.2系でmod_cgidsoを作る時ですが、
gcc -c read.c -I`apxs -q INCLUDEDIR` `apr-1-config --includes` -O2 -Wall -funsigned-char -fPIC -o read.o
gcc -shared read.o `apr-1-config --link-ld` `apxs -q LIBS` -Wl,-S,-soname,read.so -o read.so
とやっていますが、これではだめとか、
あるいはApacheのほうで、
#if defined(AP_SERVER_MINORVERSION_NUMBER) && AP_SERVER_MINORVERSION_NUMBER >= 2
ap_filter_rec_t frec = {"READDAT", {rdat_filter}, NULL, AP_FTYPE_RESOURCE, NULL, NULL, 0, 0};
#else
ap_filter_rec_t frec = {"READDAT", {rdat_filter}, NULL, AP_FTYPE_RESOURCE, NULL};
#endif
に類似するような変更が、実は他にも存在しているのかとか。
# でもそれだと、途中からおかしくなる理屈が、、、。
449root▲ ★
NGNG 今見たらex14でも再発していた。(httpd restart)
ううむ。
ううむ。
450root▲ ★
NGNG あとひょっとすると、libthr なコンディションの時だけ発生するのかな。
ex14で設定変えて試してみるか。
ex14で設定変えて試してみるか。
452root▲ ★
NGNG libmap.conf を mv して、Apache をリスタートした。
今の ex14 の状況下なら、
数日この状況が再現しなかったら、libthr がらみな予感。
今の ex14 の状況下なら、
数日この状況が再現しなかったら、libthr がらみな予感。
2006/03/16(木) 17:29:59ID:gi0mOC860
libpthreadを使うんならこのスレッドにSTABLE向けだけどpatchあり。
http://lists.freebsd.org/pipermail/freebsd-threads/2006-March/003411.html
http://lists.freebsd.org/pipermail/freebsd-threads/2006-March/003411.html
457root▲ ★
2006/03/17(金) 03:24:25ID:???0 すみませんが今日はもう電池切れなので、
>>456 やepg のシングルスレッド(prefork MPM)化などは、あとで。
>>456 やepg のシングルスレッド(prefork MPM)化などは、あとで。
2006/03/17(金) 10:11:31ID:pvQ2ZSVI0
FreeBSDのdlopen() & dlclose()は完全にはスレッドセーフではないので、
mod_cgidsoはworkerだとうまく動かないと思います。。。
libthrよりlibpthreadの方が問題が起こり難いのは確かですが、
それでも問題が起こることは変わらず。
mod_cgidsoはworkerだとうまく動かないと思います。。。
libthrよりlibpthreadの方が問題が起こり難いのは確かですが、
それでも問題が起こることは変わらず。
459root▲ ★
NGNG >>458
うーむ、、、。
で。メモメモ。
p2.2ch.net不具合報告スレ Part10
http://qb5.2ch.net/test/read.cgi/operate/1141521195/214
うーむ、、、。
で。メモメモ。
p2.2ch.net不具合報告スレ Part10
http://qb5.2ch.net/test/read.cgi/operate/1141521195/214
460root▲ ★
NGNG >>458 なるほど.Solaris 流に MT-Safe かと思ってましたが......
こんなのを httpd 起動時に LD_PRELOAD とかすれば何とかなるのかなぁ......?
#include <dlfcn.h>
#include <pthread.h>
static pthread_mutex_t dlmutex = PTHREAD_MUTEX_INITIALIZER;
void *dlopen(const char *pathname, int mode)
{
static union {
void *v;
dlfunc_t d;
void *(*f)(const char *, int);
} o_dlopen;
void *rv;
pthread_mutex_lock(&dlmutex);
if (!o_dlopen.v)
o_dlopen.d = dlfunc(RTLD_NEXT, "dlopen");
rv = o_dlopen.f(pathname, mode);
pthread_mutex_unlock(&dlmutex);
return rv;
}
int dlclose(void *handle)
{
static union {
void *v;
dlfunc_t d;
int (*f)(void *);
} o_dlclose;
int rv;
pthread_mutex_lock(&dlmutex);
if (!o_dlclose.v)
o_dlclose.d = dlfunc(RTLD_NEXT, "dlclose");
rv = o_dlclose.f(handle);
pthread_mutex_unlock(&dlmutex);
return rv;
}
void *dlsym(void *handle, const char *name)
{
static union {
void *v;
dlfunc_t d;
void *(*f)(void *, const char *);
} o_dlsym;
void *rv;
pthread_mutex_lock(&dlmutex);
if (!o_dlsym.v)
o_dlsym.d = dlfunc(RTLD_NEXT, "dlsym");
rv = o_dlsym.f(handle, name);
pthread_mutex_unlock(&dlmutex);
return rv;
}
こんなのを httpd 起動時に LD_PRELOAD とかすれば何とかなるのかなぁ......?
#include <dlfcn.h>
#include <pthread.h>
static pthread_mutex_t dlmutex = PTHREAD_MUTEX_INITIALIZER;
void *dlopen(const char *pathname, int mode)
{
static union {
void *v;
dlfunc_t d;
void *(*f)(const char *, int);
} o_dlopen;
void *rv;
pthread_mutex_lock(&dlmutex);
if (!o_dlopen.v)
o_dlopen.d = dlfunc(RTLD_NEXT, "dlopen");
rv = o_dlopen.f(pathname, mode);
pthread_mutex_unlock(&dlmutex);
return rv;
}
int dlclose(void *handle)
{
static union {
void *v;
dlfunc_t d;
int (*f)(void *);
} o_dlclose;
int rv;
pthread_mutex_lock(&dlmutex);
if (!o_dlclose.v)
o_dlclose.d = dlfunc(RTLD_NEXT, "dlclose");
rv = o_dlclose.f(handle);
pthread_mutex_unlock(&dlmutex);
return rv;
}
void *dlsym(void *handle, const char *name)
{
static union {
void *v;
dlfunc_t d;
void *(*f)(void *, const char *);
} o_dlsym;
void *rv;
pthread_mutex_lock(&dlmutex);
if (!o_dlsym.v)
o_dlsym.d = dlfunc(RTLD_NEXT, "dlsym");
rv = o_dlsym.f(handle, name);
pthread_mutex_unlock(&dlmutex);
return rv;
}
462root▲ ★
2006/03/17(金) 13:52:35ID:???0 http://people.freebsd.org/~bsd/prstats/topN_r_np_idx7
Problem Report threads/89262 : [kernel] [patch] multi-threaded process hangs in kernel in fork()
http://www.freebsd.org/cgi/query-pr.cgi?pr=89262
Problem Report threads/89262 : [kernel] [patch] multi-threaded process hangs in kernel in fork()
http://www.freebsd.org/cgi/query-pr.cgi?pr=89262
463root▲ ★
2006/03/17(金) 14:02:09ID:???0 うーむうーむ。特にkern_fork.c.patch
http://people.freebsd.org/~davidxu/patch/?M=D
http://people.freebsd.org/~davidxu/patch/kern_fork.patch
http://people.freebsd.org/~davidxu/patch/calcru.patch
http://people.freebsd.org/~davidxu/patch/atfork.patch
http://people.freebsd.org/~davidxu/patch/?M=D
http://people.freebsd.org/~davidxu/patch/kern_fork.patch
http://people.freebsd.org/~davidxu/patch/calcru.patch
http://people.freebsd.org/~davidxu/patch/atfork.patch
464root▲ ★
NGNG ある携帯用アプリを作っている業者の担当さんから、
個人宛のメールで問い合わせが来ました。
以下は私からの返事の内容。
本件をすすめる件、およびその内容については管理人のOK済み。
--- cut ---
現在の2ちゃんねるでは、携帯端末から書き込み時に2ちゃんねるに送信される
固有情報により掲示板の荒らし対策、広告貼り付け対策等を実施しております
ので、これを送信いただくことは、このような場合における必須条件の一つです。
また、このような場合に最低限必要な情報/条件として、
1) 2ちゃんねるへの書き込みが行われる御社サーバのIPアドレス
(固定IPアドレスであることが必須: 複数個存在する場合それらのIPアドレス
全部)を、事前にお知らせいただき、かつ変更の都度お知らせいただくこと
なおこの情報は、2ch運用情報板 (http://qb5.2ch.net/operate/) への
御社ご担当様からの書き込みにより、公開の場でお伝えいただけると助かり
ます。
(例えば、技術情報そのものは御社Web上に別途準備いただき、
URLリンクや更新情報のみを都度書き込むといった形でも問題ありません)
上記情報を書き込むスレッドですが、
2ch特化型サーバ・ロケーション構築作戦 Part20
http://qb5.2ch.net/test/read.cgi/operate/1140540754/
をご使用いただけますと助かります。
2) 書き込みの際に、該当する携帯側のIPアドレス(携帯側から御社サーバに
書き込みリクエストがあった際の携帯側のIPアドレス)を、
一定の方法で2ちゃんねるにそのまま送信いただくこと
これにより2ちゃんねるは、どの会社の携帯電話からの書き込みであるか
を、携帯電話から直接書き込んだ場合と同様の方法で判定できることになり
ます。
なお、上記はIPアドレスの逆引き名ではなく、
IPアドレスそのものを送信いただけると助かります。
携帯電話の固有番号はキャリアごとに仕様・フォーマットが異なっているた
め、この情報が必要となります。
3) 書き込みの際に、該当する携帯の端末固有情報を
一定の方法で2ちゃんねるに送信いただくこと
理由は上記の通りとなります。
なお、上記 2) 3) につきましては、御社側において User-Agent: ヘッダに
挿入する方式(フォーマット)を明確に決めていただき、
この技術情報を 1) と同様、事前にお知らせいただけると助かります。
以上になります。よろしくお願いいたします。
個人宛のメールで問い合わせが来ました。
以下は私からの返事の内容。
本件をすすめる件、およびその内容については管理人のOK済み。
--- cut ---
現在の2ちゃんねるでは、携帯端末から書き込み時に2ちゃんねるに送信される
固有情報により掲示板の荒らし対策、広告貼り付け対策等を実施しております
ので、これを送信いただくことは、このような場合における必須条件の一つです。
また、このような場合に最低限必要な情報/条件として、
1) 2ちゃんねるへの書き込みが行われる御社サーバのIPアドレス
(固定IPアドレスであることが必須: 複数個存在する場合それらのIPアドレス
全部)を、事前にお知らせいただき、かつ変更の都度お知らせいただくこと
なおこの情報は、2ch運用情報板 (http://qb5.2ch.net/operate/) への
御社ご担当様からの書き込みにより、公開の場でお伝えいただけると助かり
ます。
(例えば、技術情報そのものは御社Web上に別途準備いただき、
URLリンクや更新情報のみを都度書き込むといった形でも問題ありません)
上記情報を書き込むスレッドですが、
2ch特化型サーバ・ロケーション構築作戦 Part20
http://qb5.2ch.net/test/read.cgi/operate/1140540754/
をご使用いただけますと助かります。
2) 書き込みの際に、該当する携帯側のIPアドレス(携帯側から御社サーバに
書き込みリクエストがあった際の携帯側のIPアドレス)を、
一定の方法で2ちゃんねるにそのまま送信いただくこと
これにより2ちゃんねるは、どの会社の携帯電話からの書き込みであるか
を、携帯電話から直接書き込んだ場合と同様の方法で判定できることになり
ます。
なお、上記はIPアドレスの逆引き名ではなく、
IPアドレスそのものを送信いただけると助かります。
携帯電話の固有番号はキャリアごとに仕様・フォーマットが異なっているた
め、この情報が必要となります。
3) 書き込みの際に、該当する携帯の端末固有情報を
一定の方法で2ちゃんねるに送信いただくこと
理由は上記の通りとなります。
なお、上記 2) 3) につきましては、御社側において User-Agent: ヘッダに
挿入する方式(フォーマット)を明確に決めていただき、
この技術情報を 1) と同様、事前にお知らせいただけると助かります。
以上になります。よろしくお願いいたします。
465モーマン☆鯛。
NGNG ド○○ゴ?
466生姜焼き ★
2006/03/17(金) 18:47:18ID:???0 jigではないかと推測
467モーマン☆鯛。
NGNG アッー!
2006/03/17(金) 20:15:05ID:uM3QytbS0
live22xが重い重い状態というのは実際はどうなっているですかね。
なんかいろいろな話がでているので、まとめるとどうなんでしょ。
・何らかの原因(これがrootさんがいっている蟲?)でバックが
応答を返さなくなって、バックに問い合わせを行っている
フロントも詰まり、ユーザへの応答がない。この状態が重い重いで正しい?
(apache statusでみるとフロントもバックもフルスロット使用中?)
・フロントのloadが高くなるのは重い重いとは直接関係ない。
(dlopenのMT-unsafeのせい or PHPのせい or >>348 )
・バックはフロントみたいにloadが高くなることはない。
たくさんのアクセスがある際に固まるだけでほかは健康。
・暴走と蟲踏みは異なる事象
暴走はフロントのみ(アクセス数とは直接関係ない、
2.2にしてからおきている、prefork MPMだとOK?)
蟲踏みはバックのみ(アクセス数と関係しているかも
>>289の通りなのでカーネルが一番怪しい。)
順番に倒していかないと、発散しそうですね。
受付嬢はrootさん、SunOSさんの教育で問題ないようですし、
・フロントをガチと思われる
Apache 2.0.55 / prefork MPM + PHP 4.4.2 + libmap.conf (thr)
+ カーネルにcalcruのパッチ + >>247のパッチ
構成で固定して、バックだけいじっていく方向とか。
・フロントでmod_cacheを動かす、だめならsquidをあげて、バックへの
アクセスを減らし、バックの問題を先延ばす(6.1に期待)とか。
はどうですかね。
なんかいろいろな話がでているので、まとめるとどうなんでしょ。
・何らかの原因(これがrootさんがいっている蟲?)でバックが
応答を返さなくなって、バックに問い合わせを行っている
フロントも詰まり、ユーザへの応答がない。この状態が重い重いで正しい?
(apache statusでみるとフロントもバックもフルスロット使用中?)
・フロントのloadが高くなるのは重い重いとは直接関係ない。
(dlopenのMT-unsafeのせい or PHPのせい or >>348 )
・バックはフロントみたいにloadが高くなることはない。
たくさんのアクセスがある際に固まるだけでほかは健康。
・暴走と蟲踏みは異なる事象
暴走はフロントのみ(アクセス数とは直接関係ない、
2.2にしてからおきている、prefork MPMだとOK?)
蟲踏みはバックのみ(アクセス数と関係しているかも
>>289の通りなのでカーネルが一番怪しい。)
順番に倒していかないと、発散しそうですね。
受付嬢はrootさん、SunOSさんの教育で問題ないようですし、
・フロントをガチと思われる
Apache 2.0.55 / prefork MPM + PHP 4.4.2 + libmap.conf (thr)
+ カーネルにcalcruのパッチ + >>247のパッチ
構成で固定して、バックだけいじっていく方向とか。
・フロントでmod_cacheを動かす、だめならsquidをあげて、バックへの
アクセスを減らし、バックの問題を先延ばす(6.1に期待)とか。
はどうですかね。
470root▲ ★
NGNG >>469
一番目
正しいです。
二番目
正しいです。
三番目
(今のところは)正しいです。
ただし、オリンピックの荒川静香金メダルの時は
live22x1でもバックと同じ症状が出たっぽいです。
フロントにもバックと同じ虫はいて、普段は発動していないだけと推測。
四番目
暴走はフロントのみ: 正しいです。
2.2 にしてから起きている: 2.2 + libthr にしてから起きています。
2.2 にしてからはprefork MPMを試していません。
最終段落は、そんなかんじですかね。
フロントは libthr にしなければいけないような状態では(今のところ)なさそうなので、
今 ex14 で試している Apache 2.2 + worker MPM + libpthread で暴走が起こらなければ、
libthr をやめて libpthread でいこうかなと。
フロントでsquid動かすですか。つまり、フロントとバックの間に入れるということですね。
悪くないセンスかも。
いずれにせよ、ひとつひとつというかんじで。
一番目
正しいです。
二番目
正しいです。
三番目
(今のところは)正しいです。
ただし、オリンピックの荒川静香金メダルの時は
live22x1でもバックと同じ症状が出たっぽいです。
フロントにもバックと同じ虫はいて、普段は発動していないだけと推測。
四番目
暴走はフロントのみ: 正しいです。
2.2 にしてから起きている: 2.2 + libthr にしてから起きています。
2.2 にしてからはprefork MPMを試していません。
最終段落は、そんなかんじですかね。
フロントは libthr にしなければいけないような状態では(今のところ)なさそうなので、
今 ex14 で試している Apache 2.2 + worker MPM + libpthread で暴走が起こらなければ、
libthr をやめて libpthread でいこうかなと。
フロントでsquid動かすですか。つまり、フロントとバックの間に入れるということですね。
悪くないセンスかも。
いずれにせよ、ひとつひとつというかんじで。
471root▲ ★
NGNG 【実況】 live22x Part13
http://qb5.2ch.net/test/read.cgi/operate/1141564207/664-667
原因切り分けも兼ねて、live22x[123] の /etc/libmap.conf を削除して
httpd をリスタート。
これで、
・不可解な 500 エラー
・不可解な httpd 暴走
が、起こらなくなることを期待。
http://qb5.2ch.net/test/read.cgi/operate/1141564207/664-667
原因切り分けも兼ねて、live22x[123] の /etc/libmap.conf を削除して
httpd をリスタート。
これで、
・不可解な 500 エラー
・不可解な httpd 暴走
が、起こらなくなることを期待。
http://www.bookshelf.jp/texi/libtool/libtool-ja_10.html
>一方,`RTLD_NOW'は,FreeBSD上のマルチスレッドアプリケーションで問題が生じたと報告されています.
APR ではまさに RTLD_NOW で dlopen() してるわけですが......
それなら APR のソースをいじって RTLD_LAZY にしちゃってもいいのかも?
>一方,`RTLD_NOW'は,FreeBSD上のマルチスレッドアプリケーションで問題が生じたと報告されています.
APR ではまさに RTLD_NOW で dlopen() してるわけですが......
それなら APR のソースをいじって RTLD_LAZY にしちゃってもいいのかも?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【スクープ】中居正広が女性との間に重大トラブル、巨額の解決金を支払う 重病から復帰後の会食で深刻な問題が発生 ★27 [Ailuropoda melanoleuca★]
- 『M-1グランプリ』20代目王者は令和ロマン「去年の倍、嬉しいです!」前人未到の連覇達成で史上最多1万330組の頂点に★4 [muffin★]
- 178万円まで引き上げで、自民・小野寺氏「何で税源穴埋めするか提案して欲しい」国民民主に要請 ★9 [お断り★]
- 【芸能】眞鍋かをり「高齢者より若者にもっとお金を使ってほしい」 政府の経済対策に疑問「不公平感が」 [冬月記者★]
- 「あと何十年、こんなに苦しまなければいけないのか」 日本人女性と結婚しても「在留許可」認められず…スリランカ人男性(東京地裁) [少考さん★]
- ベトナム人に給与未払いか、愛知 数千万円以上、大使館が調査要請 [香味焙煎★]
- 【U-NEXT】プレミアリーグ総合 ★64
- 競輪実況★1249
- NFL 2024/25 week16 part 2
- 巨専】
- 🌰どんぐりレベルスレ ★47
- 【ATP】テニス総合実況スレ2024 Part 244【WTA】
- 【悲報】国民民主党「ふむ、所得税引き下げる代わりに『地価税』を導入すればいいのでは🤔」 [616817505]
- 彡(。)(゚)「専ブラのツリー表示は見づらい」
- 【悲報】斎藤元彦陣営のネット広報担当会社が投稿したnoteで騒然★308 [641980297]
- 🏡が無い😭
- 【悲報】女子「男はバッグ持たないで。」 [986198215]
- 【速報】5ちゃんねる公式アプリ、配信開始キタ━━━━(゚∀゚)━━━━!! [616197217]