WebインターフェースのPHP databases supportについて
初めて質問させていただきます。
宜しくお願いいたします。
現在、以下のような構成でZabbixを利用しようとしているのですが、WebインターフェースのPHP databases supportがOKにならず困っております。
Webサーバ:Apache2.4.7、PHP5.4、Zabbix Webインターフェース
DBサーバ1:MySQL5.6、Zabbix Server、Zabbix Agent
DBサーバ2:MySQL5.6、Zabbix Agent
※OSはすべてCentOS6.4(64bit)
※DBサーバはレプリケーション構成
環境構築の制限としまして、Apacheは2.2系ではなく2.4系になります。
そのためApacheはソースインストールし、PHPもソースインストールしております。
当初、rpmによるインストールの方が簡単なため、下記のサイトを参考にApache、およびPHPの
rpmを作成し、Zabbixもrpmインストールしておりました。
http://www.kakiro-web.com/linux/php-install.html
ですが、以下の理由により全体的にソースインストールする方針に変わりました。
1.rpmの作成という慣れていない手順なため、今後メンテナンスが発生した場合に対処できない事が懸念される
2.上記で作成したrpmはApacheおよびPHPがセットになるが、全体の構成としてやはりDBサーバに別途
Apacheを入れてほしくないので、WebインターフェースはWebサーバを使うようにしたいという意見があった
PHPのconfigureに苦しめられながらもなんとかApacheとPHPの連携まではできたのですが、
標題にもある通り、ZabbixのWebインターフェース上でPHP databases supportがOKになりません。
なお、PHPのconfigureは以下になります。
./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-libdir=lib64 --with-mysql --enable-mbstring --enable-bcmath --enable-sockets --with-png-dir=/usr --with-freetype-dir=/usr --with-jpeg-dir=/usr --with-gettext --with-gd --enable-zip
phpinfoを確認するとmysqlの項目もでており、かつ、PHPからDBサーバ1にアクセスするphpファイルを
作成してみましたが、ちゃんとアクセスできておりました。
--with-mysql にパスを通していないのは、調べながらいろいろ試してみたのですが、configureでエラーになって
しまうのと、パスを指定しなくてもphpinfoにmysqlが表示されるためです。
ZabbixのWebインターフェース前提要件を見る限りphp-mysqlと書かれており、MySQLもソースおよびrpmにて
インストールしましたが、php-mysqlのバージョンはどちらに合わせるべきなのか、など不明点も多く、Zabbixの
範疇を超えてしまいますが、正しいやり方が分からず困っております。
要件を箇条書きすると以下になります。
・OSはすべてcentos6.5(64bit)
・Webサーバ上にApacheは2.4.7
・Webサーバ上にPHP5.3もしくは5.4
・Webサーバ上にZabbixWebインターフェース
・Webサーバ上にはMySQL5.6のクライアントのみ
・DBサーバ上にMySQL5.6サーバ、Zabbix Server、Zabbix Agent
なお、centos上でyumを行うとApache2.2系に合わせたものしか
とれないため、epelとremiをリポジトリに追加し「php-mysql-5.4.30-1.el6.remi.x86_64」等をインストール
しましたが、そのあたりがPHP databases supportがOKにならない理由なのでしょうか?
Zabbixの範疇ではないですが、そもそもphp-mysqlのバージョンはphpのバージョンにさえあっていればいいのか?
また、MySQLはソースインストールしたもののphp-mysqlだけremiパッケージを使用しているのが原因でしょうか?
yumだとphpは5.3.3になるため、php-mysqlも通常のyumでインストールできるようにPHP5.3をソースインストール
してみようと試みたりもしましたが、PHP5.3はビルドが通りませんでした。
あれこれ試したものの解決策が見つからなかったため、こちらで質問させていただくことにしました。
記載した内容で「ここは違う」「これは無理」など分かる範囲でご指摘いただければと思います。
長文になりましたが、何卒よろしくお願いいたします。
TNK - 投稿数: 4740
Zabbixのバージョンが書かれていませんが、Zabbixのバージョンが2.2系であると仮定
させて頂きます。
以前、OSCで発表した資料にも書かせて頂いた通り、Zabbix 2.2からPHPを利用して
MySQLにアクセスする為には、mysqli拡張を利用しています。
remiのパッケージ構成を確認していませんが、パッケージのphp-mysql内に、
mysqli拡張も含まれているか確認してみてください。
あと、PHPをソースでconfigureする際にもmysqliのオプションが追加されていないよう
ですので、ソースからインストールするされた際もmysqli拡張が有効になっていないの
ではないでしょうか?
あと、
の2に関してですが、
とされるのであれば、Zabbix関連はZabbix SIAの標準パッケージ構成であれば、
・zabbix
・zabbix-agent
・zabbix-server
・zabbix-server-mysql
をインストールすればよいので、DBサーバ上にはApacheやPHPをインストール
する必要はないはずです。
インストール手順で余計なパッケージもインストールされているか、パッケージ
の作成手順に誤りがあると思われます。
まずは、mysqli拡張のモジュールが有効になっているかどうかのチェックを
してみてください。
ご参考:
「Zabbix 2.2を使ってみよう」P.18など
http://www.slideshare.net/atanaka7/osc2014-zabbix-jp20140227
chopper - 投稿数: 5
TNKさま
早速の回答ありがとうございます。
>Zabbixのバージョンが書かれていませんが、Zabbixのバージョンが2.2系であると仮定
>させて頂きます。
申し訳ありません、肝心のZabbixのバージョン書いていませんでした。。
おっしゃるとおり、2.2系を利用しております。
>remiのパッケージ構成を確認していませんが、パッケージのphp-mysql内に、
>mysqli拡張も含まれているか確認してみてください。
詳細を確認してみました。
rpm -qli php-mysql-5.4.30-1.el6.remi.x86_64
Name : php-mysql Relocations: (not relocatable)
Version : 5.4.30 Vendor: Remi Collet
Release : 1.el6.remi Build Date: Wed 25 Jun 2014 01:35:55 PM UTC
Install Date: Thu 26 Jun 2014 04:18:09 PM UTC Build Host: schrodingerscat.famillecollet.com
Group : Development/Languages Source RPM: php-5.4.30-1.el6.remi.src.rpm
Size : 462790 License: PHP
Signature : DSA/SHA1, Thu 26 Jun 2014 05:06:22 AM UTC, Key ID 004e6f4700f97f56
Packager : http://blog.famillecollet.com/
URL : http://www.php.net/
Summary : A module for PHP applications that use MySQL databases
Description :
The php-mysql package contains a dynamic shared object that will add
MySQL database support to PHP. MySQL is an object-relational database
management system. PHP is an HTML-embeddable scripting language. If
you need MySQL support for PHP applications, you will need to install
this package and the php package.
php-pdo(x86-64) = 5.4.30-1.el6.remi
rpmlib(VersionedDependencies) <= 3.0.3-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
libcrypto.so.10()(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libdl.so.2()(64bit)
libm.so.6()(64bit)
libmysqlclient.so.18()(64bit)
libmysqlclient.so.18(libmysqlclient_16)(64bit)
libmysqlclient.so.18(libmysqlclient_18)(64bit)
libpthread.so.0()(64bit)
librt.so.1()(64bit)
libssl.so.10()(64bit)
libz.so.1()(64bit)
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-1
/etc/php-zts.d/mysql.ini
/etc/php-zts.d/mysqli.ini
/etc/php-zts.d/pdo_mysql.ini
/etc/php.d/mysql.ini
/etc/php.d/mysqli.ini
/etc/php.d/pdo_mysql.ini
/usr/lib64/php-zts/modules/mysql.so
/usr/lib64/php-zts/modules/mysqli.so
/usr/lib64/php-zts/modules/pdo_mysql.so
/usr/lib64/php/modules/mysql.so
/usr/lib64/php/modules/mysqli.so
/usr/lib64/php/modules/pdo_mysql.so
>あと、PHPをソースでconfigureする際にもmysqliのオプションが追加されていないよう
>ですので、ソースからインストールするされた際もmysqli拡張が有効になっていないの
>ではないでしょうか?
はい。mysqli拡張は不要かと思ってconfigureオプションに入れておりませんでした。
--with-mysqli をつけるだけで問題ないでしょうか?
>・DBサーバ上にMySQL5.6サーバ、Zabbix Server、Zabbix Agent
>とされるのであれば、Zabbix関連はZabbix SIAの標準パッケージ構成であれば、
> ・zabbix
> ・zabbix-agent
> ・zabbix-server
> ・zabbix-server-mysql
>をインストールすればよいので、DBサーバ上にはApacheやPHPをインストール
>する必要はないはずです。
>インストール手順で余計なパッケージもインストールされているか、パッケージ
>の作成手順に誤りがあると思われます。
DBサーバ上には今回ApacheやPHPはインストールしません。
・Webサーバ上にZabbixWebインターフェース
と書いたとおり、Webサーバ上にApacheやPHPをインストールします。
ひょっとしたらguiなしでzabbixの管理はできるのかもしれませんが(知識不足です)、今回はWebサーバ上にて
GUI監視を行いたいため、ZabbixWebインターフェースのみWebサーバ上に配置しようとしております。
※配置といってもclientディレクトリ配下をhttdocs配下にzabbixディレクトリとして配置しただけですが。
>まずは、mysqli拡張のモジュールが有効になっているかどうかのチェックを
>してみてください。
mysqlndでしたらnot supportedとなっております。
普段はyumでパッケージインストールするばかりで、今回初めてソースをビルドしたりしているため、ところどころスキル不足、説明不足の部分も
あるかと思いますが、宜しくお願いいたします。
>ご参考:
>「Zabbix 2.2を使ってみよう」P.18など
>http://www.slideshare.net/atanaka7/osc2014-zabbix-jp20140227
リンク、ありがとうございます。
明日といいますか、本日中にこちらも確認させていただきます。
TNK - 投稿数: 4740
まずは、ソースで対応するのかrpmで対応するのか方針を明確にし
ませんか?
話が混在していると、どちらの方法を利用した場合の手順なのか
注意点なのか不明確になり、お互いの意思疎通がスムーズにできず、
結局問題解決への時間が余計にかかってしまうと思います。
どのような環境にされたいのか次第ですが、ご参考までにCentOS 6
のphpでは、mysqliに関して、
--with-mysqli=shared,/usr/bin/mysql_config
というようなオプションを付加してconfigureを実行されているよ
うです。
他にも、様々な拡張モジュールを利用していたと思うので、CentOS
などの標準パッケージでどのようなconfigureを実行してパッケー
ジをビルドしているのか確認されることをお勧めします。
全ては必要ないかもしれませんが、記載頂いたconfigureの内容で
は、XML関連などが不足しているように見受けられます。
ZabbixのWebインターフェースは、Zabbix自体の設定、APIの利用、
グラフなどの情報参照などのためにも必須です。
Webサーバ上に、パッケージなら
zabbix、
zabbix-web、zabbix-web-mysql、
zabbix-web-japanese
のパッケージとそれらが利用するWebサーバやPHPのパッケージをイ
ンストールすればよいですし、ソースからなら、tarball内の、
frontends/php/
以下のファイルをWebサーバ上に配置して、Webサーバから必要な
PHP関連のモジュールと、MySQLのクライアントライブラリにアクセ
スできれば機能するはずです。
chopper - 投稿数: 5
TNKさま
返信が遅れまして大変申し訳ありません。
結論から申しますと、何とかうまくインストールできました。
インストール環境としましては、
<Webサーバ>-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Apache:ソースインストール
PHP:ソースインストール
MySQL:rpmインストール
Zabbix:フロント側ファイルの展開のみ
※ソースとrpmが混在しておりますが、基本的にはrpmで対応したいため、DBサーバ側のMySQLとZabbix関連は全てrpmにしました。
Webサーバ側のZabbix(フロント)も本当はrpmで済ませたかったのですが、httpd2.2系が依存関係にあったため、断念しました。
以下に、インストールの流れを記載しておきます。
(PHP周り)
wget http://jp1.php.net/get/php-5.4.30.tar.gz/from/this/mirror -O php-5.4.30.tar.gz
tar zxvf php-5.4.29.tar.gz
epleリポジトリの追加
remiリポジトリの追加
rpm -ivh epel-release-6-8.noarch.rpm remi-release-6.rpm
Remiリポジトリに5.4が存在することを確認
[root@xxxxxxx repo]# yum --enablerepo=remi list | grep php-mysql
php-mysql.x86_64 5.4.30-1.el6.remi remi
php-mysqlnd.x86_64 5.4.30-1.el6.remi remi
php-mysqlの5.4をインストール
yum --enablerepo=remi install php-mysql.x86_64
※/usr/lib64/mysql/配下にlibmysqlclient.so*ができた
httpd.confの編集
PHPのconfigure
./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-libdir=lib64 --with-mysql --with-mysqli --enable-mbstring --enable-bcmath --enable-sockets --with-png-dir=/usr --with-freetype-dir=/usr --with-jpeg-dir=/usr --with-gettext --with-gd --enable-zip
php.iniの編集
シンボリックリンク作成
ln -s /etc/php.ini /usr/local/lib
PHPのmake
PHPのmake install
(MySQL周り)
既存のmysql-libsをyumでremoveする
yum remove mysql-libs
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-5.6.19-1.linux_glibc2...
tar xvf MySQL-5.6.19-1.linux_glibc2.5.x86_64.rpm-bundle.tar
rpm -ivh MySQL-client-5.6.19-1.linux_glibc2.5.x86_64.rpm
rpm -ivh MySQL-devel-5.6.19-1.linux_glibc2.5.x86_64.rpm
(Zabbix周り)
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.... -O zabbix-2.2.4.tar.gz
tar zxvf zabbix-2.2.4.tar.gz
tarを展開した中にあるfrontends/phpをapahceの公開ディレクトリにコピーする
mkdir /zabbix
cd frontends/php
cp -a . /usr/local/apache2/htdocs/zabbix/
※/usr/local/apache2/htdocs/zabbix/の所有者をrootに変更
Webインストール開始
ホスト名/zabbix
Check of pre-requiresでエラーになってるphp.iniの設定を変更し、Apache再起動。
zabbixのグラフ文字化け対応
yum install ipa-pgothic-fonts.noarch
シンボリックリンク作成
cd /usr/local/apache2/htdocs/zabbix/fonts
ln -s /usr/share/fonts/ipa-pgothic/ipagp.ttf ipagp.ttf
zabbix設定変更
vi /usr/local/apache2/htdocs/zabbix/include/defines.inc.php
//define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name
define('ZBX_GRAPH_FONT_NAME', 'ipagp'); // font file name
<DBサーバ>-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
(MySQL周り)
既存のmysql-libsをyumでremoveする
yum remove mysql-libs
MySQLをインストール
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-5.6.19-1.linux_glibc2...
tar xvf MySQL-5.6.19-1.linux_glibc2.5.x86_64.rpm-bundle.tar
rpm -ivh *.rpm
zabbix用データベース作成
create database zabbix character set utf8;
grant all privileges on zabbix.* to 'xxxxxxx'@'WebサーバIPアドレス' identified by 'xxxxxxx';
(Zabbix周り)
wget http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-2.2.4-1.el6.x86_6...
wget http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-get-2.2.4-1.el6.x...
wget http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-server-2.2.4-1.el...
wget http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-server-mysql-2.2....
wget http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-agent-2.2.4-1.el6...
※その他事前に必要なものをインストール済
rpm -ivh *.rpm
/etc/zabbix/zabbix_server.confの修正
ListenPort 10051
DBName zabbix
DBUser xxxxxxx
DBPassword xxxxxxx
ListenIP 指定なし
/etc/zabbix/zabbix_agentd.confの修正
Server ZabbixサーバのIPアドレス
ListenIP 指定なし(別環境では自身のIPアドレスを指定していたが、今の環境だとアクティブチェックエラーになる。。)
ServerActive 127.0.0.1
Hostname xxxxxxxx
zabbixデータベースに初期データを投入する
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.... -O zabbix-2.2.4.tar.gz
tar zxvf zabbix-2.2.4.tar.gz
mysql -u root -p zabbix < (任意のディレクトリ)/zabbix-2.2.4/database/mysql/schema.sql
mysql -u root -p zabbix < (任意のディレクトリ)/zabbix-2.2.4/database/mysql/images.sql
mysql -u root -p zabbix < (任意のディレクトリ)/zabbix-2.2.4/database/mysql/data.sql
長くなりましたが、このような構成でとりあえずインストールは出来ました。
あまりソースとrpmを混在させない方がいいとは思っておりますが、MySQLとZabbixは可能な限りハマリたくなかったため、
上記のような構成になりました。
そもそもApache2.4系という制約がなければよかったのですが。。←ここは変えられないんです。。
とはいえ、前述のとおり、監視がうまくできておりません。
現在、事象をまとめておりますが、別トピックの方がよければ、別途トピック作成したいと思っております。
TNK - 投稿数: 4740
PHPの一部の機能拡張だけrpmでインストールする方法はお勧めしま
せん。
どうせconfigureから実行するのであれば、それぞれの機能拡張に
対応したconfigureのオプションを指定してビルドされることを強
くお勧めします。
あと、PHPのconfigureでXML関連は追加されていないようですので、
XMLでの各種設定のインポートやエクスポートの機能は利用できな
いことにご注意ください。
それ以前の問題が発生しているようですので、その状況の情報は確
認させて頂ければと思います。
chopper - 投稿数: 5
TNKさま
返信ありがとうございます。
>PHPの一部の機能拡張だけrpmでインストールする方法はお勧めしません。
>どうせconfigureから実行するのであれば、それぞれの機能拡張に対応したconfigureのオプションを指定して
>ビルドされることを強くお勧めします。
ここでおっしゃられている「一部の機能拡張」とはMySQLクライアントの事でしょうか?
指摘されている内容を確実に理解したためお聞かせください。
>あと、PHPのconfigureでXML関連は追加されていないようですので、XMLでの各種設定のインポートやエクスポートの機能は
>利用できないことにご注意ください。
Zabbixでのmysql監視およびwordpress用なので、特に必要ないかと思い、XML関連はオプションにつけておりません。
もし、後で絶対に困ると考えられる機能があれば、差支えなければご指摘いただけないでしょうか?
>それ以前の問題が発生しているようですので、その状況の情報は確認させて頂ければと思います。
今発生している問題ですが、ホスト一覧画面で、エージェントの状態が赤色になるというものです。
エラーメッセージは、以下になります。
Get value from agent failed: cannot connect to [[127.0.0.1]:10050]: [111] Connection refused
なお、ホスト一覧内のインタフェースは
Zavvix server xxx.xxx.xxx.1:10050 ← 最初から存在するもの(DB1サーバ)
DB1 xxx.xxx.xxx.1:10050 ←自分で追加したもの(DB1サーバ)
DB2 xxx.xxx.xxx.2:10050 ←自分で追加したもの(DB2サーバ/レプリケーション用)
各サーバ毎のzabbix関連ファイルは以下の通りです。
【ZabbixサーバがインストールされているDB1サーバ】
(zabbix_server.conf)
ListenPort 10051
DBName zabbix
DBUser xxxxxxx
DBPassword xxxxxxx
ListenIP 指定なし
(zabbix_agentd.conf)
Server ZabbixサーバのIPアドレス
ListenIP 指定なし ※1
ServerActive 127.0.0.1
Hostname xxxxxxxx
※1 別環境(Apache、PHP、MySQL、Zabbixが全て同じサーバに存在した環境)では自身のIPアドレスを指定していたが、
今の環境だと下記エラーが発生する。
listener failed: bind() for [[自身のIPアドレス]:10050] failed: [99] Cannot assign requested address
【ZabbixエージェントのみインストールされているDB2サーバ】
(zabbix_agentd.conf)
Server ZabbixサーバのIPアドレス
ListenIP 指定なし ※2
ServerActive ZabbixサーバのIPアドレス
Hostname xxxxxxxx
※2 別環境(Apache、PHP、MySQL、Zabbixが全て同じサーバに存在した環境)では自身のIPアドレスを指定していたが、
今の環境だと下記エラーが発生する。
listener failed: bind() for [[自身のIPアドレス]:10050] failed: [99] Cannot assign requested address
この手の質問は過去ログにもいろいろあるため参考にしておりますが、まずは事象をまとめてみました。
宜しくお願いいたします。
TNK - 投稿数: 4740
その通りです。
Zabbixには、テンプレートやホストの情報をバックアップしたり、
そのバックアップからインポートしたり、また、他の方が作成され
たテンプレートをもらってきてそれを取り込んだりすることができ
るよう、XMLフォーマットでのエクスポートやインポートを行う機
能が用意されています。
PHPのXMLの拡張機能を有効にしていなければ、それらを行うことが
できません。
Connection refusedですので、しかもローカルのループバックに対
してですから、エージェントが起動していないか、エージェントが
他のIPアドレスを指定して起動されていることが考えられます。
とはいえ、DB1サーバ上でZabbixサーバを動かしていて、DB1サーバ
上のzabbix_agentd.confでListenIPをコメントアウトしているので
あれば、0.0.0.0(すべてのネットワークからの接続受付可)で起動
されるはずですので、それでConnection refusedがでるなら、エー
ジェントが起動されていないのではないでしょうか。
psコマンドなどでzabbix_agentdが起動されているか確認してくだ
さい。
起動しているのであれば、netstat -naコマンドなどを利用して、
ポート番号10050でLISTEN状態になっているか確認してください。
zabbix_getもインストールされていたようですから、それも利用し
て確認してみてください。
何らかのクラスタリングソフトウェアなどと組み合わせていません
か?
もしくは、クラウド環境を利用していて、ローカルなIPがサーバに
付与されていて、外部のネットワークから接続できるIPにNATされ
ているような環境ではありませんか?
外部からアクセスするIPアドレスがサーバ自体に付与されていない
ような環境であるならば、ListenIPは指定しない方が良いでしょう。
chopper - 投稿数: 5
TNKさま
お世話になっております。
MySQLクライアントの件、了解しました。
>PHPのXMLの拡張機能を有効にしていなければ、それらを行うことができません。
Zabbixのテンプレートインポートでグラフ用のxmlファイルが読み込めて表示ができたので、問題ないかと思っておりました。
また、下記にはデフォルトで有効とあるのですが、PHPのバージョンによって違いがあるのかもしれません。
(実際にxml関連っぽいオプションを指定してあるサイトが結構あったので)
http://www.php.net/manual/ja/xml.installation.php
ただ、調べている際に分かった事ですが、wordpress用のオプションとして他にもいろいろ指定しておかないとまずいことが
分かりました。怪我の功名でしたが。
>psコマンドなどでzabbix_agentdが起動されているか確認してください。
>起動しているのであれば、netstat -naコマンドなどを利用して、
>ポート番号10050でLISTEN状態になっているか確認してください。
こちらは問題ありませんでした。
ZabbixサーバがインストールされているDB1サーバ上で、自身のエージェントおよびDB2サーバのエージェントに対して
以下のコマンドを発行したところ、正しくバージョンが取得できました。
zabbix_get -s -k agent.version
zabbix_get -s -k agent.version
>何らかのクラスタリングソフトウェアなどと組み合わせていませんか?
>もしくは、クラウド環境を利用していて、ローカルなIPがサーバに付与されていて、
>外部のネットワークから接続できるIPにNATされているような環境ではありませんか?
AWS上に環境を作成しております。おっしゃる通り、クラウド環境です。
そのため、サーバのIPアドレスに該当する部分については、全て「外部のネットワークから接続できるIP」を
指定しております。
間違ったことを書いている可能性があるので正確に書きますと、AWSのEC2インスタンスでいうところの
Public IPを指定しております。
ローカルなIP=Private IPs(AWS)
外部のネットワークから接続できるIP=Public IP(AWS)
と理解しました。
>外部からアクセスするIPアドレスがサーバ自体に付与されていないような環境であるならば、
>ListenIPは指定しない方が良いでしょう。
下記に記載されている内容と同じでした。
http://www.zabbix.jp/node/1624
実際、現在コメントアウトしてうまくいっているのでいいのですが、逆に「指定する場合」に何を指定すれば
いいのでしょうか?興味本位かつネットワーク関係の話になりますので、簡単に回答できるような内容であれば
ご教授していただければ幸いです。
また、下記エラーメッセージが出る部分について私の説明がいまいちな気がするので、もう少し詳細に書かせていただきます。
Get value from agent failed: cannot connect to [[127.0.0.1]:10050]: [111] Connection refused
既に記載したとおり、ホスト一覧画面のインターフェース等は下記の通りです。
Zabbix server xxx.xxx.xxx.1:10050 ← 最初から存在するもの(DB1サーバ) ← これだけ赤色で上記エラー
DB1 xxx.xxx.xxx.1:10050 ← 自分で追加したもの(DB1サーバ)
DB2 xxx.xxx.xxx.2:10050 ← 自分で追加したもの(DB2サーバ/レプリケーション用)
Zabbix serverとDB1はインターフェースは同じ。
DB1とDB2はListenIPをコメントアウトすることでエラーがでなくなったのは分かりましたが、
何故Zabbix serverのエラーメッセージにループバックアドレスが突然でてくるのか理解できません。
情報として不足があれば調べますので、何卒宜しくお願いいたします。