PC徒然草

稼働中のPCやら衝動買いしたPCやら実験やら破壊やら構築やら。
情報としての価値はほぼなし。
なんていうか完全に自己満足。
要するについてくる人が居ないのでこっちに書くだけの話っていうかチラシの裏。
※あと、お仕事募集中
コンタクトはk.haramai[atmark]gmail.com まで。

2012/06/07

Crashed Zabbix Databaseその2

久方ぶりにZabbixを覗いたらやっぱりMySQLがクラッシュしてた。
今度はitemsテーブル。
とりあえず、再びrepair中・・・。

根本的に解決を考えないとだ。
眠いのに・・・。

2012/03/18

Crashed Zabbix Database

しばらく放置というか、起動状態でほうっておいたZabbixだったが、久しぶりにスクリーンを覗いてみるとデータが未取得となっていた。

具体的にはこんなメッセージが/var/log/zabbix/zabbix_server.logに上がっていた。

3223:20120318:062815.752 [Z3005] Query failed: [145] Table './zabbix/history' is marked as crashed and should be repaired [select min(clock) from history where itemid=19976]

おやー?と思って、mysqlから接続してDBを見る。


mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| clipbucket         |
| mysql              |
| test               |
| zabbix             |
+--------------------+
5 rows in set (0.00 sec)


とりあえず、接続は出来る。

次にZabbixのDBへ接続して該当テーブルをチェック。


mysql> use zabbix;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A


Database changed
mysql> check table history extended;
+----------------+-------+----------+----------------------------------------------------------+
| Table          | Op    | Msg_type | Msg_text                                                 |
+----------------+-------+----------+----------------------------------------------------------+
| zabbix.history | check | warning  | Table is marked as crashed                               |
| zabbix.history | check | warning  | 2 clients are using or haven't closed the table properly |
| zabbix.history | check | error    | Key in wrong position at page 49271808                   |
| zabbix.history | check | error    | Corrupt                                                  |
+----------------+-------+----------+----------------------------------------------------------+
4 rows in set (15 min 31.31 sec)

あー、そうですかそうですか。
ぶっ壊れてるんですね。

repairをかける前にMySQLを止めてバックアップを取得。

#service mysqld stop 
#cp -rp /var/lib/mysql /opt/mysqlback

んでもって起動してrepair処理を実行。

#service mysqld start

mysql> repair table zabbix.history;
+----------------+--------+----------+----------+
| Table          | Op     | Msg_type | Msg_text |
+----------------+--------+----------+----------+
| zabbix.history | repair | status   | OK       |
+----------------+--------+----------+----------+
1 row in set (4 min 51.48 sec)

終了、戻ってよかったよかったというお話。

2011/11/17

openfiler 2.99のiSCSIエラーとか。

openfiler 2.3から2.99へ移行して暫くは順調に機能していたが、ここ最近で一点問題が出てきた。
家のOpenFilerはRAIDで組まれたボリュームを二つに区切り、前方をiSCSI、残りをCIFSとして割り当てている。

NICは、オンボードをCIFS、及び制御用に構成。
追加したPCIeのintel pro 1000 ctを2本束ねてiSCSIに割り当てた。
CIFSとiSCSIもVLANで別けている。
その内、障害が出たのはiSCSI側。

特に膨大なトラフィックは発生しないはずである。
しかしながら、数十MB程度のトラフィックしなないのにも関わらず、iSCSIがAbort Taskして徐々に挙動がおかしくなる。
最初の内は、Function Completeとなり、応答性は悪いものの機能はする。
その内に、Unknown LUNとなりVM側からは切り離されることがある。
こうなったら最後、iSCSI Targetを再起動し、VMも再起動するしかなくなる。
しかしiSCSIを再起動したあとには、エラーを吐いてOpenFilerごと再起動しなければならない事態も多々。

原因が判らないのが一番の問題で、対処のしようがないところ。
CIFS側では常時膨大なトラフィックが発生しているので、そちら側に何か引っ張られているのでは無いかとも考えられるが。
 手っ取り早いのは、OpenFilerを2.3で組み直して様子をみるか、というところ。

2.99にした理由もあまり無いので、それでもよし。
ただ、iSCSI Targetが物理的に二台になってしまうことだけは避けたい。
もしくは、導入されているiETを古いものに置き換えるか。
 少なからず、2.3の時点ではこんなことはなかったはずだからだ。

 いろいろ面倒が続くなぁ。