Tag Archive for 'server'

deadbeaf.org 不調

どうも Mac mini から異音がしてます。度重なるブレーカダウンによるクラッシュでHDDがダメになってきてるぽい。

deadbeaf.org と trac.deadbeaf.org はしばらく見れない状態になってるかもしれないです。QSTwitterのダウンロードができなくなってます。ご迷惑をおかけします。blog.deadbeaf.org, en.deadbeaf.org はだいじょうぶ (別サーバで動いてるので)。

サーバ引っ越し

これまで、うちのMac miniで動かしていた blog.deadbeaf.org をレンタルサーバ上に引っ越ししました。 レンタルサーバの候補として、XREA / さくらインターネット / ロリポ の3つを試用しています。 現在いちばんレスポンスの良いXREAに移していますが、さくらインターネットと接戦かな。

デザインもついでなのですっきりさせようと思っていて、とりあえず google:”wordpress テーマ”で首位だったwp.vicunaさんのものに手を入れて使っています。

なんで引っ越したかというと、最近の過負荷のせいか、どうもMac miniがよくスラッシングから返ってこなくなってしまい、 サーバが止まる回数が増えてきていたから。 外出中にサーバが止まってたりすると、どうも心臓に良くない。

しかしこの8年くらいずっと自宅サーバだったので、レンタルサーバ浦島状態です。 自宅/レンタルのpros/consをあとでまとめてみようかなと。

Mac miniな自宅サーバでのApacheとメモリ

RubyでTwitter bot を書くがプチ人気になって、突発的にアクセス数が増えました。ありがたいことです。

そうこうしてるうちに、Mac miniで動かしてるサーバからの応答がぷっつりになってしまいました。リビングに行ってみると、HDDがガリガリガリと鳴り続けてます。ああ、いつものスラッシングか、と。ApacheLogPatchをつくったときなんかも、同じことが起こってました。でもあきらめて電源ブチっとしてました。なんという…

今日は一念発起して、なんとかすることにしました。いつまでも電源ブチでは壊れてしまいます。

状況確認

なにが起こってるかをtopで確認してみます。

slashing Mac OS X

512MBしかメモリのないMac miniで、504MBが使用中になっており、いかにもslashingです。

Apache restart

ひとまず、止めてしまおうと

% apachectl restart

と打ってみたのですが、いっこうに返ってきません…

状況確認 2

% ps xa |grep httpd | wc

してみたら、60くらいのhttpdがいることが分かりました。

1つのhttpdが使うメモリが8〜10MBだとすると、合計で480〜600MBのメモリが必要になってしまい、総容量を越えてしまう、というわけでした。

Apacheの設定を見直す

同時接続プロセス数が多いのが原因だと分かったので、制限してみます。

@IT::httpd.confによるWebサーバの最適化 という記事を読んで、MaxClientsというものを指定すればよいことを知りました。なるほど。 うちの場合は、だいたいhttpdにさける総メモリを450MB、1つのhttpdが使うメモリを10MBと見積もって、450/10 = 45 clients と算出しました。

MacPortsで入れているApache2の設定ファイルで、conf/extra/httpd-mpm.conf というものをincludeするようにして、

<ifModule mpm_prefork_module>
    ....
    MaxClients           45
    MaxRequestsPerChild   4098
</ifModule>

としておきました。

まとめ

自宅サーバはラクじゃないね。

おまけ

Mac OS Xで、コマンドラインから動いているプロセスの使用メモリを見る方法を、top以外にこれまで知らなかったのですが、man psしてみたところ -vとか-uをつければよいと知りました。メモリ消費量でソートするには-mをつけると。

deadbeaf

今日気づいたんだけど、ビーフってつづりが beef なんですね。 ここのドメインは beaf になっていて、そんな単語はないよと英辞郎に怒られてしまいました…

といっても、そもそも 0xDEADBEEF はメモリに特定のパターンを書いといてデバッグ時に確認するためのプラクティスなので、deadbeafってのもこのWeb時代でここを見つけやすくするためにはありかも。deadbeafでぐぐるとここが一発目にでるし。

