「サーバ」の最近のエントリー

s333からのエクソダス

| | コメント(0) | トラックバック(0) s333からのエクソダス

このブログの収容先であるxreaのs333サーバが頻繁に高負荷状態で,エントリの投稿が大変困難な状態が続いていました.どのような状態かって,こんな感じです.

100621_s333_01.jpg

スクショは負荷観測から頂きました.サーバのCPUがCore2 Duo T7200なのに,LoadAverageが30超えてるとか,常識的に考えて可笑しいだろ.というわけで,移転先を探したところ,s370が確保できたので,ささーっと移動してみた.移行方法は前回の失敗を活かして,ちゃんとした方法で.

  1. 新サーバ(s370)をレンタルし,無料7日間を行使してPlus化する
  2. 旧サーバ(s333)からデータをバックアップする
  3. s370がPlusになったら,s370の管理画面に入り,サーバ間コピーを行う
  4. 具体的には,s333の/public_htmlを/public_htmlにミラー(削除なし)する
  5. s370にMySQLのDBを作る
  6. バックアップ(ダンプ)したDBをFTPでs370に置く
  7. データベースの復元をする
  8. それっぽく動いていそうなことを確認する
  9. VALUE DOMAINのDNSレコードをs370用に書き直す
  10. しばらく待って,切り替わっていることを確認する
  11. s333からs370にPlusの利用権を移す
  12. s333を閉鎖する

今回は無料7日間の権利を行使したことと,サーバ間コピーを使ったことです.おかげさまで,サクッと終わりました.この程度のコストなら,サーバに嫌気がさしたらすぐに移転できそうです.楽ちん!

関連:
s319からのエクソダス - 4403 is written

ちょっと息抜き.今日はMuninで温度やファン回転数を記録することに注力してみたいと思います.ちょっと難しいです.環境はHPのML115 G5です.

前回のlm-sensorsが失敗したので、
別のマシンですが、ml115にOpenIPMIを導入してみました。

vinelinuxで行いたかったのですが、
どうもapt-getしてもないようなので、素直にdebianにしました。

debianで、
apt-get install OpenIPMI
apt-get install ipmitool

とすると必要なソフトウェアがインストールされます。

その後、必要なモジュールをロードします。

modprobe ipmi_si
modprobe ipmi_devintf

grep ipmi /proc/devices
=>254 ipmidev

この数字を覚えておいて、デバイスファイルを作成します。

mknod –mode=644 ipmi0 c 254 0

以上で、上手く行けば、
ipmitool sdr
で温度等が表示されます。

また、起動時にモジュールをロードしたい場合は、
/etc/modulesに、
ipmi_si
ipmi_devintf
と追加記述することで可能なようです。
(ここの記述方法がよくわからない。alias指定をする場合とかが何故必要?)

hp prolliant ml115 debianでのOpenIPMI

この通りでok.日本語でok.英語で情報を探してもいいんだけど,日本語の方が嬉しいです!最高です!そんで,そんで,これだけじゃ不十分なので,/etc/default/ipmievd を変更します.

ENABLED=true

そんでもって,ipmievdが起動するようにおまじない.

# /etc/init.d/ipmievd start
# sysv-rc-conf ipmievd on

うは,おk把握.これでセンサー関連は上出来.あとはmuninと連携する.ここを参考にしました.一部追記します.

# wget http://muninexchange.projects.linpro.no/download.php?phid=579 -O ipmitool_sensor_
# cp ipmitool_sensor_ /usr/share/munin/plugins
# chmod +x /usr/share/munin/plugins/ipmitool_sensor_
# ln -s /usr/share/munin/plugins/ipmitool_sensor_ /etc/munin/plugins/ipmitool_sensor_fan
# ln -s /usr/share/munin/plugins/ipmitool_sensor_ /etc/munin/plugins/ipmitool_sensor_temp

/etc/munin/plugin-conf.d/munin-nodeへ以下を加える。

[ipmitool_sensor*]
user root
timeout 20
env.ipmitool_options sdr

tool/ipmiでの温度・ファン速度監視 - Linux Tipsより一部改変

超余裕って感じ?あとはいつも通りに,service munin-node restartで余裕系.こうして,サーバ監視の楽しみが増えたのであった.

この話はフィクションです.事実が知りたければ,手を動かせばいいと思う.

某所のサーバが2週間以上も停止しているのです.理由は簡単で,Macminiだから救援するにも救援できなかった.普通のサーバなら,HDDを交換するなり,マザーを交換するなり,電源を交換するなり,なんなりとやりようがあるのだが,Macminiはマザー交換も電源交換も簡単にできるものではない.というわけで,データサルベージだけして,入院させたわけです.結局は直らず(直さず)に帰ってきたわけですが.常識的に考えて,フェールセーフできるようなバックアップとまではいかなくても,すぐに復旧できるような素材は必要だと思うのだが,そんなものは全くないので,トラブルが起きたら,トラブル直撃間違いなし.

