Freebsd10.3 に Zabbix Server 3.0 をインストール【MySQL・Apache・PHP】|No IT No Life - おすぎやん サーバの設計・構築

スポンサーリンク

2016年9月28日水曜日

Freebsd10.3 に Zabbix Server 3.0 をインストール【MySQL・Apache・PHP】

おすぎやんです。

Zabbixは多機能、カスタマイズ可能なオープンソースの運用監視ツールです。

FreeBSD 10.3 に Zabbix Server 3.0のインストール手順を公開します。
portsの画面も一通り乗っけています。
このとおりにやれば、起動まではいく(はず)

FreeBSD 10.3 のインストールがまだの方はこちら

VMware Workstation 12 Player に FreeBSD 10.3 をインストール


1.Zabbix Server 3.0 要件


Zabbix Server について、マニュアル記載のハードウェア要件はかなりふわっとしています。
下記マニュアル記載の参考値です。
Monitored hosts(監視対象台数)を元に決めてください。
Name Platform CPU/Memory Database Monitored hosts
Small CentOS Virtual Appliance MySQL InnoDB 100
Medium CentOS 2 CPU cores/2GB MySQL InnoDB 500
Large RedHat Enterprise Linux 4 CPU cores/8GB RAID10 MySQL InnoDB or PostgreSQL >1000
Very large RedHat Enterprise Linux 8 CPU cores/16GB Fast RAID10 MySQL InnoDB or PostgreSQL >10000

Zabbix ServerをサポートしているOSは下記。
Windowsは不可(AgentはOK)です。
今回はFreeBSDにインストールします。

  • Linux
  • IBM AIX
  • FreeBSD
  • NetBSD
  • OpenBSD
  • HP-UX
  • Mac OS X
  • Solaris

今回はApache、PHP、MySQLで行きます。
バージョン要件は下記。

  Apache 1.3.12 以上
  PHP 5.4以上(7はサポート外)
  MySQL 5.0.3 以上


詳細は下記マニュアルを参照してください。
https://www.zabbix.com/documentation/3.0/manual/installation/requirements

ちなみにZabbix Server 3.0のマニュアルは英語のみです。
Zabbix Server 2.2までは日本語版があります。
大枠は変わっていないので、わからないことがあったら2.2のマニュアルも参考になります。

2.MySQL  5.7 インストール


Zabbix Server のDBはMySQLにします。
今回は最新版のMySQL5.7でいきます。

インストール開始します。
portsを使ってインストールをします。
基本すべてデフォルトOKです。

rootユーザにスイッチしておいてください。

実行前に下記コマンドでportsを最新化しておきましょう。
 # portsnap fetch
 # portsnap extract

下記コマンドを実行します。
 # cd /usr/ports/databases/mysql57-server/
 # make

コマンドを実行すると下記画面が表示されます。
「Enter」を押します。


画面が出るまで20分ほど結構かかります。
「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


プロンプトに戻るので下記コマンドを実行します。

 # make install
rc.confにMySQLを追加し、サーバ起動時にMySQLが起動するように設定します。

 # vi /etc/rc.conf
下記を追記して保存します。

 # mysql_enable="YES"



これでMySQL 5.7のインストールは完了です。

設定を行います。
下記コマンドを実行し、設定ファイルをコピーします。
 # cp /usr/local/share/mysql/my-default.cnf /var/db/mysql/my.cnf

下記コマンドを実行し、設定ファイルの権限を変更します。
 # chmod 640 /var/db/mysql/my.cnf

設定ファイルを編集します。
 # vi /var/db/mysql/my.cnf

設定ファイルに下記を追記し保存します。
※[mysqld]より下に追記
 skip-character-set-client-handshake
 character-set-server=utf8
 datadir=/var/db/mysql

下記コマンドを実行しMySQLを起動します。
 # /usr/local/etc/rc.d/mysql-server start

これでMySQLの設定は完了です。

3.Apache 2.4 インストール


Zabbix Server のWEBはApacheにします。
今回は最新版のApache 2.4でいきます。

インストール開始します。
MySQL同様portsを使ってインストールをします。
基本すべてデフォルトOKです。

rootユーザにスイッチしておいてください。
下記コマンドを実行します
 # cd /usr/ports/www/apache24
 # make

下記画面で「Enter」を押します。
画面がいっぱいあるのは、パラメータが10ページ分あるから。
参考までにすべて乗せておきます。











下記画面で「Enter」を押します。


