X



トップページ運用情報
1001コメント326KB

【Project peko】2ch特化型サーバ・ロケーション構築作戦 Part17

■ このスレッドは過去ログ倉庫に格納されています
0001root▲ ★
垢版 |
05/02/03 05:34:37ID:???0
peko作戦について語るスレです。
サーバロケーションPIEに関する話題もこちらで。

<現在の主要なテーマ>
・oyster243(BBQ/dnscache)の突然死対策&cobra2245セットアップによる2台体制化
・oytser902(memories)のFreeBSD 5.3化
・「雪だるま作戦」による、スケーラブルなサーバ群構築
・read.cgi/bbs.cgiの細かな調整・詰め
・携帯サーバのプライベート側スイッチのグレードアップ検討
・各種作戦・プロジェクトとの連携
・FreeBSDのさらなるチューニング詰め

<関連スレッド>
■新春特別企画「雪だるま作戦」liveサーバの飛躍なるか!? Part1
http://qb5.2ch.net/test/read.cgi/operate/1105035540/
■ 自動地震速報@2ch をつくろう
http://qb5.2ch.net/test/read.cgi/operate/1106583619/
■ テレビ番組欄@2ch をつくろう 第2話
http://qb5.2ch.net/test/read.cgi/operate/1107366393/

<関連サイト>
レンタルサーバー maido3.com 2ちゃんねるの転送量: http://server.maido3.com/pie/
MRTGによる統計情報: http://mumumu.mu/mrtg/
2ちゃんねる/PINKちゃんねる 稼動中のサーバ一覧: http://mumumu.mu/serverlist.html

<前スレ>
【Project peko】2ch特化型サーバ・ロケーション構築作戦 Part16
http://qb5.2ch.net/test/read.cgi/operate/1102087698/
0704動け動けウゴウゴ2ちゃんねる
垢版 |
2ちゃんねる07/04/01(金) 09:11:14ID:YvA+mE1M0
マルコフ連鎖で自動生成された文章かな?

/rootってのは/のことか?
background fsckとnoatimeの関係性について何を言いたいのか良く理解できん。
0706動け動けウゴウゴ2ちゃんねる
垢版 |
2ちゃんねる07/04/01(金) 11:54:26ID:YvA+mE1M0
いちおうマジ解釈すると、703はasyncとnoatimeを混同しているってことなのかもね。
ext3よりもUFS2(+softupdate)は全然良いFSだと思う。
0708703
垢版 |
2ちゃんねる07/04/01(金) 13:57:24ID:u059DgD70
>>706
の指摘通り async と noatime を間違っていました。

ご指摘ありがとう。
0709root▲ ★
垢版 |
NGNG
KeepAliveTimeout 10 => 5

を、live20とex10で実験開始。
0712ピロリ
垢版 |
2ちゃんねる07/04/01(金) 23:15:19ID:/zSy24Sv0
蒼井そら・・・・・・・・・
0715root▲ ★
垢版 |
NGNG
一時期入れようと思った、mod_dosevasiveあるいは相当品を、
また考えるべきなのかしら。
0720root▲ ★
垢版 |
NGNG
>>719
ちょっと面白そうな雑誌ですね。

さて、RELENG_5_4が出て5.4-RC1になったので、
ぼちぼち、5.4Rへのバージョンアップの準備をすすめようかと。
0721root▲ ★
垢版 |
NGNG
で、今回一番めんどいのは上の方でもちょっと出たけど、これかなぁ。
5.4Rになったこととは直接には関係しないけど、影響でかいし。

20050201:
AFFECTS: users of lang/perl5 and lang/perl5.8
AUTHOR: tobez@FreeBSD.org

lang/perl5 has been updated to 5.6.2, and lang/perl5.8 has been
updated to 5.8.6. you should update everything depending on perl, that
is:

