ZABBIX 6.0 LTS KURULUMU
ZABBIX SERVER, WEB SERVER VE DATABASE SUNUCULARIN KURULUMU
Zabbix; network, sunucu, uygulama, servis ve cloud ortamlarımızı gözlemlememizi sağlayan open source monitoring (izleme) yazılımıdır. Zabbix ile sistem, servis ya da site üzerinde meydana gelen problemleri monitor edebilirsiniz.
Bu makalemde ise, büyük yapılarda sistemleri izlemek için zabbix kuracağız.
İzleme yapacağımız ortamın sunucu, servis, uygulama, servis, vs. sayıları arttıkça kısacası kapasitesi büyüdükçe Zabbix tek bir sunucu üzerinde koşturmak uygun olmaz. Zabbix bileşenlerini birbirinden bağımsız sunucularda kurmak güvenlik seviyesini arttırmış, riski de azaltmış oluruz.
Büyük yada karmaşık yapıya sahip sistemlerimizde zabbix yapısını kurmak istediğimizde, aşağıdaki gibi bileşenleri ayrı ayrı sunucularda kurulması için planlamasını yapmış oluruz.
Server Name | OS | IP | App |
Web Server (Frontend) | Ubuntu 20.04 | 192.168.1.200 | Nginx |
Zabbix Server | Ubuntu 20.04 | 192.168.1.150 | Zabbix |
Database Server | Ubuntu 20.04 | 192.168.1.100 | PostgreSQL |
Proxy Server | Ubuntu 20.04 | 192.168.1.50 | Proxy |
ZABBIX Server Kurulum Öncesi Hazırlıklar
Zabbix Database, Zabbix Web Server ve Zabbix Application Server’ ın üzerine kurulacağı Linux sistemlerin her birinde firewall ve SElinux disable ediyoruz. (POC olarak kurulum yaptığım için stop ve disable ediyorum)
Firewall ve SElinux disable yapacağız,
# systemctl stop ufw
(Firewall Stop)
# systemctl disable ufw
(Firewall Disable)
# systemctl status ufw
(Firewall Durumu Kontrol )
# apt install selinux-utils policycoreutils
(Ubuntu’ da SElinux defalut gelmemektedir, kurulum yapılır)
# setenforce 0
(disable) (SELinux Disable)
# sestatus
(SElinux kontrol)
ZABBIX DB Kurulumu (192.168.1.100)
# wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-1+ubuntu20.04_all.deb
# dpkg -i zabbix-release_6.0-1+ubuntu20.04_all.deb
# apt update
# apt install postgresql postgresql-contrib zabbix-agent
# ls /etc/postgresql/12/main/
(PostgreSQL kurulum sonrası dosyalar kontrol edilir)
# systemctl status postgresql
(Servisin çalışabilirliği kontrol edilir)
# sudo -u postgres psql
(PostgreSQL’ de default olarak postgres kullanıcısı vardır)
$ \du
(kullanıcı listelenir)
Yada
$ su - postgres -c "psql -c '\du'"
$ \l
(Database listelenir)
# sudo -u postgres createuser --pwprompt zabbix
# sudo -u postgres createdb -O zabbix zabbix
# GRANT ALL PRIVILEGES ON DATABASE zabbix to zabbix
# sudo -u postgres psql
$ \password zabbix
(zabbix kullanıcısının password oluşturulur)
# zcat /usr/share/doc/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix
zcat /usr/share/doc/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u <username> psql zabbix
Postgresql.conf konfigürasyon dosyasında Listen_addresses = ‘*’
Güvenlik açısından erişimi izin vereceğimiz ipler için pg_hba.conf ve postgresql.conf dosyasını güncellememiz gerekecektir. Sonrasında PostgreSQL servisi restart edilir.
Postgresql.conf konfigürasyon dosyasında IPv4 Local Connections kısmında host all all 0.0.0.0/0 md5 güncelleme yaparak tüm iplere erişim vermiş oluruz.
# vi /etc/postgresql/12/main/postgresql.conf
konfigürasyon dosyasında Listen_addresses satırını Database sunucusuna erişecek adresleri girerek aktif edilir.
# systemctl restart postgresql
Zabbix Database sunucu kurulumu tamamlanmıştır.
ZABBIX APPLICATON SERVER (192.168.1.150)
# wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-1+ubuntu20.04_all.deb
# dpkg -i zabbix-release_6.0-1+ubuntu20.04_all.deb
# apt update
# apt install zabbix-server-pgsql php7.4-pgsql zabbix-sql-scripts zabbix-agent
Dağınık (Database, Zabbix Server farklı sunucularda) kurulumlarda Zabbix server (192.168.1.150) üzerinde oluşan server.sql.gz dosyasını Zabbix database (192.168.1.100) olmadığı için database sunucusuna kopyalanması gerekmektedir. Sebebi ise Zabbix Server’ da oluşacak tablo ve şemaları database sunucuna aktarılmasınıdır.
# scp -P 22 zabbix@192.168.1.150:/usr/share/doc/zabbix-sql-scripts/postgresql/server.sql.gz /root
Zabbix Database (192.168.1.100) sunucusunda aşağıdaki komutu yapıyoruz.
# zcat server.sql.gz | sudo -u zabbix psql zabbix
zabbix_server.conf konfigürasyon dosyasında aşağıdaki değerlerin girilmesi gerekmektedir.
# vi /etc/zabbix/zabbix_server.conf
DBHost=192.168.1.100 (IP adresini)
DBName=zabbix (Database adını)
DBUser=zabbix
DBPassword=Password
DBPort=5432
Konfigürasyon dosyasında güncelleme yapıldıktan sonra servis restart edilir ve aktif edilir.
# systemctl enable zabbix-server
# systemctl enable zabbix-server –-now
Zabbix Server kurulumu yapıldıktan sonra database ile bağlantılarını kontrol edilmesi ve hata olup olmadığını görebilmek için zabbix_server.log dosyasına kontrol edelim.
# tail –f /var/log/zabbix/zabbix_server.log
Zabbix Application Server kurulumu tamamlanmıştır.
ZABBIX WEB SERVER (FRONTEND – 192.168.1.200)
# wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-1+ubuntu20.04_all.deb
# dpkg -i zabbix-release_6.0-1+ubuntu20.04_all.deb
# apt update
# apt install zabbix-frontend-php php7.4-pgsql zabbix-nginx-conf zabbix-agent
nginx.conf konfigürasyon dosyasında aşağıda belirttiğim satır aktif edilir.
# vi /etc/zabbix/nginx.conf
listen 80;
server_name 192.168.1.200;
Konfigürasyon dosyaları güncelleme yaptıktan sonra servisler restart edip aktif edilir.
# systemctl restart zabbix-server nginx php7.4-fpm
# systemctl enable zabbix-server nginx php7.4-fpm
Zabbix Web Server kurulumu tamamlanmıştır.
Kurulumu devam etmek için web browserdan web server ip adresi yazılarak ilerliyoruz.
Zabbix kurulum ekranı gelir ve dili seçilir.
Kurulum öncesi gereksinimler kontrol edilir.
Database bağlantı bilgileri giriş yapılır.
Kurulum öncesi bilgilerin özeti dökülür.
Ve kurulum tamamlanır.
Zabbix’in Admin hesabını default password ile giriş yapılır.
Zabbix Dashboard ekrana gelerek. Zabbix Server, Zabbix Web Server, Zabbix Database ve Zabbix Agent kurulumu tamamlanmıştır.
Diğer yazımda Zabbix Proxy ve Zabbix Agent konfigürasyonları anlatacağım.
Vakit ayırıp yazımı okuduğunuz için teşekkür ederim.
Başka yazımda görüşmek dileğiyle…