为了方便把安装Zabbix的过程整理成自动化一键部署脚本,有兴趣可以参考,都是些基本的命令:

#!/bin/bash

#Zabbix 一键部署脚本

#安装zabbix3.0.4,依赖php-5.6.25

src_home=`pwd`

echo -n "正在配置iptables防火墙……"

/etc/init.d/iptables save >> /dev/null

chkconfig  iptables off

if [ $? -eq 0 ];then

echo -n "Iptables防火墙初始化完毕!"

fi

echo -n "正在关闭SELinux……"

setenforce 0 > /dev/null 2>&1

sed -i '/^SELINUX=/s/=.*/=disabled/' /etc/selinux/config

if [ $? -eq 0 ];then

echo -n "SELinux初始化完毕!"

fi

echo -n "正在安装nginx yum 源……"

yum -y install wget

wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm

if [ $? -eq 0 ];then

echo -n "Nginx yum 源 初始化完毕!"

fi

echo -n "正在安装epel-release yum 源……"

rpm -Uvh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm

rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

if [ $? -eq 0 ];then

echo -n "epel-release yum 源 初始化完毕!"

fi

echo -n "正在安装php-5.6.25的编译所需相关软件……"

yum -y install make gcc nginx  libmcrypt php-mcrypt mysql-server mysql-devel net-snmp-devel libcurl-devel php php-mysql php-bcmath php-mbstring php-gd php-xml bzip2-devel libmcrypt-devel libxml2-devel gd gd-devel libcurl*

if [ $? -eq 0 ];then

echo -n "php-5.6.25依赖初始化完毕!"

fi

echo -n "正在添加zabbix用户……"

useradd -M -s /sbin/nologin zabbix && echo "OK"

echo -n "正在启动mysqld服务……"

service mysqld start

if [ $? -eq 0 ];then

echo -n "Mysql启动完毕!"

fi

#echo -n "正在为mysql的root用户设置密码……"

#mysql_user_root_password="password"

#mysql_user_zabbix_password="zabbix"

#mysqladmin -uroot -p password $mysql_user_root_password

echo "正在执行mysql语句,创建zabbix数据库,授权zabbix访问数据库"

mysql -e "create database zabbix character set utf8;grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';grant all privileges on zabbix.* to zabbix@'127.0.0.1' identified by 'zabbix';grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';flush privileges;"

#echo "正在执行mysql语句,创建zabbix数据库,授权zabbix访问数据库"

#mysql -uroot -p"$mysql_user_root_password" -e "create database zabbix character set utf8" && echo "创建zabbix数据库完成"

#mysql -uroot -p"$mysql_user_root_password" -e "grant all privileges on zabbix.* to zabbix@localhost identified by '$mysql_user_zabbix_password'" && echo "授权zabbix本地登录数据库"

#mysql -uroot -p"$mysql_user_root_password" -e "grant all privileges on zabbix.* to zabbix@'%' identified by '$mysql_user_zabbix_password'" && echo "授权任何主机本地登录数据库"

#zabbix一键部署第三方软件包的解压目录

echo -n "编译安装php-5.6.25....可能需要几分钟"

tar zxf ${src_home}/php-5.6.25.tar.gz

cd ${src_home}/php-5.6.25 && ./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fpm   --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf  --enable-mbstring --enable-exif  --with-pear --with-curl --enable-bcmath --with-gettext --with-mysqli --enable-sockets

cd ${src_home}/php-5.6.25 && make -j 4 && make install

cd

echo -n "正在配置启动php-fpm....请稍等"

/bin/cp ${src_home}/php-5.6.25/php.ini-production /etc/php.ini

cp ${src_home}/php-5.6.25/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

chmod 777 /etc/init.d/php-fpm

cd /usr/local/php/etc/ && cp php-fpm.conf.default php-fpm.conf

cd

service php-fpm start

if [ $? -eq 0 ];then

echo -n "php-fpm启动完毕!"

fi

#zabbix编译安装

echo -n "正在导入zabbix数据到mysql数据库中...."

tar zxf ${src_home}/zabbix-3.0.4.tar.gz

mysql -uzabbix -pzabbix zabbix

mysql -uzabbix -pzabbix zabbix

mysql -uzabbix -pzabbix zabbix

if [ $? -eq 0 ];then

echo -n "zabbix数据导入启动完毕!"

fi

