2ch特化型サーバ構築作戦 Part2

このエントリーをはてなブックマークに追加
2root ★
まずはこれまでの経過などをつらつらと。

- サーバのハードウェアの確認
* oyster175
+ Xeon 2.4GHz
+ 2G mem
+ 37G 10,000rpm disk x 2
+ swap 1G
+ FreeBSD 4.8R
+ IP address: 64.71.163.26 (/29)
3root ★:03/08/29 15:20 ID:???
- 時間をJSTに
- ntpdateでとりあえず時間あわせ
- /etc/make.conf を作成

- CVSupをインストール

- /usr/src/Makefile 等のベースディレクトリにある必要なファイルをインストール
- /usr/ports/Makefile をインストール
- ( cd /usr/src; make update)

- inetdをとめる

- /etc/hosts と /etc/rc.conf を設定してホスト名を変える
* oyster175.uma.2ch.net に変更
4root ★:03/08/29 15:20 ID:???
- システム更新
* cd /usr/src
* make buildworld
* make buildkernel
* make installkernel
* reboot
* make installworld
* mergemaster
* reboot
5root ★:03/08/29 15:22 ID:???
- kernel reconfig
* SMPあり
* 不要なデバイスを削除
* bpfを止める

- pkg_add -r でとりあえずパッケージをインストール
* perl (perl-5.6.1)
* wget (wget-1.8.2)
* rsync (rsync-2.5.6)
* sudo (sudo-1.6.6)
+ visudo 相当を別途
* ncftp3 (ncftp-3.1.5)
* proftpd (proftpd-1.2.8)
+ /etc/pam.conf にエントリ追加
+ proftpd.conf の設定
+ /usr/local/etc/rc.d/proftpd.sh は設定せず、daemontools 配下で動かす
6root ★:03/08/29 15:23 ID:???
- /etc/fstab の /home に nosuid を追加

- パラメータ調整
* /etc/rc.conf
# added for 2ch
inetd_enable="NO"
tcp_drop_synfin="YES"
icmp_drop_redirect="YES"
icmp_log_redirect="YES"
kern_securelevel_enable="YES"
kern_securelevel="1"
syslogd_flags="-ss -v"
accounting_enable="YES"
sendmail_enable="NO"
7root ★:03/08/29 15:24 ID:???
* /etc/sysctl.conf
# added for 2ch
# special setting for HTT, but...
#machdep.cpu_idle_hlt=1
# increase IP port range
net.inet.ip.portrange.last=20000
# enable new feature on TCP for FreeBSD 4.7 or later
net.inet.tcp.inflight_enable=1
# increase maximum file descriptors
kern.maxfiles=65536
kern.maxfilesperproc=32768
# increase listen queue
kern.ipc.somaxconn=4096
kern.ipc.maxsockbuf=1048576
# do not use swap area (it's slow)
vm.defer_swapspace_pageouts=1
vm.disable_swapspace_pageouts=1
* /boot/loader.conf
# added for 2ch
kern.maxusers=512
kern.ipc.nmbclusters=32768
kern.ipc.maxsockets=32768
8動け動けウゴウゴ2ちゃんねる:03/08/29 15:25 ID:7hyKDxFr
規制にビクビクしながらテンプレ貼ってる?
9ssl.ecc.u-tokyo.ac.jp:03/08/29 15:25 ID:VPUGodFT
テンプレ貼るの時間かかりすぎ
10root ★:03/08/29 15:26 ID:???
- ntp関連設定
* /etc/ntp.conf
* /etc/rc.conf に設定追加

- daemontools インストール
- ucspi-tcp インストール

- djbdns インストール、セットアップ
* dnscache(ローカルDNSキャッシュ)を動かす

- /etc/resolv.conf 書き換え
domain uma.2ch.net
nameserver 127.0.0.1
nameserver 216.218.130.50

- DNSへの登録
* dns1.2ch.net で uma.2ch.net サブドメインの DNS を運営
11root ★:03/08/29 15:27 ID:???
- md (malloc disk)の設定
* /md に mount するように設定

- sendmail
* 外部向けデーモンのストップ
* root あてメールのaliasesでの転送設定

- ProFTPD設定続き
* daemontools 配下で動かす
+ mkdir /usr/local/etc/proftpd; chmod +t /usr/local/etc/proftpd;
+ cd /usr/local/etc/proftpd; mkdir log; mkdir log/main;
+ chown multilog.multilog log/main
+ run と log/run を設定
+ cd /var/service; ln -s /usr/local/etc/proftpd
12root ★:03/08/29 15:31 ID:???
[ここからTODO]
- 該当ドメインの逆引きDNSの設定依頼(依頼中、なくても2chサーバはできる)
- DNS統計をとるための設定(出張前にはやっときたい)

- Apacheの設定いろいろ(ここで議論しましょう)
- /md (malloc disk)をどう生かすか
* index.html, subject.txt, subback.html あたりかなぁ
- ch2news5 (バーチャルホストアカウント)の作成

- 試験運用の試験運用(どうしましょうかね>仕事人さん)
- 試験運用開始(来月上旬あたりにできるといいなぁ)

- Apacheの統計をとるための設定(動かしながらかなぁ)
13root ★:03/08/29 15:32 ID:???
てなところ。

>>8 >>9
スマソ。別ファイルから抜き出してて遅くなりました。
14高句麗 ◆OIZKOUKURI :03/08/29 15:33 ID:wEGdPver
ああわけわからんな
15root ★:03/08/29 15:39 ID:???
というわけで、>>12 から。

1)Apacheの設定をどうするか
2)malloc disk をうまく使うと高速になるのかどうか

が当面の課題かなと。

1)は、まずは他とあわせてApache 2.xがよさそうか。
で、mod_deflateを活用。
PHPはないとまずそうですね。2chプロバイダのスクリプトでPHP使っているし。
他にとりあえず必要なもジュールとかありますかね。
あと、パフォーマンス的に気をつけるべきポイント等があれば、お教えいただければと。

2)は、malloc diskに置くとして、プログラム側(bbs.cgiとか)をあまり変更せずに
うまく置けるストラテジがほしいところですね。
subject.txt や subback.html あるいは index.html 等はいわゆる「復帰」すれば
戻るような気がするので、malloc disk 上に置いてもいいような気がするけど、
そのへん、どうなんでしょう。
16root ★:03/08/29 15:42 ID:???
あと、サーバはまず1台できる予定です。それに伴って、

・このサーバに移転するのはnewsplus? それともmnewsplus?
・記者キャップは分けるの? 分けないの?

といった問題が出てくるかと思います。
しかし、このスレでは当面それらの問題は扱わないことにします。
ここではサーバ構築の技術ネタのみを取り扱おうかと。
17root ★:03/08/29 16:17 ID:???
ということで、そろそろマターリとはじめようかなと。

news5.2ch.net [64.71.163.26]

という設定を2ch.net側のDNSに入れてくださいです。