サーバのOS再インストールにむけて、とりあえず手元のPCにHTMLとかPHPとかのWebに関するデータは移した!
でもまだデータベースと、Cronとかシェルスクリプトとかメールサーバとかの諸々のデータのバックアップがまだだお!
再インストする時間がねぇ!
家の鍵を渡すから誰かやっとくれ!
サーバのOS再インストールにむけて、とりあえず手元のPCにHTMLとかPHPとかのWebに関するデータは移した!
でもまだデータベースと、Cronとかシェルスクリプトとかメールサーバとかの諸々のデータのバックアップがまだだお!
再インストする時間がねぇ!
家の鍵を渡すから誰かやっとくれ!
昨晩は風通り良くしておいて、ヒーターもつけなかったにもかかわらず
今日もサーバは落ちたわけです。
したがって、CPUの熱の問題ではなさそうです。
というか、毎朝4時にサーバが落ちるみたいなので、毎日04:02に実行されるcron.dailyの何かが問題なのかも、という予想に思考が移行しております。
まぁ、OSの再インストールからやり直せば解決する話とは思いつつも、
原因が分からないというのもなんかアレなので。
サーバの熱を調べるために下記URLを参考にCPUの熱を測ってみた。
lm_sensorsによるCPU温度チェック
http://blog.isnext.net/issy/archives/323
でも、sensors-detectの時点で
Sorry, no sensors were detected.
と出て、ハードウェア的にCPUの熱を測るセンサーが無いと出ました。
ショボーン(・ω・`)
昨日まる一日Dovecotを切っていたにもかかわーらーずー・・・
またサーバ落ちた!(・ω・´)
午前8時くらいに!(・ω・´)
ということは不正アクセスどーのこーのが最近落ちている原因では無いということか。
あとは・・・熱がこもっているのかも。
引越し前はサーバは地面から2Mくらいの高さに置いてましたが、現在は地面スレスレに置いてます。
風通しとか、空気のよどみとかそんな感じのサムシングについてはあんまり考えてませんでした。
HDDはPCケースの外に置いているからHDDが熱にやられる心配は無いので除外です。
そう、例えるならばHDDはお腹からはみ出した腸のごとく外気に晒してます。
なので、考えなければならないのはCPUですな。
再起動してすぐにまた落ちた時も熱が下がってなかったせいと考えれば納得できる。
さて、CPUの熱ってどう測るんよ?(・ω・`)
引越してから、dovecotに海外から不正アクセスが鬼のように着ていることは把握してたんですが、そんくらいの負荷なんて気にするレベルでもないだろうと放置してました。
・・・もしかしてこれか?
なんかユーザ名を「smith」とか「user」とか「owner」とかよく使われてそうなユーザ名で手当たり次第に1日に数万アクセスもしてくるから気にはなってたけど・・・。
サーバが落ちる理由がまだよくわかっていないものの、Apacheのエラーログが59Mというアホな値を出してました。
ログファイルのサイズがでかいとApacheの負担になるとどこかで見たのでとりあえず対処。。
参考元はここ。
logrotate によるログのローテーションhttp://linux.kororo.jp/cont/server/logrotate.php
で、ログが10Mを越えたら次のローテーションに移るように設定しました。
本来ならログファイル自体吐き出さないようにするのがサーバの負荷的には一番良いとは思うのですが、サーバが落ちた際の参考にする為にエラーログだけは出すようにしているのです。
またサーバ落ちたので原因調査。
所感では、サーバのリソースが何かの理由で大幅に取られてしまいフリーズに陥ってるものと予想。
で、ここで気になった点としては落ちる前兆としてMySQLが繋がらなくなる。
そしてそのしばらく後にサーバ全体がフリーズ。
気づいた時点でMySQLを再起動しても結果は変わらず。
ということで考えたのがMySQLがフリーズした時点で接続されていたApacheのスレッドのメモリが開放されないまま残っているのに引き続きアクセスが着てしまい停まってしまうんじゃないかなぁ、という予想。
ただ、引越し前と引越し後でMySQLの設定なんて変更していないので引っ越してから調子が悪くなるってのもおかしな話なのでこれは保留。
引越し後に変わったことといえば、バックアップ用のUSBメモリを取り外したことと、ネット回線が光プレミアムから光ネクストに変わったことと、それに伴い固定IPが変更したことくらいなんですよねー。
うーん、現時点ではわけわかめ。
ログ見ても特定できるようなエラーは見あたらなかったし、キーボードを繋げた時の挙動から既に怪しかったから、もしかしたらメモリ関係かも・・・というくらいにしか判断できてません。
ホント、最近立て続けにサーバの調子が悪い。
messageにDHCPREQUESTのログが大量に出てたのでとりあえずそこに書かれていた67番ポートは空けてみました。
あとは様子見かなぁ。
今日サーバ見てみると、MySQLの様子が変。
なんぞなんぞ?と見てみると、MySQLの接続エラー。
念のため、ApacheとMySQLを再起動しても変化無し。
これはどうしたものか、といろいろ見てみると
・phpMyAdminは正常に動く
・新規に書いたコードではMySQLに接続できる
・逆に既存のコードを実行してもPHPからMySQLに接続する時点でエラーが返る
というよく分からん状況に。
とりあえずサーバを再起動してみたら直ったので、もしかしたらメモリかHDDがちょっとヤバめなのかも。
現在は引越し時のトラブルで自動USBバックアップ処理を一時停止しているので今サーバに何か起こるとデータの保証はしかねるんよ(・ω・`)