CentOS7.1 で zabbix-serverの起動が失敗する話とその解決方法

  • 11
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

追記(2015/07/22)

現在、yum updateを実施する事でtrousersの修正バージョンがアップデートされ、本現象が解消されます。

【修正バージョン】
trousers-0.3.11.2-4.el7_1.x86_64.rpm


以下、旧記事

早く解決方法見たい人

ことの始め

Zabbix検証機を立てる為、CentOS7.1をインストール。
インストール後、ごく普通のインストール方法でzabbixをインストール
※mariadbを使用してインストールする際はCentOS7にZabbix2.2をインストールが非情に勉強になります。

  • インストール後、zabbix-serverを起動。
[root@zabbix ~]# systemctl start zabbix-server
Job for zabbix-server.service failed. See 'systemctl status zabbix-server.service' and 'journalctl -xn' for details.
  • エラーの内容を確認(抜粋)
[root@zabbix ~]# less /var/log/zabbix/zabbix_server.log 

  2976:20150430:183351.790 using configuration file: /etc/zabbix/zabbix_server.conf
  2976:20150430:183351.792 current database version (mandatory/optional): 02040000/02040000
  2976:20150430:183351.792 required mandatory version: 02040000
  2976:20150430:183351.794 listener failed: zbx_tcp_listen() fatal error: unable to serve on any address [[-]:10051]
  2976:20150430:183351.794 Got signal [signal:11(SIGSEGV),reason:1,refaddr:0x18]. Crashing ...
  • OS: CentOS Linux release 7.1.1503 (Core)
  • 利用DB: mariadb-server 5.5.41

調査を行ったところ

調査を行うと、Zabbixのissueに同じ問題を発見。
zabbix_server_m[13777]

現行のzabbix-2.4.5では、gnutlsの3.3.8には対応していない様子。

追記:2015/05/01

この記事を見てくださったTNKさんから。

本当にありがとうございます!

リンク先には確かに「trousers-0.3.11.2-3.fc20」にプッシュしたと書いてますね。

trousers-0.3.11.2-3.el7 -> trousers-0.3.11.2-3.fc20 へ更新してみましょう。

対応について

1. 【推奨】パンツを履き替える(trousersの)更新

[root@zabbix ~]# rpm -Uvh https://kojipkgs.fedoraproject.org/packages/trousers/0.3.11.2/3.fc20/x86_64/trousers-0.3.11.2-3.fc20.x86_64.rpm
https://kojipkgs.fedoraproject.org/packages/trousers/0.3.11.2/3.fc20/x86_64/trousers-0.3.11.2-3.fc20.x86_64.rpm を取得中
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:trousers-0.3.11.2-3.fc20         ################################# [ 50%]
整理中 / 削除中...
   2:trousers-0.3.11.2-3.el7          ################################# [100%]

[root@zabbix ~]# systemctl restart zabbix-server

半信半疑でしたが無事動作確認が取れました!

2. 【非推奨】gnutlsのダウングレード

既にTNKさんが書いてくださっていましたが、gnutlsをダウングレードする事で起動します。
ZabbixをCentOS 7にインストール

ダウングレード方法を下記に記載します。

2.1. CentOS 7.0のインストールメディアを用意

http://vault.centos.org/7.0.1406/isos/x86_64/

※ 信頼されているCentOS7.0のミラーサイトはいつまであるかわかりません。探す際は注意ください。

2.2. メディアインストール用のrepo作成

#vi /etc/yum.repos.d/CentOS-media.repo

[centos-media]
name=CentOS Media Install
baseurl=file:///media/
enabled=1
gpgcheck=1
gpgkey=file:///media/RPM-GPG-KEY-redhat-release

2.3. メディアをマウント

[root@zabbix ~]# mount -o loop CentOS-7.0-1406-x86_64-DVD.iso /media/
mount: /dev/loop0 is write-protected, mounting read-only

2.4. ダウングレード実施

[root@zabbix ~]# yum downgrade gnutls-3.1.18-8.el7 gnutls-devel-3.1.18-8.el7 gnutls-dane-3.1.18-8.el7 gnutls-c++-3.1.18-8.el7 --enablerepo centos-media
読み込んだプラグイン:fastestmirror
centos-media                                                                                                          | 3.6 kB  00:00:00     
(1/2): centos-media/group_gz                                                                                          | 157 kB  00:00:00     
(2/2): centos-media/primary_db                                                                                        | 2.7 MB  00:00:00     
Loading mirror speeds from cached hostfile
 * base: ftp.tsukuba.wide.ad.jp
 * extras: ftp.tsukuba.wide.ad.jp
 * updates: ftp.tsukuba.wide.ad.jp
利用できるパッケージに一致しません: gnutls-devel-3.1.18-8.el7.x86_64
利用できるパッケージに一致しません: gnutls-dane-3.1.18-8.el7.x86_64
利用できるパッケージに一致しません: gnutls-c++-3.1.18-8.el7.x86_64
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ gnutls.x86_64 0:3.1.18-8.el7 を ダウングレード
---> パッケージ gnutls.x86_64 0:3.3.8-12.el7 を 削除
--> 依存性解決を終了しました。

依存性を解決しました

=============================================================================================================================================
 Package                       アーキテクチャー              バージョン                            リポジトリー                         容量
=============================================================================================================================================
ダウングレード中:
 gnutls                        x86_64                        3.1.18-8.el7                          centos-media                        609 k

トランザクションの要約
=============================================================================================================================================
ダウングレード  1 パッケージ

総ダウンロード容量: 609 k
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : gnutls-3.1.18-8.el7.x86_64                                                                                   1/2 
  整理中                  : gnutls-3.3.8-12.el7.x86_64                                                                                   2/2 
  検証中                  : gnutls-3.1.18-8.el7.x86_64                                                                                   1/2 
  検証中                  : gnutls-3.3.8-12.el7.x86_64                                                                                   2/2 

削除しました:
  gnutls.x86_64 0:3.3.8-12.el7                                                                                                               

インストール:
  gnutls.x86_64 0:3.1.18-8.el7                                                                                                               

完了しました!

2.4. zabbix-server起動

ダウングレード完了後、サービスを起動します。

[root@zabbix ~]# systemctl start zabbix-server

以上

gnutlsの脆弱性について

GnuTLSについて、ダウングレードバージョンでは脆弱性が指摘されています。
GnuTLSに脆弱性、主要なLinuxディストリビューションに影響

zabbix-serverが設置されている場所によっては、対応されたバージョン(3.1.22)をインストールする必要があることにも注意して下さい。