设为首页 收藏本站
查看: 1495|回复: 0

[经验分享] 一键自动化安装zabbix服务

[复制链接]

尚未签到

发表于 2019-1-22 10:15:32 | 显示全部楼层 |阅读模式
  目的
  一键自动化安装zabbix服务。
  环境
  OS:CentOS 6.2
  zabbix版本:2.2.4
  配置
#!/bin/bash
# 脚本名称:一键自动化安装zabbix服务
# 注意事项:
# 1.该脚本仅在CentOS最小化安装环境中测试成功,不一定适用于其他环境。
# 2.如需修改mysql数据库的root和zabbix用户的密码,请注意修改下面这两个变量!
mysql_user_root_password="redhat"
mysql_user_zabbix_password="zabbix"
echo -n "正在关闭SELinux……"
setenforce 0 > /dev/null 2>&1
sed -i '/^SELINUX=/s/=.*/=disabled/' /etc/selinux/config && echo "OK"
echo -n "正在配置iptables防火墙……"
iptables -F
iptables -X
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -P INPUT DROP
iptables -P FORWARD DROP
service iptables save > /dev/null 2>&1 && echo "OK"
echo -n "正在安装zabbix的相关软件……"
yum -y install make gcc httpd mysql-server mysql-devel net-snmp-devel libcurl-devel php php-mysql php-bcmath php-mbstring php-gd php-xml wget > /dev/null 2>&1 && echo "OK"
echo -n "正在添加zabbix用户……"
useradd -M -s /sbin/nologin zabbix && echo "OK"
echo -n "正在启动mysqld服务……"
service mysqld start > /dev/null 2>&1 && echo "OK"
echo -n "正在为mysql的root用户设置密码……"
mysqladmin -uroot password $mysql_user_root_password && echo "OK"
echo "正在执行mysql语句……"
mysql -uroot -p$mysql_user_root_password -e "create database zabbix character set utf8" && echo "已执行1/2"
mysql -uroot -p$mysql_user_root_password -e "grant all privileges on zabbix.* to zabbix@localhost identified by '$mysql_user_zabbix_password'" && echo "已执行2/2"
echo -n "正在下载zabbix源码包……"
wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.4/zabbix-2.2.4.tar.gz > /dev/null 2>&1 && echo "OK"
echo -n "正在解压……"
tar zxf zabbix-2.2.4.tar.gz > /dev/null 2>&1 && echo "OK"
echo -n "正在安装……"
cd zabbix-2.2.4 &&
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl > /dev/null 2>&1 &&
make install > /dev/null 2>&1 && echo "OK"
echo "正在导入数据库……"
mysql -uzabbix -p$mysql_user_zabbix_password zabbix < $PWD/database/mysql/schema.sql && echo &quot;已完成1/3&quot;
mysql -uzabbix -p$mysql_user_zabbix_password zabbix < $PWD/database/mysql/images.sql && echo &quot;已完成2/3&quot;
mysql -uzabbix -p$mysql_user_zabbix_password zabbix < $PWD/database/mysql/data.sql && echo &quot;已完成3/3&quot;
echo -n &quot;正在复制zabbix_server和zabbix_agentd服务到/etc/init.d/目录……&quot;
cp $PWD/misc/init.d/fedora/core/zabbix_* /etc/init.d/ && echo &quot;OK&quot;
echo -n &quot;正在复制php网页数据到/var/www/html/zabbix目录……&quot;
cp -R $PWD/frontends/php/ /var/www/html/zabbix && echo &quot;OK&quot;
echo -n &quot;正在修改/usr/local/zabbix/etc/zabbix_server.conf文件……&quot;
sed -i '/^DBUser=/s/=.*/=zabbix/;/DBPassword=/s/$/\n\nDBPassword=zabbix/' /usr/local/zabbix/etc/zabbix_server.conf && echo &quot;OK&quot;
echo -n &quot;正在修改/etc/init.d/zabbix_server和/etc/init.d/zabbix_agentd文件……&quot;
sed -i '/BASEDIR=/s/$/\/zabbix/' /etc/init.d/zabbix_* && echo &quot;OK&quot;
echo -n &quot;正在修改/etc/httpd/conf/httpd.conf文件……&quot;
sed -i '/^DirectoryIndex/s/$/ index.php/' /etc/httpd/conf/httpd.conf && echo &quot;OK&quot;
echo -n &quot;正在修改/etc/php.ini文件……&quot;
sed -i '/^post_max_size/s/= .*/= 16M/;/^max_execution_time/s/= .*/= 300/;/^max_input_time/s/= .*/= 300/;/^;date.timezone/{s/;//;s/$/ Asia\/Shanghai/}' /etc/php.ini && echo &quot;OK&quot;
echo -n &quot;正在修改/var/www/html/zabbix/conf/zabbix.conf.php文件……&quot;
cp /var/www/html/zabbix/conf/zabbix.conf.php.example /var/www/html/zabbix/conf/zabbix.conf.php
sed -i 's/zabbix_password/'$mysql_user_zabbix_password'/' /var/www/html/zabbix/conf/zabbix.conf.php
echo &quot;OK&quot;
echo &quot;正在添加服务到自动启动……&quot;
chkconfig --add mysqld && chkconfig mysqld on && echo &quot;mysqld服务已添加到自动启动&quot;
chkconfig httpd on && echo &quot;httpd服务已添加到自动启动&quot;
chkconfig --add zabbix_server && chkconfig zabbix_server on && echo &quot;zabbix_server服务已添加到自动启动&quot;
chkconfig --add zabbix_agentd && chkconfig zabbix_agentd on && echo &quot;zabbix_agentd服务已添加到自动启动&quot;
echo &quot;正在启动服务……&quot;
service httpd start > /dev/null 2>&1 && echo &quot;httpd服务已启动&quot;
service zabbix_server start > /dev/null 2>&1 && echo &quot;zabbix_server服务已启动&quot;
service zabbix_agentd start > /dev/null 2>&1 && echo &quot;zabbix_agentd服务已启动&quot;



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-666260-1-1.html 上篇帖子: 解决zabbix设置脚本发送邮件报警中文乱码问题 下篇帖子: ubuntu16.04下安装部署zabbix3.0
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表