簡単な紹介
この記事では、ソースコードを使用してZabbixモニタリングをインストールする方法を紹介します(ZabbixサーバーおよびZabbixエージェントサービスのインストールのみが含まれます)。
予防
この記事では、ZabbixサーバーとZabbixエージェントサービスのみをインストールし、Zabbixプロキシサービスはインストールしません。
通常のユーザーとグループを作成する
セキュリティ上の理由から、Zabbixをrootとして実行することは許可されていません。rootを使用して実行すると、自動的にzabbixユーザーに切り替わります。zabbixユーザーが存在しない場合は、エラーが報告されます。以下は、ユーザーとグループを作成するためのコマンドです。
#!/ bin / sh groupadd zabbix useradd -g zabbix zabbix
さらに、ZabbixエージェントとZabbixサーバーが同じサーバーで実行されている場合は、異なるユーザーを使用することをお勧めします。エージェントがサーバーの構成ファイルにアクセスできないようにします。
Zabbixサーバーが使用するデータベースを作成します
Zabbixサーバーはデータを保存したいので、Zabbixサーバーが配置されているサーバー上にデータベースを作成する必要があります。SQLファイルは、データベースのソースコードディレクトリの下にあります。使用する特定のデータベースは、ニーズによって異なります。例としてMySQLを取り上げます。
最初のステップは、MySQLにログインしてユーザーを作成し、承認することです。
#!/ bin / sh mysql -uroot -p
データベースzabbix文字セットの作成utf8照合utf8_bin; '<password>'で識別されるzabbix @ localhostにzabbix。*のすべての権限を付与します。 終了する;
2番目のステップは、関連するデータベースをインポートすることです。
#!/ bin / sh mysql -uzabbix -p zabbix <schema.sql #Zabbixプロキシは次の2つのSQLファイルを必要としません。 mysql -uzabbix -p zabbix <images.sql mysql -uzabbix -p zabbix <data.sql
その他のデータベースについては、「1データベース作成スクリプト」のマニュアルを参照してください。
ZabbixサーバーとZabbixエージェントをインストールします
最初のケースでは、サーバーとエージェントが同じホスト上にある場合:
ます。#!/ bin / shの #MySQLはもはや標準パスである場合は、に--with-mysqlの= / <path_to_the_file> / mysql_configを使用する必要はありません specify./configure --enable-サーバー\ --enable-エージェント- with-mysql \ --enable-ipv6 --with-net-snmp \ --with-libcurl --with-libxml2 make && make install
それらが同じホスト上にない場合は、エージェントとサーバーを別々にコンパイルする必要があります。
#!/ bin / sh #Zabbixサーバーをコンパイルします。 #MySQLが標準パスではなくなった場合は、-with-mysql = / <path_to_the_file> / mysql_configを使用して指定する必要があります。/configure--enable-server \ --with-mysql \ --enable-ipv6 \ - -with-net -snmp \ --with-libcurl \ --with-libxml2 make && make install
#!/ bin / sh #監視対象ホストでコンパイルされるZabbixエージェントをコンパイルします。 #サーバーと一緒にコンパイルしてから、監視対象のホストにコピーしないでください。あなたが何をしているのかわからない限り。 ./configure --enable-agent make && make install #-enable-agentオプションを使用すると、zabbix_getツールとzabbix_senderツールが同時に生成されます。
構成ファイルの表示と変更
Zabbixエージェントの設定ファイルは(コンパイルオプションを変更していない場合)/usr/local/etc/zabbix_agentd.confにあります
。ZabbixサーバーのIPアドレスを必ず指定してください。他のIPアドレスへのアクセスは許可されていません。
...... #のZabbixサーバのIPアドレスを サーバー= xxx.xxx.xxx.xxx ......
Zabbixサーバー設定ファイルがあります(コンパイルオプションを変更していない場合):/ usr / local / etc / zabbix_agentd.conf
が設定に含まれている必要があり、データベースのユーザー名とパスワードを示します
ZabbixサーバーとZabbixエージェントを起動します
#!/ bin / sh zabbix_server
#!/ bin / sh zabbix_agent
Webインターフェイスをインストールします
Web管理は、フロントエンドのソースディレクトリの下にあり、PHPフォルダは1つだけです。Web管理インターフェイスはPHPで記述されているため、基本的なPHPWebランタイム環境が必要です。
これは比較的簡単で、PHPソースコードはサイトの下に配置されてからアクセスされ、自動的にインストールをガイドします。ここでは、特定のプロセスは繰り返されません。
一般的なエラーのリスト
#1net-snmp-configが見つかりません
-lxml2のxmlReadMemoryをチェックしています...はい
net-snmp-configをチェックしてい
ます...いいえconfigure:エラー:無効なNet-SNMPディレクトリ-net -snmp-configが見つかりません
理由: libsnmap-devがインストールされていません。
解決策: Debinaおよびその派生物で使用されている場合は、libsnmap-devをインストールしてください。
#2 Zabbixサーバーが実行されていません:表示される情報.....。
理由:問題全体には多くの理由があります。私の例はほんの一例です。MySQLが標準パスではなくなった場合は、-with-mysql = / <path_to_the_file> / mysql_configを使用して指定する必要があります。私のMySQLは/ usr / local / mysqlにあり、コンパイル時にmyql_configの場所は指定されていません。
解決策:再コンパイルして--with-mysql = / usr / local / mysql / bin / mysql_configを使用して、mysql_configの場所を指定します。
関連記事
「Zabbix」-インストール(CentOS)
「Zabbix」-Debain8.2およびZabbix4.0「Zabbix」-
バージョンアップグレードについて