1. 程式人生 > 實用技巧 >Zabbix運維---基本搭建

Zabbix運維---基本搭建

一、基本介紹

  1、企業級監控工具

  

  2、zabbix組成

  

  3、zabbix架構

  

  4、zabbix server組成

  

  5、zabbix基本術語

    1)元件功能

    

    2)監控收集

    

    3)資料展示

    

    4)告警相關

    

    5)認證和許可權

    

二、搭建安裝

  1、資源要求

  

  2、二進位制安裝

centos 7 新增阿里雲映象
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum install epel-release 安裝常用的開發元件 yum groups install "Development Tools" yum groups info "Development Tools" 增加Zabbix映象源 rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm 關閉SElinux systemctl stop firewalld.service systemctl disable firewalld.service vim
/etc/selinux/config yum install iptables-services 安裝Zabbix Server和Frontend yum install zabbix-server-mysql yum install zabbix-web-mysql 安裝MySQL yum install mariadb-server systemctl start mariadb.service systemctl status mariadb.service mysql_secure_installation 建立資料庫 mysql -uroot -p create database zabbix character
set utf8 collate utf8_bin; grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix@findsec123'; 匯入資料結構 zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -pzabbix@findsec123 zabbix 配置Zabbix Serve vim /etc/zabbix/zabbix_server.conf 啟動Zabbix Server systemctl start zabbix-server.service systemctl status zabbix-server.service more /var/log/zabbix/zabbix_server.log 配置Zabbix frontend vim /etc/php.ini max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M max_input_time = 300 max_input_vars = 10000 always_populate_raw_post_data = -1 date.timezone = Asia/Shanghai 啟動httpd systemctl start httpd.service systemctl status httpd.service http://10.211.55.7/zabbix/setup.php Admin zabbix 安裝Zabbix Agent yum install zabbix-agent systemctl start zabbix-agent.service

  3、原始碼安裝

下載zabbix server原始碼包
wget -O zabbix-4.0.4.tar.gz  https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/4.0.4/zabbix-4.0.4.tar.gz/download

安裝依賴
yum install wget telnet net-tools python-paramiko gcc gcc-c++ dejavu-sans-fonts python-setuptools python-devel sendmail mailx net-snmp
net-snmp-devel net-snmp-utils freetype-devel libpng-devel perl unbound libtasn1-devel p11-kit-devel OpenIPMI unixODBC libevent-devel
mysql-devel libxml2-devel libssh2-devel OpenIPMI-devel java-1.8.0-openjdk-devel openldap-devel curl-devel unixODBC-devel 解壓並編譯安裝 tar -zxvf zabbix-4.0.4.tar.gz cd zabbix-4.0.4/ 建立編譯安裝目錄 mkdir -p /data/findsec/zabbix ./configure --prefix=/data/findsec/zabbix --enable-server --enable-agent --enable-java --with-mysql --with-libxml2 --with-unixodbc
--with-net-snmp --with-ssh2 --with-openipmi --with-ldap --with-libcurl --with-iconv make make install /data/findsec/zabbix/sbin/zabbix_server -V 資料庫安裝 yum install mariadb-server systemctl start mariadb.service systemctl status mariadb.service mysql_secure_installation 建立資料庫 mysql -uroot -p create database zabbix character set utf8 collate utf8_bin; grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix@findsec123'; 匯入資料結構 mysql -uzabbix -pzabbix@findsec123 zabbix < /root/zabbix-4.0.4/database/mysql/schema.sql mysql -uzabbix -pzabbix@findsec123 zabbix < /root/zabbix-4.0.4/database/mysql/images.sql mysql -uzabbix -pzabbix@findsec123 zabbix < /root/zabbix-4.0.4/database/mysql/data.sql 修改zabbix server配置 vim /data/findsec/zabbix/etc/zabbix_server.conf 增加使用者 groupadd --system zabbix useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix 啟動服務 /data/findsec/zabbix/sbin/zabbix_server -c /data/findsec/zabbix/etc/zabbix_server.conf tailf /tmp/zabbix_server.log 增加Zabbix映象源 rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm 安裝Zabbix Frontend yum install zabbix-web-mysql 配置Zabbix frontend vim /etc/php.ini max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M max_input_time = 300 max_input_vars = 10000 always_populate_raw_post_data = -1 date.timezone = Asia/Shanghai 啟動httpd systemctl start httpd.service systemctl status httpd.service http://10.211.55.7/zabbix/setup.php Admin zabbix 安裝Zabbix Agent yum install zabbix-agent systemctl start zabbix-agent.service

  4、docker容器安裝

安裝和啟動docker:
yum install docker-latest -y 
systemctl start docker-latest
systemctl status docker-latest
ps -ef | grep docker

測試容器功能
docker run -d -p 80:80 httpd
ps -ef | grep httpd
docker stop ffc18f4d40c9

安裝mysql
docker run --name mysql-server -t -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="ZCJ24576" -e MYSQL_ROOT_PASSWORD="123456" -d mysql:5.7 
--character-set-server=utf8 --collation-server=utf8_bin 執行結果如下: 9779cb64318e mysql:5.7 "docker-entrypoint..." 44 minutes ago Up 44 minutes 3306/tcp, 33060/tcp mysql-server 安裝zabbix-java-gateway docker run --name zabbix-java-gateway -t -d zabbix/zabbix-java-gateway:latest 23d4cceb8f06 zabbix/zabbix-java-gateway:latest "docker-entrypoint.sh" 41 minutes ago Up 41 minutes 10052/tcp zabbix-java-gateway 安裝zabbix-server的容器 docker run --name zabbix-server-mysql -t -e DB_SERVER_HOST="mysql-server" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="ZCJ24576" -e MYSQL_ROOT_PASSWORD="123456"
-e ZBX_JAVAGATEWAY="zabbix-java-gateway" --link mysql-server:mysql --link zabbix-java-gateway:zabbix-java-gateway -p 10051:10051 -d zabbix/zabbix-server-mysql:latest *這裡的link後面跟的是已經正在執行的mysql容器和zabbix-java-gateway容器的NAME欄位名稱 執行結果如下: 23d4cceb8f06 zabbix/zabbix-java-gateway:latest "docker-entrypoint.sh" 41 minutes ago Up 41 minutes 10052/tcp zabbix-java-gateway 安裝zabbix的前端 docker run --name zabbix-web-nginx-mysql -t -e DB_SERVER_HOST="mysql-server" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="ZCJ24576" -e MYSQL_ROOT_PASSWORD="123456"
--link mysql-server:mysql --link zabbix-server-mysql:zabbix-server -p 80:80 -d zabbix/zabbix-web-nginx-mysql:latest 執行結果如下: a2fcd886b106 zabbix/zabbix-web-nginx-mysql:latest "docker-entrypoint.sh" 10 minutes ago Up 10 minutes 0.0.0.0:80->80/tcp, 443/tcp zabbix-web-nginx-mysql 安裝zabbix_agent docker run --name zabbix-agent -e ZBX_HOSTNAME="Zabbix server" -e ZBX_SERVER_HOST="zabbix-server-mysql" --link zabbix-server-mysql:zabbix-server -d zabbix/zabbix-agent:latest 711101115ca0 zabbix/zabbix-agent:latest "/sbin/tini -- /us..." 8 minutes ago Up 8 minutes 10050/tcp zabbix-agent