バグフィックス版を入れたら Zabbix 2.1.6 をインストールすることになったでござる

仕事の関係もあって、Zabbix 2.2 のアルファ版である 2.1.0 をインストールしたのは、以前書いたとおり。
そのアルファ版も、順調に 2.1.1 → 2.1.2 とリリースされていったので、そのとおりに追従していたのだけど、 2.1.2 にしたところで、zabbix-server プロセスがクラッシュするという事象に遭遇…。

2.1.3 、 2.1.4 も試したのだけど、事象が解消しないし再現性も高いということで、BTS にバグ報告してみた。報告時に気がついたのだけど、ほぼ同時期に同じ事象が報告されていたようで、そちらのほうに「fixした」というコメントが付いたので、早速試してみることに。


SVN から修正版ソースを入手して、debパッケージに

まず、ソースを入手。サーバ上の適当なディレクトリで、以下のコマンドを実行。

nexus01:/usr/local/src# svn co svn://svn.zabbix.com/branches/dev/ZBX-6987
A    ZBX-6987/m4
A    ZBX-6987/m4/ax_lib_sqlite3.m4
A    ZBX-6987/m4/libunixodbc.m4
A    ZBX-6987/m4/libssh2.m4
 --- snip ---
A    ZBX-6987/man/Makefile.am
A    ZBX-6987/man/zabbix_sender.man
A    ZBX-6987/man/zabbix_proxy.man
A    ZBX-6987/man/zabbix_agentd.man
A    ZBX-6987/NEWS
 U   ZBX-6987
リビジョン 38697 をチェックアウトしました。
nexus01:/usr/local/src#

これで入手したソースをベースにパッケージを作ろうとしたのだけど、

# tar cvfj zabbix-2.1.4.1.tar.gz ZBX-6987/
# cd zabbix-2.0.8+dfsg/
# uupdate ../zabbix-2.1.4.1.tar.bz2 2.1.4.1

取得したソースを tar.bz2 化。それを使って 2.0.8+dfsg のソースをベースに、2.1.4.1 というパッケージを作るための準備まではOK。
いざ、パッケージングしようとすると、必ずエラーで止まってしまう…。

# cd ../zabbix-2.1.4.1
# dpkg-buildpackage -us -uc -b -rfakeroot
dpkg-buildpackage: warning: using a gain-root-command while being root
dpkg-buildpackage: source package zabbix
dpkg-buildpackage: source version 1:2.1.4.1-1
dpkg-buildpackage: source distribution UNRELEASED
dpkg-buildpackage: source changed by root <root@nexus01.downtown.jp>
dpkg-buildpackage: host architecture amd64
 dpkg-source --before-build zabbix-2.1.4.1
dpkg-source: info: using options from zabbix-2.1.4.1/debian/source/options: --extend-diff-ignore=\.(bat|exe)$ --compression=xz fakeroot debian/rules clean
I: zabbix_2.1.4.1+dfsg
dh clean --parallel --max-parallel=4 --with autoreconf
   dh_testdir -O--parallel -O--max-parallel=4
   dh_auto_clean -O--parallel -O--max-parallel=4
dh_auto_clean: ant clean failed to to execute: そのようなファイルやディレクトリはありません
make: *** [clean] エラー 2
dpkg-buildpackage: error: fakeroot debian/rules clean gave error exit status 2

ちょっと調べなおしてみたところ、

ここでそのまま通常のインストールと同じように./configure --enable-server --enable-agent...と実行してmakeでも問題ないのですが、環境によっては失敗したり、DB用のスキーマがなかったり、できあがったファイル群を他のサーバにコピーしても正しくconfigureが実行できなかったりしますので、ここからリリース版と同じtar.gzファイルを作成する方法も紹介しておきます。

[From Kodai's Blog: リポジトリから最新版のZabbixをダウンロードして利用する方法]

という記述を発見。どうやら、 SVN から入手してきたソースを、リリース版と同じような形式に変換してあげないといけなかったらしい。
ということで、SVN から入手したソースのディレクトリに戻って、エントリーに書いてあるようにコマンドを実行してみた。

# cd ../ZBX-6987/
# ./bootstrap.sh
# ./configure
# make dbschema
# make dist
# ls zabbix*
zabbix-2.1.6.tar.gz

zabbix-2.1.6.tar.gz という tar.gz ファイルが出来上がっていたので、これを使って deb パッケージを作ってみたところ、無事パッケージングに成功した次第。

インストールして数時間経過しましたが

で、出来上がった deb のうち zabbix-server-mysql と zabbix-frontend-php をインストール。
起動から20時間ほど経過しましたが、いまのところ順調に稼働し続けているようです。

公式で配布されているアルファ版は 2.1.5 なので、バージョン的にはちょっとだけ先取りになってますが、このまま順調に動いてくれるといいなぁ〜。

トラックバック(0)

コメントする