echo -n "正在安装zabbix编译依赖软件包....可能需要几分钟"

yum -y install net-snmp-devel curl-devel javacc java-1.8*

echo -n "编译安装Zabbix-server....可能需要几分钟"

cd ${src_home}/zabbix-3.0.4 && ./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent  --with-net-snmp --with-libcurl --enable-java --with-mysql

make -j 4 && make install

echo -n "正在制作Zabbix-server启动脚本...."

echo -e "zabbix-agent 10050/tcp #ZabbixAgent\nzabbix-agent 10050/udp #Zabbix Agent\nzabbix-trapper 10051/tcp #ZabbixTrapper\nzabbix-trapper 10051/udp #Zabbix Trapper" >> /etc/services

cp ${src_home}/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_server /etc/init.d/

cp ${src_home}/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/

cd

chmod 777 /etc/init.d/zabbix_*

sed -i '/BASEDIR=/s/$/\/zabbix/' /etc/init.d/zabbix_server

sed -i '/BASEDIR=/s/$/\/zabbix/' /etc/init.d/zabbix_agentd

echo -n "正在配置zabbix配置文件...."

cd /usr/local/zabbix/etc

sed '/# DBHost=localhost/a\DBHost=localhost' zabbix_server.conf -i

sed '/# DBPassword=/a\DBPassword=zabbix' zabbix_server.conf -i

sed '/# EnableRemoteCommands=0/a\EnableRemoteCommands=1' zabbix_agentd.conf -i

sed '/# ListenPort=10050/a\ListenPort=10050' zabbix_agentd.conf -i

sed '/# User=zabbix/a\User=zabbix' zabbix_agentd.conf -i

sed '/# AllowRoot=0/a\AllowRoot=1' zabbix_agentd.conf -i

sed '/# UnsafeUserParameters=0/a\UnsafeUserParameters=1' zabbix_agentd.conf -i

if [ $? -eq 0 ];then

echo -n "zabbix配置完毕!"

fi

echo -n "正在启动zabbix_server and zabbix_agent...."

service zabbix_server start

service zabbix_agentd start

chkconfig zabbix_server on

chkconfig zabbix_agentd on

cd

echo -n "正在配置nginx反代zabbix...."

cp -r ${src_home}/zabbix-3.0.4/frontends/php /usr/share/nginx/html/zabbix

cd /etc/nginx/conf.d/ && mv default.conf default.conf.bak

cp ${src_home}/zabbix.conf /etc/nginx/conf.d/

echo -n "配置完成,正在启动nginx web server...."

service nginx start

if [ $? -eq 0 ];then

echo -n "Nginx启动完毕!"

fi

echo -n "正在进行最后的zabbix Install ,php参数修改....."

sed '/^post_max_size =/s/=.*/= 16M/' /etc/php.ini -i

sed '/^max_execution_time =/s/=.*/= 300/' /etc/php.ini -i

sed '/^max_input_time =/s/=.*/= 300/' /etc/php.ini -i

sed -i '/^;date.timezone/a\date.timezone =  Asia/Shanghai' /etc/php.ini

sed -i '/^;always_populate_raw_post_data.*/a\always_populate_raw_post_data = -1' /etc/php.ini

sed -i '/^mysqli.default_socket =/s/=.*/= \/var\/lib\/mysql\/mysql.sock/' /etc/php.ini

echo -n "正在重新启动php服务....."

/etc/init.d/php-fpm restart

echo -n "正在初始化zabbix Server...."

cp ${src_home}/zabbix.conf.php /usr/share/nginx/html/zabbix/conf/

echo -n "正在做最后的Zabbix Server重启....."

/etc/init.d/zabbix_server restart

if [ $? -eq 0 ];then

echo -n "Zabbix Server 启动完毕!"

fi

echo -n "正在解决zabbix server 乱码问题,请你耐心等待....."

cd /usr/share/nginx/html/zabbix/fonts && mv DejaVuSans.ttf DejaVuSans.ttf.bak

cp ${src_home}/msyh.ttf .

cd ../include/ && sed -i 's/DejaVuSans/msyh/g' defines.inc.php

cd

echo -n "恭喜你,Zabbix 部署到此完成,如有问题,请参照脚本单独解决!!!"

echo -e -n "后续的操作:1、通过http://ip/zabbix 访问你的zabbix Web页面,下一步....一直到底。2、你可能需要配置Nginx域名,通过域名访问Zabbix Server.... 3、你需要自己自定义或者使用系统自带模板,添加主机等等...."

一键部署tar包我已经打包好了,请到附件下载:

zabbix mysql trapper_分分钟一键部署Zabbix Server相关推荐

  1. 分分钟一键部署Zabbix Server

    为了方便把安装Zabbix的过程整理成自动化一键部署脚本,有兴趣可以参考,都是些基本的命令: #!/bin/bash #Zabbix 一键部署脚本 #安装zabbix3.0.4,依赖php-5.6.2 ...

  2. zabbix 时间错误_一键部署Zabbix+Grafana+Icinga+SmokePing监控系统

    管理学上有一句名言,If You Can't Measure It, You Can't Manage It.对于监控的重要性我就不细说了,原先我们使用Nagios.Catti.SmokePing.I ...

  3. zabbix mysql 平台_监控平台-zabbix

    系统:ubuntu18.04  环境:LNMP(nginx1.14,mysql5.7,php7.0) root@zabbix:/var/run/php# history apt-get install ...

  4. zabbix-2.4.8使用yum一键部署zabbix

    zabbix 项目(Items):监控指标 触发器(Triggers):阈值 模板(Templates):监控指标及阈值的集合 事件(Events) 动作(Actions) yum -y instal ...

  5. 一键部署Zabbix客户端

    #!/bin/bash #auto install zabbix_agentd #2017年11月15日13:43:19 #by xiaofan #################### ZABBIX ...

  6. ansible一键部署zabbix并配置自动发现

    环境centos7 IP 192.168.81.132 首先安装epel源和ansible配置主机清单 配置免密登录 测试能否ping通 安装zabbix-server端和上传Aliyun的yum源和 ...

  7. centos mysql php tomcat_centos 一键部署安装nginx,mysql,php,apache,tomcat,redis等包合集

    1.1/oneinstack.com yum -y install wget screen curl python #for CentOS/Redhat # apt-get -y install wg ...

  8. docker部署zabbix

    docker部署zabbix 1.zabbix入门: Zabbix 是一款能够监控各种网络参数以及服务器健康性和完整性的软件. Zabbix 使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告 ...

  9. 请求zabbix_快速部署zabbix

    使用1台Linux虚拟机,安装部署LNMP环境.Zabbix及相关的依赖包,配置数据库并对Zabbix监控平台进行初始化操作.使用2台Linux被监控端,源码安装Zabbix Agent.完成Zabb ...

最新文章

  1. javascript 方法实例
  2. 边缘计算 — 与车联网
  3. linux如何查tomcat是否安装,如何检测linux机器上是否安装了tomcat和ant
  4. Windows Thin PC中文化
  5. 不同测试阶段,不同测试类型的区别于联系
  6. python 速度 memmap_从20秒到0.5秒:一个使用Rust语言来优化Python性能的案例
  7. Python-DDoS攻击
  8. poj 2387 Til the Cows Come Home dijkstra
  9. JQuery 各节点获取函数:父节点,子节点,兄弟节点
  10. html区分大小写字母吗,javascript变量区分大小写吗?
  11. 缓存系列文章--3.缓存常用更新策略对比(一致性)。
  12. 层次聚类算法_机器学习理论(十四)聚类
  13. DNA拷贝数变异CNV检测——基础概念篇
  14. 全球与中国组合锁市场深度研究分析报告
  15. spark-streaming 编程(一)构建开发环境
  16. 区域增长法和连通区域标记法【小记】
  17. 华为交换机SNMPv2配置步骤
  18. 13.CUDA编程手册中文版---附录I C++ 语言支持
  19. android手机怎么上卡,安卓手机卡慢怎么办 安卓手机卡慢解决方案【详解】
  20. paypal html5 支付,uniapp 对接 paypal支付 (h5,app端)

热门文章

  1. Java 中的PO VO DTO BO
  2. 大数据系列(hadoop) 集群环境搭建二
  3. 【转】在 2016 年做 PHP 开发是一种什么样的体验?(一)
  4. javac -version ;java -version不一致
  5. linux下mysql启动和关闭
  6. C++程序的构成和书写形式
  7. 12.04 安装svn
  8. 1438. 绝对差不超过限制的最长连续子数组
  9. openresty组成和技术特点
  10. 计算机三级设计与应用题,计算机数据库三级设计与应用题.pdf