で.サーバが止まっているのは事実なわけですが,「修理に出した」「直ったら教えてくれ」とやり取りしているのに,「まだなおらんか」「まだか」「いつだ」と問われるわけです.要するに,直ったにもかかわらず報告しないような悪意を持った存在だと思われているようです.信頼と信用がないのはセキュリティ研究室の悪いところですね.誰もが信じられない.机の上のものに触るなといっても,何ら変わらないしね.不正なソフトウェアを使うなといっても,何ら変わらないしね.ここはもうダメだと思った.あ.フィクションですよ?リアリティに溢れてますが.

というわけで,自分の精神衛生を守るために,HPのProLiant G5を買ってみた.個人的には,HPのサーバ製品には信頼があると思っている.現に,過去5年間で3台使ってるけど,どれもがトラブルフリー(ハード的な意味で)です.もうね.サーバいじりなんて,情報系なんだから,誰もが当たり前のようにできて欲しいと思うわけですよ.誰も勉強する気ないみたいだし.いや,する時間がないんだと思うけど.もちろん,フィクションです.

さて,MacminiにはUbuntuの8.10が入っていました.復旧が目的なら同じ8.10を入れて丸っと上書きという手もありますが,それじゃぁ面白くないので,最新の9.04 amd64を入れてみました.今回のサーバの方針.サーバを設置したい箇所には情報コンセントがないのだが,ケーブルを取り回すことは美観を損なうから許可されないので,ハッキリ言ってやりたくない(というか現にダメだった)のだが,無線LANで飛ばすことにする.回線は根元にブロードバンドルータ(笑)を入れて,ポートフォワードでhttpとhttpsとsshのみ引き込む作戦.頑張れブロードバンドルータ(笑).バッファローのルータだから,信用が全く足りません.YAMAHAじゃないとダメだよね.

で.インストールします.今回はUNetbootinというUSBメモリからインストールできるようにするツールを使いました.いやー.これ,めちゃめちゃ便利ですわ.速いUSBメモリを使えば,読込みも速いし,五月蠅いDVDドライブともおさらば!サックサックで,Liveブートから40分くらいで初期ブート完了です.

まずはネットワークが繋がらないので,有線を繋ぎながら,コンソールで作業です.やるべきは,無線LANの有効化とSSHの設定です.トラブルにあいたくないので,情報を参考に,Ubuntuでの動作実績があるPlanex GW-USMicroNを採用しました.でだ.ハッキリと言わせてもらうと,参考情報の通りにやればドライバをインストールできて,無線LANが使えた.そこまでは良かった.だが,wpa_supplicantを使って自動接続設定を作ったところ,何故かドライバを読み込まなくなった.読み込まないってのは嘘で,起動後にinsmodしてやると動き出す.modprobeしても,/etc/moduleに書いてもダメ.意味不.ここで1時間は無駄にした.ここで無線LANは諦めて,有線で組むことにする.

基本的に,ここからは8.10のやり方をトレースするのみ.

トラブったこともいくつか.1番でかいのはBIND9.構成が特殊なので,内向きと外向きで同名ホストでも別のIPアドレスを返すという変態的な動作をさせている.これもあれも,自由に生IPを使えないからであって,自由に使えないこと自体は運用上は正しいと思うんだけど,そもそも情報コンセントの位置がアレだから,どんな高安全性運用してもムダ.焼け石に水.閑話休題.BIND9がいうことを聞いてくれない.自分以外のマシンからの問い合わせに全く答えないのだ.可能性はいくつかある.

  1. named.confの設定が悪い
  2. iptablesの設定が悪い
  3. 問い合わせているクライアントが悪い
  4. オレが全部悪い

4を選択するのが潔くて楽なのだが,問題の解決にならない.まず3.オレマシンは今日から7になってるので,今ひとつ挙動を掴みきれていないので,Vista君から試したのだが,結果は同じ.次に,どうせルータの内側にいるからという馬鹿げた理由で,iptablesを切ってみる.でもダメ.残るはnamed.confの設定の悪さだが,そんなはずはない.なぜなら,今までは動いていた設定ファイルをそのまま持ってきたんだ.動かないわけはない!原因は別にあるな.と,いろいろと悩むこと数時間.本当に数時間使った.ムダ.全く以てムダ.結果.resolvconfを削除したら,直りました.いみわからん.前の環境でもresolvconf使ってたんだが・・・.特に困らないから,削除の方向で.追試は面倒だ.

後々分かったことだが,9.04では/etc/network/interfaceで設定をしないらしい.GUIからやれって.なんだか,便利なような便利じゃないような?

ちなみに,ルータの内側だからiptablesをフル開放にしてみたんだが,どうにもルータの内側でも信用ならない.敵は内側にいるような気がする.なので,今回はiptablesのラッパであるufwを使ってみた.テラ簡単でワロスワロス.説明するまでもない使い勝手の良さ.難しいことをしないなら,ufwで十分ですね.

