2015年07月24日(Fri) [長年日記] この日を編集
_ 鯖引っ越し
買い替えてからそろそろ丸7年近い自宅鯖。
鯖と言ってもレノボのThinkCentre A61e Ultra Small、ふつーの小型PCな訳だが、これまで一度の故障もすることなく、24時間動かしっぱなしの運用に耐えてくれた。
駄菓子菓子、
- 冷却ファンのノイズがずいぶん大きくなってきたこと
- ファイルサーバとしての役割をNASに移したこと
- 自宅LANへのアクセスがTeamViewerでできるようになったこと
など、自宅でLinux鯖を24時間動かしておくことの利点がほぼ無くなった。
それに、気に入って使ってたMomonga Linuxも、ここのところアップデートの動きが止まってるし…
で、root権限もらえて、tDiaryがちゃんと動いて、自作のPHPのプログラムも動かせる、という条件を満たすレンタル鯖へ引っ越すことを決め、引越し先を物色。
結局、6月いっぱいまで初期費用無料キャンペーンやってたお名前.comのVPSに決めた。
当初、現自宅鯖から丸ごと持ってったtDiaryが動かず、まっさらのtDiary 4.1.3を入れても動かなくて焦ったが、必要なライブラリをgemで追加したら動くようになって一安心。
このまっさらの環境へデータだけ移し、旧「ごはん日記」のデータも取り込んで、とりあえず最低限の状態は整ったので、www.ohgami.jpのIPをこのVPS鯖に切り替えて、公開することとした。
かなり古いtDiary + blogkitで運用してた(ほぼ放置プレイの)素材集ページはまだ移行できてないし、この日記自体も細かい設定がまだまだ必要なので、表示がおかしかったりエラー起こしたりすることが今後もちょくちょくありそうだが、ご勘弁を m(_ _)m
2015年07月25日(Sat) [長年日記] この日を編集
_ 伊吹山ドライブ
久しぶりに伊吹山へ出かけた。
伊吹山山頂駐車場から、山頂方向を望む。
登山道をしばらく歩いて、伊吹山山頂到着っ
雲の向こうに琵琶湖が見える。
帰りに立ち寄った大垣の名物、水まんじゅう。
こし餡、抹茶餡に季節の餡の三個セットに、緑茶が付いて500円。
2015年07月28日(Tue) [長年日記] この日を編集
_ 鯖、落とされた orz
tDiaryを動かすと、途端にメモリをバカ食いし始めて、rubyをOut of Memoryに追い込んでしまうVPSの新鯖。
スワップしまくることになるので、ディスクI/Oもかなりの頻度になっていたようだ。
で、それを理由に「他のお客さんの迷惑になるから」と、ウチのVPSが強制停止させられてしまった orz
以下、お名前.comからのメールの一部を引用:
このたびお客様にご利用いただいております、VPSの運用状況に
より、ご利用いただいているサーバーへのI/O Readが頻繁に
発生している状況を確認しております。
恐れ入りますが、ご利用いただいておりますサービスにおきまして、
I/Oへの負荷継続による他のご利用者様への影響懸念から該当VPSの
緊急停止措置を実施させていただきますこと、ご了承ください。
日記の公開とともに高負荷の状況が発生したことから、行儀の悪いクローラーやspam botの絨毯爆撃かと思っていたが、それにしちゃメモリの食いつぶし方が極端すぎる。
とりあえずaccess_logを確認してみたら…一目瞭然、
xxx.xxx.xxx.xxx - - [27/Jul/2015:13:11:16 +0900] "GET /~ati/diary/?date=20040511 HTTP/1.1" 504 247 "-" "DoCoMo (compatible; tDiary plugin; tlink; http://www.ohgami.jp/~ati/diary/)"
自分のIP(xxx.xxx.xxx.xxx)からのtlinkプラグインによるアクセスが山のように記録されていた。最初のうちは200で正常に応答してたものが、最終的には504 Bad Gatewayとなって、延々と。
ごはん日記の内容を統合した際、こちらの日記を参照するtlinkプラグインの記述をそのまま取り込んでしまったことで、tlinkプラグインが自分自身を含む記事を再帰的に参照する無限ループのような状態に陥っていたらしい。それでメモリを食いつぶし、rubyでOut of Memoryが発生、と。
データディレクトリの*.td2ファイルをgrepして問題の部分を確認、当該ファイルを編集してtlinkプラグイン使用部を削除の上、キャッシュファイルも削除。
あと、tlinkプラグインのtlink.datファイルも削除して、やっと問題が解決したっぽい。
日記へのアクセスにもすぐ応答が返ってくるようになったし、freeコマンドでもswapをほとんど使ってないことが確認できた。
$ free
total used free shared buff/cache available
Mem: 1884300 88400 1635896 3872 160004 1652928
Swap: 10452984 94164 10358820
管理コンソールのリソースモニタからも、対策の前後でディスクI/Oの状況が全く変わっているのが、分かり過ぎるくらい分かる ^^;
一時はVPSサービスから追い出されるんじゃないかと顔が青くなったが、これなら大丈夫だろう。やれやれ。