Zabbix Server 構築 - aktnk/til GitHub Wiki
Zabbix Server 構築
Ubuntu Serverの準備
- DigitalOceanのクラウドサービスの Droplets を使い、2 GB Memory / 1 Intel vCPU / 70 GB Disk / SFO3 - Ubuntu 20.04 LTSでサーバ立ち上げ
- WSL上のUbuntuにて、ssh-keygenコマンドを使い、SSHキーペア作成
- 作成した公開鍵をDroplets作成画面のSSH Keyのコピー&ペースト
- MANAGE>NetworkからFirewallsを設定
- ISPから割り当てられた自宅のIPアドレスから、SSH、HTTPのアクセスを許可
Zabbix 6.0 LTSのインストール
- WSLのUbuntuからsshコマンドでUbuntu Serverに接続
$ ssh -i (SSH Key名) root@(Dropletsで立ち上げたUbuntu ServerのIPアドレス)
- Download and install Zabbixのページで環境を指定、表示された手順に従いZabbix 6.0 LTSをインストール
# wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4+ubuntu20.04_all.deb # dpkg -i zabbix-release_6.0-4+ubuntu20.04_all.deb # apt update # apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
- インストールしたサービスの確認。MySQL Serverがインストールされていないので、インストール実施
# service zabbix-server status # service zabbix-agent status # service mysql status # apt install mysql-server
- 再度zabbix serverの手順に戻り、インストール作業を継続
# mysql -uroot -p password mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin; mysql> create user zabbix@localhost identified by 'password'; mysql> grant all privileges on zabbix.* to zabbix@localhost; mysql> set global log_bin_trust_function_creators = 1; mysql> quit; # zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix # mysql -uroot -p password mysql> set global log_bin_trust_function_creators = 0; mysql> quit;
- /etc/zabbix/zabbix_server.confのDBPassword設定
DBPassword=password
- 各種サービスを再起動し、自動起動するように設定
# systemctl restart zabbix-server zabbix-agent apache2 # systemctl enable zabbix-server zabbix-agent apache2
- ブラウザからZabbixサーバのURLにアクセスし、設定を行う
- ユーザ名:Admin、パスワード:zabbixでサインイン
- Administration>UsersからAdminパスワードを変更
- DigitalOceanに設定したFirewallsでCUSTOMを指定し、自宅IPアドレスからZabbix Serverのポート10051へのアクセスを許可
- 取得しているドメインを使い、Zabbix Serverにhttpsでアクセスできるようにする
- Googleドメイン管理コンソールへ行き、DNSコンソールへアクセスする
- DNSにZabbix ServerのPublicIPアドレスに、Aレコードとして、ホスト名をして、http://(ホスト名).(保有しているドメイン名)でアクセスできるようにする
- ブラウザからhttp://(ホスト名).(保有しているドメイン名)/zabbix にアクセスし、表示されることを確認する
- httpsでアクセスできるようにする
- https://certbot.eff.org/ に行き、環境に合わせてOSとWebサーバを指定
- 表示に合わせてCertBotをインストールする
# snap install --classic certbot # ln -s /snap/bin/certbot /usr/bin/certbot # certbot --apache
- DigitalOceanのfirewallsで自宅のIPアドレスからHTTPSアクセスを許可する
- ブラウザからhttps://(ホスト名).(保有しているドメイン名)/zabbix にアクセスし、表示されることを確認する
利用サービス
-
今回の学習ではDigitalOcean クラウドサービスを利用しています。