まとめ:
Ubuntu9.04でサーバを立てました.トータルでは7時間程度かかっていますが,結構はまったので,そこを除くと4,5時間程度でしょうか.ノウハウを最大限に利用しているとはいえ,本職じゃないのにこの程度で準備が整うのはかなり速いんじゃないかなーって思うんですがね.Windowsのインストールじゃないんだから,入れたらポンじゃないんだし.設定を確認したり,動作を見たり,色々としないといけないし,入れたらポンじゃないんだし.サーバを立てたことがない人(セキュリティに配慮しない人は除く)にはわからんのですよ.日頃から素サーバ立てをして訓練しているわけでも,砂場で遊んでいるわけでもないので,片手間にしては昼飯1回分と耳なり悪化程度で終わらせられるわけですから,快適な部類かと思います.情報系なのに,サーバ立てて遊べない,というか研究以外に学ぶことができないなんて,不幸の塊にしか見えません.あ.フィクションです.

「Macmini完全に沈黙!」状態だった.あぁ,サーバが止まった.設置場所から考えて,誰かが間違えてコンセント引っこ抜いた(正しくはプラグを引っこ抜いた)のかなぁと思いながら,電源をポチッとしたのですが,全く持って沈黙.肝臓のようだ(沈黙の臓器的な意味で).これはい肝臓(ダジャレ的な意味で).ふふーん.etcとvarは定期的にバックアップ取ってるもんねー.ふふーんだ.と思っていたら,比較的重要なデータがhomeにあるという事実に気がついた.Macminiの電源は入らない.これは困った.というわけで,データサルベージをするために,Macminiを分解してやりましたよ!このクソ忙しい中.こんちくしょう.夜はビアガーデンだから,愚痴ってやる!

で.分解.Macminiの分解に際しては,以下の記事を参考にしました.

ご存知のように,Macminiにはネジ穴が見あたりません.これはつまり,なんですか,分解が困難であることを示しています.ということで,分解するために必要なヘラを探します.まず,生協にいってこう言いました.「もんじゃ焼きに使いそうなヘラないですか?もしくはデザインナイフ」質問の順番を間違えているというツッコミはテンパっていたんでと言い訳します.生協には売ってなかったので,渋々100均に行って,ヘラを探します.あったんですが,ヘラは厚みがありすぎてダメでした.代わりにこんなものを買ってきました.

IMG_0334.jpg

これ,領収書にはこんな書かれてる・・・.

IMG_0335.jpg

ぜってー会計通らないよ・・・.自腹だよ・・・.お財布いたいよ.

さて,買ってしまったので,後戻りは出来ませんので,えいや!と気合い一発分解します.手順は他の方々とは違います.多くの人は片側ずつ開けているようですが,それだと上手くいきません.片側が開くと,もう片側にヘラが入らないのです.そのため,両側に1本ずつ差し込んで,広島風お好み焼きを反す要領でほいな!とやります.実際にはゴリゴリですが.

IMG_0329.jpg

開きました.この後は他のサイトの手順通りに,アンテナを外して,ネジを取って,ユニットを取り外し,ケーブル類を除去して,HDDにアクセスしやすいようにします.

IMG_0330.jpg

続いて,こやつからデータをサルベージするべく,他のPCにつなぎます.いやー.良い時代です.SATAなんで,2.5inchだろうが,3.5inchだろうが同じように繋がるので楽ちんです.というわけで,本体直付けです.

IMG_0332.jpg

続いて,Windowsじゃファイルシステムにアクセスできないのは目に見えているので,試しもせずに,トラブルのレスキュー隊ことKnoppixで救出を試みました.結果からいえば,失敗しました.mountできませんでした.EFI GPTっていう謎のファイルシステムに・・・.ext3じゃない時点でパニクりです.HFS+を試すも失敗.この時点で半べそ.いろいろ検索してみる.この時点でおなか空き始める.

IMG_0333.jpg

で.ふと思い出しました.あー入ってるのはUbuntuじゃん.ということで,UbuntuのLiveCDでアクセスしてみたところ,ばっちりマウントされました!わっしょーい!ということで,サルベージは完了したのでした.

オレ,おつかれ.どーせ誰も労ってくれないさ.ふーんだふーんだ.

4月末からトラックバックスパムが再び激化し始めた.記録によれば,4/28から5/6までの9日間で227発ほど,.htaccessの拒否リストを通過して,MT側のTBスパムに引っかかっている.易々とすり抜けられているのが許せないので,なんですり抜けているのかをログで確認してみた.

WordPress/2.7

こんなUAのやつがすり抜けていやがる.これは・・・拒否すると影響範囲が広そうだなぁ.どうするかなぁ.てか,そもそも正規のWP2.7ってTB打つ時のUAはこれなんだろうか?それを調べた方がいいかな.

短時間に連続じゃないし,エントリに順番に打ち込んでくるわけじゃないし,異なるIPアドレスから打ってくるし・・・.これは巧妙化するボットのポートスキャンと同じですね.ちと困ったなっと.ボットの場合はどうやってフィルタを書くんだろう?

200905061448追記:

「WordPress/2.7」を詐称するスパムウェアを確認しています。

本物の WordPress は、すでに2カ月以上前に 2.7.1 が提供されています(4月29日時点での最新版)。 2.7 は事実上 obsolete とみなしてよいと思います。

芳立五蘊 | WordPress/2.7

とのことなので,アグレッシブに排除の方向で.

あわせて読みたい