下記画面で「Enter」を押します。


下記画面で「Enter」を押します。


下記画面で「Enter」を押します。


下記画面で「Enter」を押します。


プロンプトに戻るので下記コマンドを実行します。
 # make install
rc.confにApacheを追加し、サーバ起動時にApacheが起動するように設定します。
 # vi /etc/rc.conf
下記を追記して保存します。
 # apache24_enable="YES"



設定ファイルをコピーし変更します。
 # cp -p /usr/local/etc/apache24/httpd.conf.sample /usr/local/etc/apache24/httpd.conf
 # vi /usr/local/etc/apache24/httpd.conf

下記を追記して保存します。
 ServerName ホスト名:80
下記コマンドでApacheを起動。
 # /usr/local/etc/rc.d/apache24 start
これでインストールは完了です。

4.PHP  5.6 インストール


Zabbix Server のAPPはPHPにします。
今回は最新版のPHP 5.6でいきます。

インストール開始します。
portsを使ってインストールをします。
基本すべてデフォルトOKです。

rootユーザにスイッチしておいてください。
下記コマンドを実行します。
 # cd /usr/ports/lang/php56/
 # make

下記画面で「Enter」を押します。


下記画面で「Enter」を押します。


プロンプトに戻るので下記コマンドを実行します。

 # make install
 PHPはrc.confの追記は不要です。

mod_php5をインストールします。
下記コマンドを実行します。
 # cd /usr/ports/www/mod_php56
 # make

下記画面で「Enter」を押します。


プロンプトに戻るので下記コマンドを実行します。

 # make install
PHPの設定ファイルを作成します。
下記コマンドで元ファイルからコピーします。

 # cp -p /usr/local/etc/php.ini-production /usr/local/etc/php.ini
下記コマンドでPHPの設定ファイルを編集します。

 # vi /usr/local/etc/php.ini
下記を修正して保存します。
 post_max_size 8M → 16M
 max_execution_time 30 → 300
 max_input_time = 60 → 300
 ;date.timezone = → date.timezone = Asia/Tokyo
 ;always_populate_raw_post_data = -1 → always_populate_raw_post_data = -1

今度はApache側の設定です。
Apacheが拡張子phpのファイルを認識できるようにします。
下記コマンドでApacheのconfファイルを作成します。
 # vi /usr/local/etc/apache24/Includes/php56.conf

下記を追記して保存します。
  AddType application/x-httpd-php .php
 AddType application/x-httpd-php-source .phps
 AddType text/html .php
 DirectoryIndex index.html index.htm index.php
 <FilesMatch "\.php$">
     SetHandler application/x-httpd-php
 </FilesMatch>
 <FilesMatch "\.phps$">
     SetHandler application/x-httpd-php-source
 </FilesMatch>

下記コマンドでApacheを起動。
 # /usr/local/etc/rc.d/apache24 restart

これでインストールは完了です。

ApacheがPHPと連携しているか確認します。

下記コマンドでinfo.phpファイルを作成。
 # vi /usr/local/www/apache24/data/info.php

下記を1行追記して保存します。
 <?php phpinfo(); ?>


下記のURLにアクセスします。
http://<サーバのIPアドレス>/info.php

こんな感じでPHPの設定情報が出てきたら成功です。

5.Zabbix Server 3.0 インストール


Zabbix Server 本体のインストールです。
今回は最新版のZabbix Server 3.0でいきます。

インストール開始します。
portsを使ってインストールをします。
基本すべてデフォルトOKです。

rootユーザにスイッチしておいてください。
下記コマンドを実行します。
 # cd /usr/ports/net-mgmt/zabbix3-server
 # make

下記画面でDBを「MYSQL」に選択します。
他にも監視したい項目があれば、上のチェックを追加してください。
「Enter」を押します。


とりあえず「MYSQL」にチェックを追加しておきます。
「Enter」を押します。


 「Enter」を押します。


「Enter」を押します。


プロンプトに戻るので下記コマンドを実行します。

 # make install

rc.confにZabbix Serverを追加し、サーバ起動時にZabbix Serverが起動するように設定します。
 # vi /etc/rc.conf

下記を追記して保存します。
 zabbix_server_enable="YES"



6.Zabbix Frontend 3.0 インストール


次はZabbix frontendをインストールします。
これを入れないとWEBが日本語化できません。

下記コマンドを実行します。
 # /usr/ports/net-mgmt/zabbix3-frontend
 # make