* first, upgrade your perl installation (use either lang/perl5 or
lang/perl5.8, the latter being recommended);
* for FreeBSD 4.X, run "use.perl port", so that the system knows you
have 5.8.6 or 5.6.2; this step is not needed on FreeBSD 5.X and
FreeBSD -CURRENT;
* run some magic incantations to upgrade all ports depending on perl,
that is run something like :
portupgrade -f `(pkg_info -R perl-5\* |tail +4; \
find /usr/local/lib/perl5/site_perl/5.[68].[1245] -type f -print0 \
| xargs -0 pkg_which -fv | sed -e '/: ?/d' -e 's/.*: //')|sort -u`
This is likely to fail for a few ports, you'll have to upgrade them
afterwards by hand.
0723root▲ ★
垢版 |
NGNG
>>722
ども。
認識しているので、ぼちぼちやっていくです。
0724 ◆Reffi/bQ.c
垢版 |
2005/04/04(月) 04:06:09ID:JTSVQxNh0
>720
おおっ
あとはいつものごとくex10が(ry
perlはいつかは通らなきゃいけない道なので今のうちに対策しておいた方がいいですね
0725root▲ ★
垢版 |
NGNG
make buildworld中。

%sysctl debug.mpsafevm
debug.mpsafevm: 1

vmもGiant-freeになったのね。
tigerサーバ/cobraサーバには、朗報かと。
0726root▲ ★
垢版 |
NGNG
おわりそうもないんで、しかけといて、もうねるか。
vfsがmpsafeになるのって、いつごろだろ。
0727root▲ ★
垢版 |
NGNG
cvsup.peko.2ch.net を 5.4-RC1 にしてみた。
カーネルとユーザランドだけで、まだportsは古いまま。

%uname -a
FreeBSD banana273.maido3.com 5.4-RC1 FreeBSD 5.4-RC1 #0: Sun Apr 3 21:32:24 PDT 2005 root@banana273.maido3.com:/usr/obj/var/src/sys/I386_BANANA_54 i386

特に問題にはならず、普通の手順でOKの模様。

0)Apache等の停止(外からのアクセスを止める)
1)rm -rf /usr/obj/* # 念のため
2)supfileを更新
 *default release=cvs tag=RELENG_5_4 # RELENG_5_3から更新
3)cd /usr/src; make update
4)make -j 4 buildkernel
5)make installkernel
6)リブート
7)ブートアップ確認後、dmesgをチェック・保存
8)cd /usr/src/usr.sbin/mergemaster; make -m /usr/src/share/mk all install # 今回は必要なさげ
9)mergemaster -p # 今回は必要なさげ
10)make -j 4 buildworld
11)make installworld
12)mv /etc/rc.d /etc/rc.d.53; mkdir /etc/rc.d
13)mergemaster -i # 12)を省略して、13)をmergemasterでも問題ない
14)リブート
15)ブートアップ確認後 rm -rf /etc/rc.d.53
16)Perl関係とかports関係を更新
0728root▲ ★
垢版 |
2005/04/04(月) 15:56:08ID:???0
ports/packagesも更新した。概ね問題なさげ。
5.2.1R => 5.3R に比べると、面倒さは少なめの模様。
0729root▲ ★
垢版 |
NGNG
ということで、DNS設定依頼出します。

【Project BBBE】共有!?BE規制
http://qb5.2ch.net/test/read.cgi/operate/1112542929/252

(新規追加)
+b.2ch.net:206.223.151.135
&bbe.2ch.net:206.223.151.135:a

これで、作業用の場所 b.2ch.net と、DNS参照用のサブドメイン bbe.2ch.net が使えるようになります。

今日は、ここまで。
0732P061204003007.ppp.prin.ne.jp
垢版 |
2005/04/05(火) 17:09:55ID:wbwHKFuo0
>>730
b.2ch.netの方にコンテンツを入れて、bbe.2ch.netの方でDNSクエリします。
帰ったら仕様をメールするです。

>>731
要対策すね。
帰ったらたんたんと。
0733root▲ ★
垢版 |
NGNG
仕様を書いたメールを発射しました。

なんだかめまいがするので、>>731 の対策は明日以降、、、。
0734 ◆yadoQ//n/E
垢版 |
2005/04/06(水) 02:30:25ID:ehJVSSoK0
おだいじになさいませ。
0735 ◆Reffi/bQ.c
垢版 |
2005/04/06(水) 02:52:10ID:OpdMk35V0
正式にRC1来ますた。
(FTPもRC1に差し変わってます。)

First release candidate 2 Apr 2005 5 Apr 2005
0738root▲ ★
垢版 |
NGNG
ということで、ここに保管。

携帯→2ch運用情報スレッド17
http://qb5.2ch.net/test/read.cgi/operate/1109943424/633

633 名前:root▲ ★[sage] 投稿日:2005/04/09(土) 13:40:37 ID:???0 ?##
原因ですが、

APCアクセラレータのportsが更新されて、
extension=apc.so

が、extensions.iniに自動で入るようになったことへの対応漏れでした。
ごめんなさい。

extension=apc.so が extensions.ini に2行入っていると、
httpdがメモリを無限に食い尽くして、最後はシステムが破綻に陥る模様。
0739root▲ ★
垢版 |
NGNG
今 m (BBM) のセキュリティホール対策中ですが、
snmpd が 250M 以上食っていた。で、リスタートしたらシステム全体が軽く。
何か、メモリリークがあるのかも。

これで「BBMが止まっています」の頻度が減るといいなぁと。
0740讃岐 ◆IamaVIPdCI
垢版 |
NGNG
ex10でまだ出てるw
0742root▲ ★
垢版 |
NGNG
なんか、確かにだめっすね。
調べるか。
0744root▲ ★
垢版 |
NGNG
一応、いろんな試みについては、それなりにログがとられるってかんじで。

で、BBMの中身のシステムがなんだかいまいちかも。
0745root▲ ★
垢版 |
NGNG
とりあえずリブート直後にbbmがいまいちになるのは、対策しました。
あとは、元データに戻るタイミングの問題か。
これは、サザンさんと共同作業すね。
0746root▲ ★
垢版 |
NGNG
で、確かにnews4vipだけ、BBMが止まっていますが出る可能性が高いみたい。
単に投稿数が多いというだけなのかな。ちょっと謎。
0747讃岐 ◆IamaVIPdCI
垢版 |
NGNG
なんか書き込み規制がかかってる携帯から
リロードしまくったあとに、IEで見ると止まってることが多い気がする
0748root▲ ★
垢版 |
NGNG
bbs.cgi をチェック中、、、。

なんか、BBMで1箇所不思議な処理をしているところがあるので、
それをコメントアウトしてみる。
0749root▲ ★
垢版 |
NGNG
そっか。よく読むと、不思議な処理じゃないみたいですね。
うーむ。
0750root▲ ★
垢版 |
NGNG
で、何が不思議なのかというと、
同じex10なのにmorningcoffeeではならないような気がするんですよね、これが。
0753655
垢版 |
2005/04/10(日) 13:16:26ID:U1RUNgfa0
>>677 の read.cgi の結果をキャッシュの続きです。

Squid が CGI をキャッシュするようにしても、apache+read.cgi がするにしても、
問題はスレが更新されたら、キャッシュも破棄、更新しなければいけないことです。

Squid は dat の更新を知るのは、ほぼ無理です。
read.cgi が stat.2 を使って更新されていなければ、元の提案のようにキャッシュの HTML を送信。
dat が更新されていれば、キャッシュを破棄して、HTML を生成。

stat() も使わないようにするのだったら、bbs.cgi が何らかの方法で、read.cgi に更新の通知をしなければいけないです。
# 試すにしても、工数を考えるとずいぶん後ででしょう。


ちょっと点検したいのですが、read.cgi は C で、bbs.cgi は perl で出来ているのですよね?

後、気になっているところとしては、この方法を取ろうとすると read.cgi は常駐プロセスになる必要が。

時間が取れたら、プロトタイプでも作ってみます。
0754root▲ ★
垢版 |
NGNG
>>752
ももいさん翻訳のやつですか。
http://www.amazon.co.jp/exec/obidos/tg/detail/-/books/4873112184/contents/ref=cm_toc_more/249-8559731-8913944

>>753
> ちょっと点検したいのですが、read.cgi は C で、bbs.cgi は perl で出来ているのですよね?
Yes.

> 後、気になっているところとしては、この方法を取ろうとすると read.cgi は常駐プロセスになる必要が。
mod_cgidso 化までできたものを mod_read にするのは、それほど面倒ではないはず。
0755◆cZfSunOs.U
垢版 |
2005/04/10(日) 17:54:51ID:jwBggCkI0
ん〜要は read.cgi が dat の mtime を Last-Modified として吐けば,
スタティックな HTML ページと同様にキャッシュ可能なんですけどね.
http://dso.2ch.net/test/read.cgi/myanmar/1101888913/64-68n
では mod_mem_cache にキャッシュさせてたわけですが.

どちらにしろ read.cgi では dat の mmap() の際にサイズ取得のため
fstat() してると思うんで,同時に mtime も知ることができるかと.
0756root▲ ★
垢版 |
NGNG
サーバダウン(鯖落ち)情報Part61
http://qb5.2ch.net/test/read.cgi/operate/1111396436/866-867

867 名前:root▲ ★[sage] 投稿日:2005/04/10(日) 20:48:04 ID:???0 ?##
<IfModule prefork.c>
StartServers 384
MinSpareServers 32
MaxSpareServers 384
ServerLimit 512
MaxClients 512
MaxRequestsPerChild 1000000
</IfModule>

にした。< oyster902
0758root▲ ★
垢版 |
NGNG
>>757
>>756 のことだとすると、メモリ使用量の(少しでも)節約かなと。
必要ないなら、httpdの数は少ないに越したことなさそう。
0759root▲ ★
垢版 |
NGNG
cvsup.peko.2ch.net を 5.4-RC2 にした。

%uname -a
FreeBSD banana273.maido3.com 5.4-RC2 FreeBSD 5.4-RC2 #2: Sun Apr 10 06:10:50 PDT 2005 root@banana273.maido3.com:/usr/obj/var/src/sys/I386_BANANA_54 i386
0760655
垢版 |
2005/04/11(月) 10:38:49ID:7Hxwrf7I0
>> 755

そうですね。
何を考えていたのか、stat/fstat を省略するばかり考えていたので
Squid では、無理だと思ってしまいました。

話によると、動的ページのキャッシュ化もずいぶん少ない工数で実現できそうですね。
0761未承諾広告※ ◆TWARamEjuA
垢版 |
2005/04/11(月) 15:41:25ID:UXDVdjGG0
memories またもや陥落です。。。

Date: Mon Apr 11 14:40:06 2005 JST-9 (Sun Apr 10 22:40:06 2005 PST+8PDT)
Target: oyster902.peko.2ch.net[memories.2ch.net] 206.223.151.230
0765root▲ ★
垢版 |
2005/04/11(月) 17:06:26ID:???0
オンラインになりました。しばらく作業できます。
まず、リブート依頼いきます。
0766root▲ ★
垢版 |
NGNG
リブート入れていただきました。
ブートアップ待ち中。
0767root▲ ★
垢版 |
NGNG
上がってこないですね。fsck中か。

ちと、しばらくオフラインになります。作業は後程。
0768root▲ ★
垢版 |
NGNG
カーネルを前のバージョンに戻して、リブート中。
0769root▲ ★
垢版 |
NGNG
カーネルを前のバージョンに戻しました。

%uname -a
FreeBSD oyster902.peko.2ch.net 5.3-RELEASE-p5 FreeBSD 5.3-RELEASE-p5 #1: Mon Feb 7 21:58:28 PST 2005 root@oyster902.peko.2ch.net:/usr/obj/usr/src/sys/AMD64_COBRA_53_AAC_ISP amd64

で、Sumaにシリアル経由で入れないみたいです。
これは別途Jimさんに確認しておきます。
0770root▲ ★
垢版 |
NGNG
2chの動作報告はここで。 パート16
http://qb5.2ch.net/test/read.cgi/operate/1103455176/653

operate的には単独スレじゃなくて、とりあえずここを動かすことにするか。
で、方向性がまとまってきたら、単独スレってかんじで。

手段としては、同じIPアドレスからの単位時間あたりの接続回数とか、
datリクエスト数とか、read.cgi起動回数とかをトリガにして、何かにとばすかんじか。
概念的には「バーボンハウスの読み版」ってかんじで。

で、そのためのツールとしては、何が考えられるのかっていうのが議論のターゲットなのかな。
mod_dosevasive を前にちょっと試したことがあるけど、ややいまいちだったかも。
0771FOX ★
垢版 |
2005/04/12(火) 16:11:40ID:???0
私のお勧め(負荷が低い、作るの簡単、不明点無し)

1) 取っているログから解析
2) N分毎におこなう
3) バーボンに突っ込む
0773FOX ★
垢版 |
2005/04/12(火) 16:27:43ID:???0
20 とか 30 しせゃないですかねぇ < N分
短時間の微分値をみても判定できないと思う。
0774root▲ ★
垢版 |
NGNG
>>771
私も、そんなことを考えていました。

httpd側に組み込むのは、結構めんどいです。
(各子供httpdの*合計*を調べないといけないので)

mod_dosevasiveは、一つの子供単位でしか数を見れないので、
ほんとのDoS攻撃みたいにたくさん来ないと、検知しにくいですね。
つまり、httpdの子供が512人とかいると、
短時間のうちに512回試みても、1つあたりだと1回とか2回にしかならない。

作るのあんまり得意じゃないけど、
とりあえず今のログをなめて、IPアドレスの数を調べるやつの雛形を作ってみるか。

# おいそがしそうですね。>>771
0775ざびいも
垢版 |
2005/04/12(火) 16:30:33ID:iSK5dAHx0
まったくだ(ガッ!)
0776root▲ ★
垢版 |
NGNG
>>772-773
30分〜1時間ぐらいか。
そのぐらい利きが遅いのを、どう判断するかってことですが。

で、バーボンはbbs.cgiの制限だけな気がするので、全部だめにするしくみ(バーボンII?)を作って、
そこに突っ込んでしまうってかんじですかね。
0777FOX ★
垢版 |
2005/04/12(火) 16:34:22ID:???0
fox.cgi を改造するとはやいと思われ

1) 今のログに対して解析を行う等時間的概念の改造
2) 全体に対する割合とか絶対量とか発動条件の検討&実装
3) バーボンは cgi 一発呼ぶだけです。組み込み簡単。
0778FOX ★
垢版 |
2005/04/12(火) 16:35:17ID:???0
>>776
範囲は最後の微調整かと、
0779root▲ ★
垢版 |
NGNG
>>777
fox.cgi(PV処理プログラム)というと、1時間に1回ですね。
そのぐらいの粒度でいくと。

割合は、厳密にやるなら初回出現からx秒の間にy回とかいうのがいいんだろうけど、
それはコスト高い割に実入りが少なそうだから、
1時間の間にy回ってかんじかしら。

今の様子見てると、y = 3000あたりからか。
あるいは、全体回数がz回だったとして、y / z > 5%を占めたらだめとか。

>>778
必要に応じて変えられると。
0780FOX ★
垢版 |
2005/04/12(火) 16:48:45ID:???0
>>779
いやいやプログラムの雛形としては fox.cgi が良いのではないか
近道なんじゃないかということで fox.cgi でやるという意味ではないですー

N=60でも充分かもですが
0782動け動けウゴウゴ2ちゃんねる
垢版 |
2005/04/12(火) 19:06:17ID:xgFpR3DT0
>>777-781
少なくとも 206(差分取得) とか 304(変更無し) は除外してほしい


x分にy回呼び出し食らったら read.cgi がバーボンリストへ追加 (*全鯖対象ではなく自分自身の鯖だけ行う)
0784root▲ ★
垢版 |
NGNG
Jimさんに oyster243 用の RAID 1 カードの手配と、cobra2245 と同様のセッティングでの
OS インストールをお願いしました。

できたところで、たんたんと BBQ 二重化へと。
0785root▲ ★
垢版 |
NGNG
FreeBSD cobra2245.maido3.com 5.3-RELEASE-p5 FreeBSD 5.3-RELEASE-p5 #0: Wed Jan 19 22:51:40 PST 2005 root@cobra2245.maido3.com:/usr/obj/usr/src/sys/AMD64_COBRA_53_AMR amd64

FreeBSD 5.3R-p8 は、ことによるとamd64ではいまいちなのかも。
0786root▲ ★
垢版 |
NGNG
amrd0: 34938MB (71553024 sectors) RAID 1 (degraded)

degraded になったので、RAID 1の片方が、いまいちになった模様。 < BBQ

今は動いていますが、いまいちな状態ですね。
落ちた理由は、これかも。
0787root▲ ★
垢版 |
NGNG
PIEにいるSeanさんと連絡がとれたので、ICQで事情を伝達中。
0789root▲ ★
垢版 |
NGNG
>>788
そうしていただけると助かります。
わたしのほうでも、memoriesにバックアップとります。

スペアディスクはあるそうなので、Seanさんに交換していただこうかと。
0790root▲ ★
垢版 |
NGNG
Sean さんがリモートKVMスイッチを準備してくれるとのこと。
どっちのディスクがあぼーんしているか調べる必要があるので、
その際には一度BBQ落とすことになります。

で、わかりしだい交換作業へと。
0791root▲ ★
垢版 |
NGNG
そういえば ex10 = oyster901 は立派な amd64 だけど、
5.3R-p8 にしても、特に落ちてないし。

BBQ落ちがHDDトラブルのせいだとすると、
memories の構成のときのみ、5.3R-p8 ではいまいちだということも
考えられるかも。
0792root▲ ★
垢版 |
NGNG
リモートコンソールを準備してくれました。

とったバックアップを確認できたら、いったんcobra2245を落とします。
0793root▲ ★
垢版 |
NGNG
バックアップ確認できました。作業はいります。< cobra2245
0794未承諾広告※ ◆TWARamEjuA
垢版 |
2005/04/12(火) 23:51:33ID:7pXg+pyt0
なかなか速度が上がらないですぅ、、、(泪)
2% 2144KB 27.0KB/s 44:02 ETA

いきなりgzip -r したのはないしょ(汗)@tar忘れ
0795未承諾広告※ ◆TWARamEjuA
垢版 |
2005/04/12(火) 23:52:42ID:7pXg+pyt0
remote host bbq.2ch.net: Connection reset by peer
Connection closed

わははー(嬉)

よろしくおながいしますm(_ _)m深謝
0796root▲ ★
垢版 |
NGNG
memories にフルダンプをバックアップしました。
restore if で見られるのを確認。

SCSI BIOSで確認したところ、#0 のドライブがこわれていることを確認。
Sean さんに交換を依頼しました。

交換後、rebuild 作業の予定。
0797root▲ ★
垢版 |
2005/04/13(水) 00:36:53ID:???0
Seanさんがディスクを交換してくれました。
リモートコンソールをKVMで操作して、RAIDをrebuild中。
うまくいくかは、かみのみそしる。
0798root▲ ★
垢版 |
2005/04/13(水) 01:16:00ID:???0
amrd0: <LSILogic MegaRAID logical drive> on amr0
amrd0: 34938MB (71553024 sectors) RAID 1 (optimal)

ということで、rebuildは無事完了しました。
これで、cobra2245はノーマルオペレーションに戻りました。

Seanさんに、無事rebuildできたことと、お礼を伝えておこうかと。
0801root▲ ★
垢版 |
NGNG
まとめ:

・cobra2245が落ちた
・電源再投入では、うまくリブートしなかった
・人間(Seanさん)が介してリブートした結果、上がりはした
・チェックしたところ、RAID 1の片方のディスクが壊れた状態になったことが判明した
・Seanさんにリモートコンソール(KVM)をつけてもらって、私がリモートからBIOSでチェックした結果、
 #0のディスクがFAIL状態になっており、RAID 1のディスクのうち1台が壊れたことが判明した
・Seanさんに壊れたディスクを交換してもらった
・私がKVM経由でBIOSユーティリティを操作し、RAID 1をrebuidした
・rebuildはうまくいき、cobra2245は元に戻った

なお、カーネルは念のため、5.3R-p5に戻してあります。

これと別件で、oyster243 用のRAIDカードもJimさんにメールで手配しておきました。
0802root▲ ★
垢版 |
NGNG
>>799
元に戻ったという意味では、もう復活のはず。

RAIDのrebuildはたまに失敗することがあるので、結構、どきどきしました。
ブートアップのメッセージを見た時は、思わず画面に向かってガッツポーズ。
0804FOX ★
垢版 |
2005/04/13(水) 02:35:10ID:???0
私がコントロールして343をRAID化しますー
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況