現在位置: ホーム / みらくるブログ / Asianux Server 4 == MIRACLE LINUX V6 (RHEL 6, CentOS 6) でも3.0が使用できます【MIRACLE ZBX 3.0】

Asianux Server 4 == MIRACLE LINUX V6 (RHEL 6, CentOS 6) でも3.0が使用できます【MIRACLE ZBX 3.0】

先日、Zabbix 3.0.0をベースとした、MIRACLE ZBX 3.0をリリースしましたが、次回リリース以降、Asianux Server 4 == MIRACLE LINUX V6 (RHEL 6, CentOS 6) でも使用できるようになります。

Asianux Server 4 == MIRACLE LINUX V6 (CentOS6, RHEL 6) 用のパッケージも提供開始

先日、Zabbix-3.0.0をベースとした、MIRACLE ZBX 3.0のパッケージのリリースを行いました。しかしながら、従来の2.2まででサポートしていたAsianux Server 4 == MIRACLE LINUX V6(以下、AXS4)でのパッケージがなかったことに気づいた方もいらっしゃると思います。

 

これは、Zabbix-3.0.0がPHP-5.4以上を要求しており、AXS4ではPHP-5.3しか提供していないため、保留としていました。

 

ただし、Software Collectionsでは、PHP-5.4を提供しており、これを利用する形でASX4にもパッケージを提供することとしました。

 

以下は、先行情報となりますが、AXS4でのMIRACLE ZBX 3.0の構築方法となります。(CentOS 6に対する情報も記載します。)

 

必要なパッケージ(PHP-5.4関連)のインストール

Software Collectionsのページを参考に、以下のパッケージをインストールしてください。

php54-php
php54-php-gd
php54-php-mbstring
php54-php-xml
php54-php-bcmath

 

具体的には、下記のようにすれば依存するパッケージも含めてインストールを行うことができます。

# yum install php54-php php54-php-gd php54-php-mbstring php54-php-xml php54-php-bcmath

 

注意)

CentOSでは、Software Collectionsを利用する前に、事前にyumリポジトリを追加するパッケージをインストールする必要があります。下記のように行ってください。

# yum install centos-release-SCL

 

パッケージの(機能の)バッティングをどうするか?

このままhttpdサーバの再起動を行うと、以下のようなエラーが発生し、PHP-5.4がhttpdプロセスから使用されません。

# /sbin/service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd: [Thu Apr 28 09:59:12 2016] [warn] module php5_module is already loaded, skipping
                                                           [  OK  ]

 

これは、httpdサーバに読み込ませるphp5用のモジュールを、phpパッケージとphp54-phpパッケージの両方が提供しており、httpdサーバを起動するときに重複読み込みされ、後から読み込まれた方(php54-php)がスキップされたためです。

この状態では、MIRACLE ZBX 3.0のWEB UIを正しく使用できません。したがって、下記の回避策を行う必要があります。

  1. /etc/httpd/conf.d/php.conf を削除か、.php.conf等にリネームする。/etc/httpd/conf.d/php.confの内容を全てコメントアウトする。
  2. php54-phpの設定を有効にしたら、php側は存在意義がないので、アンインストールする。

 

私個人としては、アンインストールがお奨めです。以下のようにしてください。

# yum remove php

 

PHP-5.4の動作テストをしよう!

PHP-5.4が使用されていることの動作テストを行います。

以下の内容のファイルを適当な場所(特に、httpdの凝った設定をしていないなら、/var/www/cgi-bin/以下)に作成します。

# cat /var/www/cgi-bin/php_test.php 
<HTML>
  <BODY>
    <TITLE>PHP Sample</TITLE>
    <?PHP
      phpinfo();
    ?>
  </BODY>
</HTML>

 

その後、該当URLにアクセスを行えば、使用されているPHPの情報が表示されます。ここに、5.4.16と表示されればOKです。

 

この後は、MIRACLE ZBX 3.0のパッケージをインストールし、設定を行えば、問題なく動作すると思われます。

 

なぜPHP-5.6ではないの?

Software Collectionsでは、PHP-5.6等の上位バージョンのパッケージも提供されています。また、Asianuxでは、SCL 2.0の方がサポート期間が長いという優位な点もあります。

今回、PHP-5.4で解説を行った理由は、PHP-5.6のパッケージはHTTPD-2.4のパッケージに依存しており、現在稼働しているhttpdサーバを移行させなくてはいけない等の手続きが発生するということがあります。

今後はサポート期間のこともあり、PHP-5.6へと移行することもありえます。