#!/bin/bash #安装zabbix+LNMP # lnmp(){ #关闭防火墙&核心安全功能 systemctl stop firewalld.service systemctl disable firewalld.service &> /dev/null setenforce 0 sed -i "7cSELINUX=disabled" /etc/sysconfig/selinux #yum安装nginx wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm #建立nginx安装源(centos能够根据不一样系统进行替换,后面的版本一样) echo "[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/\$basearch/ gpgcheck=0 enabled=1" > /etc/yum.repos.d/nginx.repo yum install nginx -y #启动nginx systemctl start nginx systemctl enable nginx #安装mysql 5.7并启动 yum install -y mariadb-server mariadb expect systemctl enable mariadb.service systemctl start mariadb.service #设定数据库初始密码 /usr/bin/expect <<EOF spawn mysqladmin -u root -p password 123123 expect { "Enter*" {send "\r"} } expect eof EOF #安装PHP 7.2 yum -y install epel-release rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm for ((i=1;i>0;i++));do rpm -q php72w-cli &> /dev/null if [ $? -ne 0 ];then yum install -y php72w php72w-devel php72w-fpm php72w-gd php72w-mbstring php72w-mysql else break fi done #修改fpm模块使其支持nginx sed -i -e "8cuser = nginx" -e "10cgroup = nginx" /etc/php-fpm.d/www.conf #更改nginx配置文件使其能识别php动态文件 sed -i "10s/index.html/index.html index.php/" /etc/nginx/conf.d/default.conf sed -i -e "30,36s/#//" -e "31s/html/\/usr\/share\/nginx\/html/" -e "34s/\/scripts/\$document_root/" /etc/nginx/conf.d/default.conf #配置PHP sed -i -e "359s/On/Off/" -e "202s/Off/On/" /etc/php.ini #重启服务 systemctl start php-fpm systemctl enable php-fpm systemctl restart nginx } #检测LNMP架构是否已经安装完毕 systemctl restart nginx &> /dev/null service mysqld restart &> /dev/null systemctl restart mariadb &> /dev/null netstat -atnp | egrep '(nginx|3306)' &> /dev/null if [ $? -ne 0 ];then lnmp fi #配置PHP以适应zabbix sed -i -e "368s/30/300/" -e "378s/60/300/" -e "656s/8/16/" -e "799aalways_populate_raw_post_data = -1" -e "877cdate.timezone = Asia/Shanghai" /etc/php.ini systemctl restart php-fpm #创建zabbix数据库和管理用户 mysql -uroot -p123123 -e "CREATE DATABASE zabbix character set utf8 collate utf8_bin;" mysql -uroot -p123123 -e "GRANT all privileges ON *.* TO 'zabbix'@'%' IDENTIFIED BY '123123';" mysql -uroot -p123123 -e "flush privileges;" #解决本地没法登陆问题 mysql -uroot -p123123 -e "drop user ''@localhost;" mysql -uroot -p123123 -e "drop user ''@localhost.localdomain;" mysql -uroot -p123123 -e "flush privileges" #安装zabbix rpm -i https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm for ((k=1;k>0;k++));do rpm -q zabbix-agent &> /dev/null if [ $? -ne 0 ];then yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y else break fi done #生成数据库文件 zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p123123 zabbix #修改zabbix服务端配置文件 sed -i -e "91s/# //" -e "125cDBPassword=123123" /etc/zabbix/zabbix_server.conf #工做目录提权 cp -r /usr/share/zabbix/ /usr/share/nginx/html/ chown -R zabbix:zabbix /etc/zabbix/ chown -R zabbix:zabbix /usr/share/nginx/ chown -R zabbix:zabbix /usr/lib/zabbix/ chmod -R 755 /etc/zabbix/web/ chmod -R 777 /var/lib/php/session/ #启动zabbix systemctl start zabbix-server.service systemctl enable zabbix-server.service systemctl start zabbix-agent.service systemctl enable zabbix-agent.service #全部服务重启 systemctl restart php-fpm nginx mariadb zabbix-server zabbix-agent #检查服务是否均启动 test=`netstat -atnp | egrep '(nginx|3306|10051|10050)' | grep -v "TIME_WAIT" | wc -l` if [ $test -ge 5 ];then echo "zabbix服务端设置完成" fi dizhi=`ifconfig ens33 | awk 'NR==2{print $2}'` echo "请使用浏览器登录${dizhi}/zabbix/进行安装 默认登录用户名为:Admin 默认登录密码为:zabbix"
代理端就是被控服务器,若是服务器也须要被本身监控也须要安装abbix-agent
#关闭防火墙并设定开机自关 systemctl stop firewalld.service systemctl disable firewalld.service #安装yum源 rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm #安装zabbix-agent yum install -y zabbix-agent #修改配置文件 grep -n '^'[a-Z] /etc/zabbix/zabbix_agentd.conf 13:PidFile=/var/run/zabbix/zabbix_agentd.pid 32:LogFile=/var/log/zabbix/zabbix_agentd.log 43:LogFileSize=0 98:Server=127.0.0.1 139:ServerActive=127.0.0.1 150:Hostname=Zabbix server 268:Include=/etc/zabbix/zabbix_agentd.d/*.conf vim /etc/zabbix/zabbix_agentd.conf Server=192.168.142.123 #98行,指向监控服务器IP ServerActive=192.168.142.123 #139行,指向监控服务器IP Hostname=czt #150行,可自行定义主机名 #启动服务 systemctl enable zabbix-agent.service systemctl start zabbix-agent.service #查看服务监听端口 netstat -anpt | grep zabbix
访问http://192.168.142.123/zabbix/配置-主机-建立主机:php
配置下的主机选项,点击建立主机html
在主机配置界面填入相应内容,而后点击模板mysql
在模板中选择HTTP和SSH的模板连接,点击提示器中的添加,而后再点击添加linux