しかし、このままずっとスペルミスを晒しつづけるのもどうよ、という気もする。

mysqldump で “Binlogging on server not active” になったときの対処法

最近、MacPortsのMySQLサーバを5.0.33にしたのですが、なにやらmysqldumpがうまくいってませんでした。 で、5分ほどで解決したので自分へのメモ。

mysqldump: Error: Binlogging on server not active

うーむ、どうしたものかとぐぐってみたところ、MySQLのForumにてそれらしき解答が。

log-bin=mysql-bin

をmy.cnfに書けと。

で、/opt/local/etc/mysql5/my.cnf あたりに、

[mysqld]
log-bin=mysql-bin

を足したら、ちゃんとdumpできました。

onestepcloser.jp -> deadbeaf.org にドメイン変更

ドメイン更新の季節になり、JPドメインの更新料が高いなぁということでドメインを変更することにしました。

これまで : onestepcloser.jp これから : deadbeaf.org

あと36日くらいは、これまでのアドレスでもアクセスできます (deadbeaf.orgに自動転送されます) 。

万が一、このサイトをチェックしてくれている方がいらっしゃれば、アドレスの変更をよろしくお願いします。

白箱 仕込み

さっそくいろいろ仕込んでいきます。

1. telnet開放

まずこれをやらないことには話が始まりません。 なんかログインが遅いと思って調べたら、defaultではdns引きがしくっているので遅いのだとか。さっそく/etc/resolve.confあたりを修正しておきます。

2. パスワード

マニュアルから、rootやadminのdefaultパスワードを拾ってきて、変えておきます。

3. apt

/etc/apt/sourcesをいじって、パッケージが使えるようにしておきます。

4. netatalk

そもそもうちにはMacしかないので、netatalkができないと意味ないじゃん状態です。 sambaでもftpでもいいのだけど、なんかネイティブ感がしないので。webdavだといいんでしょうけど、defaultのwebdavだとMacから使えないし。

というわけで、netatalkを仕込みます。apt-get install netatalkしたあと、/etc/netatalk/afpd.confをいじってゲストアクセスを有効にし、/etc/netatalk/AppleVolumes.defaultをいじってゲスト用のディレクトリを割り当て。これで、OSXからマウントできるようになりました。


しかし、まだRAID1じゃないので、片肺運転なのです。 はやくHDD調達せねば。

ところが、現在運用中のHDDはSeagateの電流食うやつなので、差し替えないといけません。あとでddとかしないといけないんだろうな。ちょいとめんどそう。

白箱 その後

白箱で買いたように、ストレインリリーフなるものがないよ!とIOデータに送り返していた白箱が返ってきました。 修理報告書曰く、

ストレインリリーフは2種類あり、製品添付品は黒色2本 (ベロなし)となります。

しらんよ!

というわけで、そのままのものが送り返されてきました。 結局マニュアルの写真にあるような手順がよくわからないため、ストレインリリーフのステップはスキップ。組み上げました。

電圧の上限で、ディスクが2つ合計で4Aまでしかだめとのことなんで、うちにあるSeagateのやつだと1こしか入りません。ひとまずシングルモードにします。RAIDにするのはあとのお楽しみ。

白箱

というわけで、白箱を買った。これでNAS RAIDでバックアップだもんね。

HDDにOSを仕込んで、さて組み立てるかと思いきや、付属品のうち「ストレインリリーフ」なるものがないことに気付く。はじめの第一歩からつまずいてしまった。

No Support製品とのことで、どこを見ても連絡手段がない。欠品がある場合には、初期不良センターまで送れとのことなので、送ることにする。面倒だ。

白箱

ということで、NASを物色してみる。

いろいろあるけど、玄箱とか白箱とか。RAIDミラーリングができる白箱のほうがよさそう。価格.comでみたら¥18,000以下で買えそう。安心料としては安い部類に入るかも。 ボーナスのつかいみちその1になってしまうかな。