Housekeeperが削除する件数について

Zabbix1.8.4から3.0.4にアップグレードしました。後に、サーバの空き容量が10%を切ったのを
Zabbixアラートで知ることになりました。
Webインターフェースの<管理>→<一般設定>の「データ保存期間」の設定で<データ削除処理を有効>チェックが
外れていて、Housekeeperが作動していなかったのが原因だと知りました。

データ保存期間を短くしてしばらく様子をうかがっていましたが、最近ようやく
ALTER TABLE history type="InnoDB" を試し、空き容量は12%程度には回復しました。

いろいろ調べていると、MaxHousekeeperDelete=0 でリミットなしで削除できるという
ことを知り、さっそく設定を変更してみましたが、50万件程度の削除(過去のログをみる限り変わりなし)
です。

7505:20161226:143414.351 housekeeper [deleted 585325 hist/trends, 0 items, 119 events, 0 sessions, 0 alarms, 0 audit items in 184.131410 sec, idle for 1 hour(s)]
7505:20161226:153721.108 housekeeper [deleted 585830 hist/trends, 0 items, 120 events, 0 sessions, 0 alarms, 0 audit items in 186.523743 sec, idle for 1 hour(s)]
7505:20161226:164025.355 housekeeper [deleted 585047 hist/trends, 0 items, 136 events, 0 sessions, 0 alarms, 0 audit items in 184.022491 sec, idle for 1 hour(s)]
7505:20161226:174328.659 housekeeper [deleted 584940 hist/trends, 0 items, 131 events, 0 sessions, 0 alarms, 0 audit items in 183.072918 sec, idle for 1 hour(s)]
7505:20161226:184631.326 housekeeper [deleted 584825 hist/trends, 0 items, 154 events, 0 sessions, 0 alarms, 0 audit items in 182.395877 sec, idle for 1 hour(s)]

自分としては、MaxHousekeeperDelete=0 でもっと大量に削除が実施されると思っていました。
Webインターフェースから、あるホストのアイテムのヒストリ削除を行っても、数時間経って今でも
結果が返ってきません。

Housekeeper の手動実行もやってみましたが、上記のログと変わりありません。
どうすれば、Housekeeper で大量のhistoryデータを削除できるのでしょうか。
削除後に、ALTER TABLE をやりたいと思っています。

-rw-rw---- 1 mysql mysql 31G 12月 27 19:52 2016 history.ibd
-rw-rw---- 1 mysql mysql 21G 12月 27 20:32 2016 history_uint.ibd

+-------------- +-------- +----------- +------+------- +------- +------- +
| table_name | engine | tbl_rows | rlen | allMB | dMB | iMB |
+-------------- +-------- +----------- +------+------- +------- +------- +
| history | InnoDB | 339148655 | 52 | 30328 | 16947 | 13380 |
| history_uint | InnoDB | 202341050 | 52 | 20905 | 10126 | 10778 |

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

設定を変更してから、zabbix_serverの起動しなおしはされましたか?

起動しなおしをされたのであれば、起動時に何らかのエラーや警告は
表示されませんでしたか?

一応、利用されているプラットフォームの詳細な情報をお教えください。
特に、OSやMySQLなどの詳細なバージョンと、デフォルト以外で設定
変更された内容をお教えください。

ユーザー 0hr の写真

TNK様
ありがとうごさいます。

今、当該サーバと通信できない状態ですので、取り急ぎ、

設定を変更してから、zabbix_serverの起動しなおしはされましたか?

起動しなおしをされたのであれば、起動時に何らかのエラーや警告は
表示されませんでしたか?

zabbix_server は設定変更後は必ず再起動しています。
エラーは特に確認していません。

ユーザー 0hr の写真

TNK様

環境について末尾に添付しました。

一応、容量圧迫の問題は解決しました。
問題は2つあったと思っています。

1つは、housekeeper が走っていなかったこと
2つめは、レプリケーション用のバイナリログの期限の設定がなされていなかった
ために大量の bin ファイルが /var/lib/mysql/bins にあってこちらが主に肥大化の原因
だったこと

history 系のテーブルは手動で削除して、alter table しました。

バイナリログは
mysql> PURGE MASTER LOGS BEFORE '2016-10-01 00:00:00;
などで削除しました。

ディスク容量は解放されています。
ただ、

いろいろ調べていると、MaxHousekeeperDelete=0 でリミットなしで削除できるという
ことを知り、さっそく設定を変更してみましたが、50万件程度の削除(過去のログをみる限り変わりなし)
です

このあたりの部分をすっきりさせたいと思います。
なにかアドバイスいただけますと助かります。

===サーバ環境情報===

grep -i "zabbix server" /var/log/zabbix/zabbix_server.log
7439:20161227:094405.398 Zabbix Server stopped. Zabbix 3.0.4 (revision 61185).

[root@localhost zabbix]# cat /proc/version
Linux version 2.6.32-358.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Fri Feb 22 00:31:26 UTC 2013

[root@localhost zabbix]# cat /etc/redhat-release
CentOS release 6.4 (Final)

[root@localhost zabbix]# mysql --version
mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1

[root@localhost zabbix]# cat /etc/my.cnf
[mysqld]
server-id=001
log-bin=/var/lib/mysql/bins/bin
set-variable=expire_logs_days=7

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

# for zabbix
default-character-set=utf8
skip-character-set-client-handshake

innodb_file_per_table
innodb_buffer_pool_size=1024M
innodb_log_file_size=64M
innodb_log_files_in_group=2

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[root@localhost zabbix]# free -mt
total used free shared buffers cached
Mem: 3787 3651 135 0 209 1752
-/+ buffers/cache: 1689 2097
Swap: 3919 142 3777
Total: 7707 3794 3912