「MYSQL」にチェックを追加します。
「Enter」を押します。


「JIS」にチェックを追加します。
「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


 「Enter」を押します。


 「Enter」を押します。


 「Enter」を押します。


 「Enter」を押します。


 「Enter」を押します。


 「Enter」を押します。


 「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


「Enter」を押します。


プロンプトに戻るので下記コマンドを実行します。

 # make install

7.Zabbix Server 3.0 設定


Zabbix用のDBを設定します。

下記コマンドを実行後、rootもパスワードを入力しMySQLにログインします。
 # mysql -uroot -p
 Enter password:パスワード

ちなみに私はこのメッセージがでました。
 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

パスワードはあってるけど、アクセスできないとな!?
下記コマンドで対応できます。
 # /usr/local/etc/rc.d/mysql-server stop
 # mysqld_safe --skip-grant-tables &
 # mysql
 mysql> use mysql;
 mysql> update user set authentication_string=password("パスワード") where user='root';
 mysql> FLUSH PRIVILEGES;
 mysql> exit
 # /usr/local/etc/rc.d/mysql-server restart

下記コマンドを実行後、rootもパスワードを入力しMySQLにログインします。
 # mysql -uroot -p
 Enter password:パスワード

もう一度パスワード変更コマンドを実行します。

 mysql> set password for root@localhost=password('パスワード');

Zabbix用のDBを作成します。

 mysql> create database zabbix character set utf8;
 mysql> exit
下記コマンドでDBに情報を入れ込みます。

 # cd /usr/local/share/zabbix3/server/database/mysql/
 # mysql -uroot -pパスワード zabbix < schema.sql
 # mysql -uroot -pパスワード zabbix < image.sql
 # mysql -uroot -pパスワード zabbix < data.sql
次はZabbix Serverの設定を行います。

下記コマンドを実行します。

 # cd /usr/local/etc/zabbix3
 # cp zabbix_server.conf.sample zabbix_server.conf
 # vi zabbix_server.conf
下記コマンドを実行します。
一部コメント解除されているパラメータもあります。確認しながら修正してください。

 LogFile=/var/log/zabbix_server.log
 PidFile=/var/run/zabbix_server.pid
 DBName=zabbix
 DBUser=root
 DBUser=root
 DBPassword=パスワード
 FpingLocation=/usr/local/sbin/fping
 ListenIP=IPアドレス

ディレクトリを作成し権限を追加します。

 # mkdir /var/run/zabbix /var/log/
 # chmod 777 /var/run/zabbix /var/log/zabbix
下記コマンドでZabbix Server を起動します。
 # /usr/local/etc/rc.d/zabbix_server start

Apacheの設定ファイルを変更します。
 # vi /usr/local/etc/apache24/httpd.conf

一番下の行に下記を追記して保存します。

 Alias /zabbix /usr/local/www/zabbix3
 <Directory "/usr/local/www/zabbix3">
  Options Indexes FollowSymLinks
  AllowOverride All
  Require all granted
  Allow from all
 </Directory>
 
下記コマンドでApacheを再起動。
 # /usr/local/etc/rc.d/apache24 restart

下記URLにアクセスします。
http://<IPアドレス>/zabbix/

「Next step」をクリックします。


全部OKなのを確認して「Next step」をクリックします。


MySQLのrootのパスワードを入力し「Next step」をクリックします。


「Next step」をクリックします。


「Next step」をクリックします。


「Download the configuration file」をクリックしファイルをダウンロードします。


下記コマンドでファイルを作成し先ほどダウンロードしたファイルの内容をコピーして保存。

 # vi /usr/local/www/zabbix3/conf/zabbix.conf.php
 # chmod 755 /usr/local/www/zabbix3/conf/zabbix.conf.php
もう一度編集。
 # vi /usr/local/www/zabbix3/conf/zabbix.conf.php

下記の行を「localhost」から「IPアドレス」に変更して保存
 $ZBX_SERVER      = 'localhost'; → $ZBX_SERVER      = 'IPアドレス';

「Finish」をクリックします。


Usernameに「admin」、Passwordに「zabbix」を入力し「Sign in」をクリックします。


ログイン画面が表示されたことを確認します。



「Administration」-「Users」をクリックします。


「Admin」をクリックします。


Languageを「Japanese (ja_JP)」に変更し「Update」をクリックします。


日本語に変更されたことを確認します。

これで設定はひととおり完了です。


スポンサーリンク