部署zabbix监控服务器 |
您所在的位置:网站首页 › zabbix监控服务器的进程 › 部署zabbix监控服务器 |
一、zabbix运行架构Zabbix是一个企业级的分布式开源监控解决方案。它能够监控各种服务器的健康性、网络的稳定性以及各种应用系统的可靠性。当监控出现异常时,Zabbix通过灵活的告警策略,可以为任何事件配置基于邮件、短信、微信等告警机制。而这所有的一切,都可以通过Zabbix提供的web界面进行配置和操作,基于web的前端页面还提供了出色的报告和数据可视化功能。这些功能和特性使我们运维人员可以非常轻松的搭建一套功能强大的运维监控管理平台。 Zabbix的运行架构如下: 三、部署Zabbix监控平台Zabbix的监控平台部署比较简单,前提是准备好LNMP或LAMP环境我这里将从部署LNMP环境开始配置。注:我这里将所有服务部署在同一台服务器上,仅仅是一个简单的监控架构,并没有部署 zabbix proxy等。Zabbix官方的相关链接:Zabbix 4.2 配置文档:https://www.zabbix.com/documentation/4.2/manual/it_services所需软件包:https://pan.baidu.com/s/1UzzoFUuR84U2ccDf1qW2UQ提取码:grhh1、部署Nginx [root@zabbix /]# mkdir /zabbix # 个人习惯,可忽略 [root@zabbix /]# cd zabbix/ [root@zabbix zabbix]# rz # shangchaun上传所需源码包 [root@zabbix zabbix]# tar zxf Nginx-1.14.0.tar.gz [root@zabbix zabbix]# tar zxf pcre-8.39.tar.gz -C /usr/src/ [root@zabbix zabbix]# tar zxf zlib-1.2.8.tar.gz -C /usr/src/ [root@zabbix zabbix]# cd Nginx-1.14.0/ [root@zabbix Nginx-1.14.0]# yum -y install pcre-devel openssl-devel zlib-devel [root@zabbix zabbix]# cd Nginx-1.14.0/ [root@zabbix Nginx-1.14.0]# useradd -s /sbin/nologin -M www [root@zabbix Nginx-1.14.0]# ./configure --prefix=/usr/local/Nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-pcre=/usr/src/pcre-8.39 --with-zlib=/usr/src/zlib-1.2.8 --with-http_ssl_module --with-http_gzip_static_module --user=www --group=www && make && make install [root@zabbix /]# ln -s /usr/local/Nginx/sbin/Nginx /usr/local/sbin/ [root@zabbix /]# vim /usr/local/Nginx/conf/Nginx.conf server { Listen 80; location / { root HTML; index index.PHP index.HTML index.htm; #添加index.PHP } #注意删除下面段落的注释符号 location ~ \.PHP$ { root HTML; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.PHP; fastcgi_param SCRIPT_filename /scripts$fastcgi_script_name; include fastcgi.conf; #修改此行 } [root@zabbix /]# netstat -anput |grep 80 tcp 0 0 0.0.0.0:80 0.0.0.0:* ListEN 46551/Nginx: master [root@zabbix /]# cat > /usr/local/Nginx/HTML/index.PHP > EOF2、部署PHP [root@zabbix /]# yum -y install libxml2-devel openssl-devel bzip2-devel libcurl-devel libjpeg-devel libpng-devel freetype-devel # 安装依赖包 [root@zabbix /]# cd /zabbix/ [root@zabbix zabbix]# tar zxf libmcrypt-2.5.7.tar.gz [root@zabbix zabbix]# cd libmcrypt-2.5.7/ [root@zabbix libmcrypt-2.5.7]# ./configure --prefix=/usr/local/libmcrypt && make && make install # 编译并安装 [root@zabbix libmcrypt-2.5.7]# cd .. [root@zabbix zabbix]# tar zxf PHP-5.6.27.tar.gz [root@zabbix PHP-5.6.27]# ./configure --prefix=/usr/local/PHP5.6 --with-config-file-path=/etc --with-MysqL=MysqLnd --with-MysqLi=MysqLnd --with-gd --with-iconv --with-libxml-dir=/usr --with-mhash --with-mcrypt=/usr/local/libmcrypt --with-config-file-scan-dir=/etc/PHP.d --with-bz2 --with-zlib --with-freetype-dir --with-png-dir --with-jpeg-dir --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-curl && make && make install [root@zabbix PHP-5.6.27]# cp PHP.ini-production /etc/PHP.ini [root@zabbix PHP-5.6.27]# cp sAPI/fpm/init.d.PHP-fpm /etc/init.d/PHP-fpm [root@zabbix PHP-5.6.27]# chmod +x /etc/init.d/PHP-fpm [root@zabbix PHP-5.6.27]# chkconfig --add PHP-fpm [root@zabbix PHP-5.6.27]# chkconfig PHP-fpm on [root@zabbix PHP-5.6.27]# cp /usr/local/PHP5.6/etc/PHP-fpm.conf.default /usr/local/PHP5.6/etc/PHP-fpm.conf [root@zabbix PHP-5.6.27]# cd / [root@zabbix /]# sed -i 's/pm.max_children = 5/pm.max_children = 50/g' /usr/local/PHP5.6/etc/PHP-fpm.conf [root@zabbix /]# sed -i 's/pm.start_servers = 2/pm.start_servers = 5/g' /usr/local/PHP5.6/etc/PHP-fpm.conf [root@zabbix /]# sed -i 's/pm.min_spare_servers = 1/pm.min_spare_servers = 5/g' /usr/local/PHP5.6/etc/PHP-fpm.conf [root@zabbix /]# sed -i 's/pm.max_spare_servers = 3/pm.max_spare_servers = 35/g' /usr/local/PHP5.6/etc/PHP-fpm.conf [root@zabbix /]# service PHP-fpm start # 启动PHP Starting PHP-fpm done [root@zabbix /]# netstat -anput | grep 9000 tcp 0 0 127.0.0.1:9000 0.0.0.0:* ListEN 60347/PHP-fpm: mast客户端访问定义的PHP页面: 4、部署zabbix服务 [root@zabbix zabbix]# tar zxf fPing-3.12.tar.gz [root@zabbix zabbix]# tar zxf zabbix-3.2.1.tar.gz [root@zabbix zabbix]# cd fPing-3.12/ [root@zabbix fPing-3.12]# ./configure && make && make install [root@zabbix fPing-3.12]# cd ../zabbix-3.2.1/ [root@zabbix zabbix-3.2.1]# useradd -M -s /sbin/nologin zabbix [root@zabbix zabbix-3.2.1]# chown zabbix:zabbix /usr/local/sbin/fPing [root@zabbix zabbix-3.2.1]# yum -y install net-snmp net-snmp-devel curl-devel java-1.8.0-openjdk java-1.8.0-openjdk-devel OpenIPMI-devel libssh2-devel [root@zabbix zabbix-3.2.1]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-java --with-MysqL=/usr/local/MysqL/bin/MysqL_config --with-net-snmp --with-libcurl --with-openipmi && make && make install #--enable-java:方便后续监控 tomcat 程序所用 #--with-openipmi:用户可以利用 IPMI 监视服务器的物理特征,如温度、电压、风扇工作状态、电源供应等 [root@zabbix zabbix-3.2.1]# ln -s /usr/local/zabbix/bin/* /usr/local/bin/ [root@zabbix zabbix-3.2.1]# ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/ #导入zabbix数据到MysqL,注意导入的顺序,如果导入后返回提示信息,可忽略,是因为导入的命令将密码展示在了终端 [root@zabbix zabbix-3.2.1]# pwd /zabbix/zabbix-3.2.1 [root@zabbix zabbix-3.2.1]# cd database/MysqL/ [root@zabbix MysqL]# MysqL -u zabbix -p123.com -h localhost zabbix < schema.sql MysqL: [Warning] Using a password on the command line interface can be insecure. [root@zabbix MysqL]# MysqL -u zabbix -p123.com -h localhost zabbix < images.sql MysqL: [Warning] Using a password on the command line interface can be insecure. [root@zabbix MysqL]# MysqL -u zabbix -p123.com -h localhost zabbix < data.sql MysqL: [Warning] Using a password on the command line interface can be insecure. [root@zabbix MysqL]# chown -R zabbix:zabbix /usr/local/zabbix/5、优化zabbix并启动 #修改zabbix配置文件 [root@zabbix /]# sed -i 's/# ListenPort=10051/ListenPort=10051/g' /usr/local/zabbix/etc/zabbix_server.conf [root@zabbix /]# sed -i 's/Logfile=\/tmp\/zabbix_server.log/Logfile=\/usr\/local\/zabbix\/logs\/zabbix_server.log/g' /usr/local/zabbix/etc/zabbix_server.conf [root@zabbix /]# sed -i 's/# PIDfile=\/tmp\/zabbix_server.pID/PIDfile=\/usr\/local\/zabbix\/logs\/zabbix_server.pID/g' /usr/local/zabbix/etc/zabbix_server.conf [root@zabbix /]# sed -i 's/# DBHost=localhost/DBHost=localhost/g' /usr/local/zabbix/etc/zabbix_server.conf [root@zabbix /]# sed -i 's/# DBPassword=/DBPassword=123.com/g' /usr/local/zabbix/etc/zabbix_server.conf [root@zabbix /]# sed -i 's/# DBSocket=\/tmp\/MysqL.sock/DBSocket=\/usr\/local\/MysqL\/MysqL.sock/g' /usr/local/zabbix/etc/zabbix_server.conf [root@zabbix /]# sed -i 's/# DBPort=3306/DBPort=3306/g' /usr/local/zabbix/etc/zabbix_server.conf [root@zabbix /]# sed -i 's/# FPingLocation=\/usr\/sbin\/fPing/FPingLocation=\/usr\/local\/sbin\/fPing/g' /usr/local/zabbix/etc/zabbix_server.conf [root@zabbix /]# sed -i 's/# LogSlowQuerIEs=0/LogSlowQuerIEs=3000/g' /usr/local/zabbix/etc/zabbix_server.conf #如果数据库名称和数据库用户没有和我创建的一样,那么还需要更改以下两项 #DBname=zabbix #数据库名称 #DBUser=zabbix #登录数据库的用户名 [root@zabbix /]# echo "/usr/local/MysqL/lib" >> /etc/ld.so.conf [root@zabbix /]# ldconfig # 刷新上面更改的配置 [root@zabbix /]# mkdir /usr/local/zabbix/logs [root@zabbix /]# chown -R zabbix:zabbix /usr/local/zabbix/ [root@zabbix /]# cd /zabbix/zabbix-3.2.1/misc/init.d/fedora/core [root@zabbix core]# cp zabbix_agentd /etc/init.d/ [root@zabbix core]# cp zabbix_server /etc/init.d/ [root@zabbix core]# sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/usr\/local\/zabbix/g' /etc/init.d/zabbix_server [root@zabbix core]# sed -i 's/PIDfile=\/tmp\/$BINARY_name.pID/PIDfile=\/usr\/local\/zabbix\/logs\/$BINARY_name.pID/g' /etc/init.d/zabbix_server [root@zabbix core]# /etc/init.d/zabbix_server start #启动zabbix,也可以执行“zabbix-server”来启动 Reloading systemd: [ OK ] Starting zabbix_server (via systemctl): [ OK ] [root@zabbix core]# netstat -anput | grep 10051 tcp 0 0 0.0.0.0:10051 0.0.0.0:* ListEN 74199/zabbix_server [root@zabbix core]# cd /zabbix/zabbix-3.2.1/frontends/ [root@zabbix frontends]# cp -r PHP/ /usr/local/Nginx/HTML/zabbix6、clIEnt访问Nginx代理以便配置zabbix访问Nignx服务器的IP/zabbix即可,它会自动跳转到下面的页面: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |