どこのサイトの情報も間違っているとのつぶやきを見かけたのでちょっと書いてみます。
ただし、基本的な流れとポイントのみです。
SELinuxは、disabledです。
firewalldの設定は、もっと厳密にした方が良いでしょう。
DBMSは、CentOS 7ですのでMariaDBとします。
PostgreSQLの方が良い方は、Zabbixのパッケージでパッケージ名のmysqlの部分がpgsqlのパッケージをインストールしてください。
=====
1.OSのインストール
=====
最低限の構成でOSをインストールします。
=====
2.各種パッケージのアップデート
=====
yum updateを利用して、インストールされている各種パッケージをアップデートします。
# yum update
=====
3.SELinuxのdisabled
=====
手順の説明を簡略化するため、disabledにします。
環境に合わせて適宜設定することをお勧めします。
# vi /etc/selinux/config
----- ここから -----
SELINUX=disabled
----- ここまで -----
=====
4.OS再起動
=====
SELinuxをdisabledに設定したので、それを反映させるためにOSを再起動しておきます。
# reboot
=====
5.firewalldの設定
=====
rebootしたら、firewalldの設定を行います。
Zabbixサーバが外部から接続を受けるのは、Zabbixエージェントからのアクセスと、Webインターフェースへのアクセスです。
SNMPトラップや他のアクセスを許可する場合は、それらも許可するようにしてください。
# firewall-cmd --add-port=10050/tcp --zone=public --permanent
# firewall-cmd --add-port=10051/tcp --zone=public --permanent
# firewall-cmd --add-service=http --zone=public --permanent
# systemctl restart firewalld
Zabbixエージェントへのアクセスが、ローカルのループバックを利用するのであれば、10050をあける必要はありません。
つまり、Zabbixエージェントが外部のIPアドレスからアクセスされる場合には、10050をあけます。
Zabbixサーバが、Zabbixエージェントからのアクセスを外部から受ける時には、10051をあけます。
もっとアクセス可能なゾーンを特定したり、Zabbix用のサービスを定義して登録して、サービス名を利用して設定した方が良いかもしれません。
その手順はまた今度。
=====
6.Zabbix SIAのリポジトリ登録
=====
Zabbix SIAが、RHEL 7用のyumのリポジトリも公開しているので、それを登録します。
2.2系用:
# yum install http://repo.zabbix.com/zabbix/2.2/rhel/7/x86_64/zabbix-release-2.2-1.el7.noarch.rpm
2.4系用:
# yum install http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-release-2.4-1.el7.noarch.rpm
=====
7.Zabbix関連のパッケージインストール
=====
Zabbixサーバの本体、ZabbixサーバのWebインターフェース、自分自身を監視するためにZabbixエージェントをインストールします。
ここでインストールするのは、MySQLまたはMariaDB用です。
# yum install zabbix-server-mysql zabbix-web-mysql zabbix-web-japanese zabbix-agent
zabbix-web-japaneseというパッケージは、Webインターフェースで日本語のフォントを利用できるようにするための設定用パッケージです。
=====
8.MariaDBのインストール
=====
CentOS 7から、標準ではMySQLのサーバのパッケージ(mysql-server)が含まれなくなったので、その代わりにMariaDBのサーバ(mariadb-server)をインストールします。
# yum install mariadb-server
MariaDB用の設定を行っておきます。
# vi /etc/my.cnf.d/server.cnf
----- ここから -----
[mysqld]
character-set-server = utf8
collation-server = utf8_general_ci
skip-character-set-client-handshake
innodb_file_per_table
----- ここまで -----
# systemctl start mariadb
# systemctl enable mariadb
=====
9.初期データベースの作成
=====
DBMS上にデータベースとそれにアクセスするためのユーザを作成します。
# mysql -uroot
mysql> create database zabbix;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'password' ;
mysql> flush privileges;
mysql> exit
#
テーブルを作成して、初期データも投入します。
# mysql -uroot zabbix < /usr/share/doc/zabbix-server-mysql-2.2.8/create/schema.sql
# mysql -uroot zabbix < /usr/share/doc/zabbix-server-mysql-2.2.8/create/images.sql
# mysql -uroot zabbix < /usr/share/doc/zabbix-server-mysql-2.2.8/create/data.sql
パス名は、バージョンごとにバージョン番号をパスに含んでいますので、インストールしたバージョンに合わせてパスを変更してください。
=====
10.Zabbixの設定ファイルの更新
=====
ここまでの設定のままであれば、最低限の設定としては、DBPasswordを設定するだけです。
DB作成時のパスワードをDBPasswordに設定してください。
# vi /etc/zabbix/zabbix_server.conf
----- ここから -----
DBPassword=password
----- ここまで -----
=====
11.ZabbixのWebインターフェース用設定修正
=====
Zabbixのパッケージのデフォルトでは、PHPのtimezoneの設定がコメントアウトされているので、設定を有効にしてタイムゾーンが日本ならば、Asia/Tokyoに設定します。
# vi /etc/httpd/conf.d/zabbix.conf
----- ここから -----
php_value date.timezone Asia/Tokyo
----- ここまで -----
=====
12.各種デーモン起動
=====
# systemctl start zabbix-server
# systemctl start zabbix-agent
# systemctl start httpd
# systemctl enable zabbix-server
# systemctl enable zabbix-agent
# systemctl enable httpd
=====
13.Webインターフェースにアクセス
=====
ブラウザを利用して、「http://IPアドレス/zabbix/」にアクセスします。
最初のアクセス時は、Zabbix設定のウィザードが実行されるので、DBへのアクセス情報などを入力して次へ次へと進めてください。
「3. Configure DB connection」では、UserとPasswordを入力して「Test connection」をクリックして接続確認を行うことを忘れずに。
設定が終わるとログイン画面になります。アカウント「Admin」、パスワード「zabbix」でログインしてください。
=====
14.Zabbix serverの監視を有効に設定
=====
ログイン後、まずは日本語画面に切り替えます。
右上のProfileをクリックして、LanguageとしてJapaneseを選択してSaveボタンを押してください。
次に、「設定」 -> 「ホスト」と選択してホスト一覧を表示させ、表示された「Zabbix server」というホストのステータスの「無効」をクリックして「有効」に変更すれば、Zabbixサーバ自体の監視が開始されます。
Twitterでもつぶやきましたが、ここにも書いておきます。
返信削除CentOS 7.1.1503にアップデートしてZabbix 2.4.4がSegmentation Faultで落ちてしまうというあなた。gnutlsをgnutls-3.1.18-10.el7_0.x86_64.rpmにダウングレードしてみてください。
まだアクセスしに来ている人がいるようですので、ここにもさらに
返信削除付け足ししておきます。
gnutls-3.1.18-10.el7_0.x86_64.rpm使ってと書きましたが、7.1が
リリースされて、古いバージョンだからと各ミラーからrpmは削除
されてしまっているようです。
ですので、gnutlsは、CentOS 7.1のものそのままを利用して、そも
そもの原因であるtrousersを、修正されたバージョンに置き換える
のも1つの方法です。
私の友人が書いたものを参考にしてみてください。
ただし、fc20のバイナリパッケージそのまま利用して問題が無いか
については、私はあまりお勧めしません。
CentOS7.1 で zabbix-serverの起動が失敗する話とその解決方法
http://qiita.com/_BSmile_/items/61932e45de5330190027
ということで、Fedoraは修正されているので、FedoraのSRPMを持っ
てきて、rpmをリビルドして使うのが私は良いと思います。
個人的には、自分でパッチを作成してtrousersのパッケージを作成
してインストールして、CentOS 7.1でもtrousersのパッケージを更
新することでZabbixを稼働できています。
2015/5/18時点でも、RHELは修正する気がなさそうです。
Bug 1071171 - crash when linking libtspi and libmysqlclient [NEEDINFO]
https://bugzilla.redhat.com/show_bug.cgi?id=1071171
Bug 1069079 - crash when linking libgnutls and libmysqlclient
https://bugzilla.redhat.com/show_bug.cgi?id=1069079
情報として更新しておかなかったので書いておきます。
返信削除CentOS 7.1だけでRHELでは確認していませんが、CentOS 7.1に関しては、
trousers-0.3.11.2-4.el7_1
というtrousersの更新パッケージが6/24にリリースされているようです。
これを利用すれば、my_init()の衝突を回避できるので、zabbix_serverが起動できるようになります。
ということで、CentOS 7.1.1503では、各種パッケージをyumなどで更新してからZabbixを利用してください。
trousers bug fix update
https://rhn.redhat.com/errata/RHBA-2015-1146.html
[CentOS-announce] CEBA-2015:1146 CentOS 7 trousers BugFix Update
http://lists.centos.org/pipermail/centos-announce/2015-June/021198.html
SELinuxをenforcingにした際の設定に関しては、Qiitaでもいくつか書いていますので、参考にしてみてください。
返信削除Zabbix 3.0をCentOS 7にインストール
http://qiita.com/atanaka7/items/294a639effdb804cfdaa
Zabbix 3.0をCentOS 7にインストール(PostgreSQL編)
http://qiita.com/atanaka7/items/920dd3edcaefe2b7e1fa
Zabbixでsyslog監視(CentOS 7編)
http://qiita.com/atanaka7/items/9c8736553262f64c03f6