前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >zabbix-server 自动安装脚本

zabbix-server 自动安装脚本

作者头像
shaonbean
发布2019-05-27 07:26:47
7800
发布2019-05-27 07:26:47
举报
文章被收录于专栏:运维前线

版权声明:本文为木偶人shaon原创文章,转载请注明原文地址,非常感谢。 https://cloud.tencent.com/developer/article/1436366

#!/bin/bash

###############################################

Author: www.vdevops.com

Changelog: 2016-10-4 shaonbean initial commit

#set -xv #调试脚本

##############################################

server="zabbix_server ip"

version="zabbix-version"

package=/usr/local/src

zblog=/var/log/zabbix

zbpid=/opt/zabbix/pid

##create user if not exists

egrep "^$user" /etc/passwd >& /dev/null

if $? -eq 0 ;then

代码语言:txt
复制
  echo "user exists"

else

代码语言:txt
复制
  useradd $user
代码语言:txt
复制
  echo $user | passwd --stdin $user

fi

#install gcc

yum -y install gcc gcc-c++ openssh-clients net-snmp*

if $? -eq 0 ;then

代码语言:txt
复制
 echo "yum install successed"

else

代码语言:txt
复制
 echo "yum install failed"
代码语言:txt
复制
 exit 2

fi

#create zabbix group if not exists

egrep "^zabbix" /etc/group >& /dev/null

if $? -ne 0

then

代码语言:txt
复制
 groupadd zabbix  

fi

#create user if not exists

egrep "^zabbix" /etc/passwd >& /dev/null

if $? -ne 0

then

代码语言:txt
复制
 useradd -g zabbix zabbix -s /bin/nologin  

fi

#wget zabbix.tar.gz

#scp -P 22 root@192.168.1.154:$package/$version.tar.gz $package

wget -P ${package} http://sourceforge.net/projects/zabbix/files/ZABBIX Latest Stable/3.0.4/zabbix-3.0.4.tar.gz

if -e "$package/$version.tar.gz" ; then

代码语言:txt
复制
echo "wget is successed"

else

代码语言:txt
复制
echo "wget is failed"
代码语言:txt
复制
exit 2

fi

#compile zabbix

cd $package

tar -zxvf $version.tar.gz

cd $version

./configure --prefix=/opt/zabbix --enable-server --enable-agent --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-mysql=/usr/local/mysql/bin/mysql_config # #

#find / -name mysql_config

make && make install

if $? -eq 0 ;

then

echo "Installation completed !"

else

echo "Installation failed"

exit 2

fi

#############################################################

cat >> ~/.my.cnf << EOF

client

password="deploy"

user=deploy

EOF

#password = "MySQL密码"

#user = MySQL 用户名

#其中user 行可以省略, 默认使用当前的用户名填充mysql的登录用户

##########################################################

##create database zabbix

cd database/mysql

mysql -e "create database zabbix character set utf8 collate utf8_bin;"

mysql -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"

mysql -e "flush privileges;"

mysql -uzabbix -pzabbix zabbix< schema.sql

stop here if you are creating database for Zabbix proxy

mysql -uzabbix -pzabbix zabbix < images.sql

mysql -uzabbix -pzabbix zabbix < data.sql

#define log path

mkdir -p $zblog

mkdir -p $zbpid

chown zabbix:zabbix $zblog

chown zabbix:zabbix $zbpid

#cp $uncompression/zabbix-2.2.2/misc/init.d/fedore/core/zabbix_agentd /etc/rc.d/init.d/

cp -r $uncom/zabbix-3.0.0/misc/init.d/fedora/core/zabbix_* /etc/rc.d/init.d/

chmod 744 /etc/init.d/zabbix_*

sed -i "s#BASEDIR=/usr/local#BASEDIR=/opt/zabbix#g" /etc/init.d/zabbix_*

copy zabbix web code

cp -rf frontends/php /home/wwwroot/default/zabbix

chown -R zabbix:zabbix /home/wwwroot/default/zabbix

#softlink

ln -s /opt/zabbix/bin/zabbix_get /usr/bin/

ln -s /opt/zabbix/bin/zabbix_sender /usr/bin/

ln -s /opt/zabbix/sbin/zabbix_agent /usr/sbin/

ln -s /opt/zabbix/sbin/zabbix_agentd /usr/sbin/

#service port add

cat >>/etc/services <<EOF

zabbix-agent 10050/tcp #Zabbix Agent

zabbix-agent 10050/udp #Zabbix Agent

zabbix-trapper 10051/tcp #Zabbix Trapper

zabbix-trapper 10051/udp #Zabbix Trapper

EOF

#edit zabbix_server.conf file

sed -i "s/#\ DBPassword=/DBPassword=zabbix/g" /opt/zabbix/etc/zabbix_server.conf

sed -i "s/#\ DBHost=localhost/DBHost=localhost/g" /opt/zabbix/etc/zabbix_server.conf

sed -i "s/#\ DBSocket=\/tmp\/mysql.sock/DBSocket=/tmp/mysql.sock/g" /opt/zabbix/etc/zabbix_server.conf

sed -i "s#tmp/zabbix_server.log#var/log/zabbix/zabbix_server.log#g" /opt/zabbix/etc/zabbix_server.conf

sed -i "s#tmp/zabbix_server.pid#opt/zabbix/pid/zabbix_server.pid#g" /opt/zabbix/etc/zabbix_server.conf

sed -i "s/#\ Timeout=3/Timeout=5/g" /opt/zabbix/etc/zabbix_server.conf

#修改php.ini 支持zabbix

sed -i "s/;always_populate_raw_post_data = -1/always_populate_raw_post_data = -1/g" /usr/local/php/etc/php.ini

sed -i "s/max_input_time = 60/max_input_time = 300/g" /usr/local/php/etc/php.ini

###################

/etc/init.d/php-fpm restart

#edit zabbix_agentd.conf file

sed -i "s/Server\=127.0.0.1/Server=127.0.0.1,$server/g" /opt/zabbix/etc/zabbix_agentd.conf

sed -i "s#tmp/zabbix_agentd.log#var/log/zabbix/zabbix_agentd.log#g" /opt/zabbix/etc/zabbix_agentd.conf

sed -i "s#tmp/zabbix_agentd.pid#opt/zabbix/pid/zabbix_agentd.pid#g" /opt/zabbix/etc/zabbix_agentd.conf

sed -i "s/#\ Timeout=3/Timeout=5/g" /opt/zabbix/etc/zabbix_agentd.conf

sed -i "s/#\ Include=\/usr\/local\/etc\/zabbix_agentd.conf.d/Include=\/opt\/zabbix\/etc\/zabbix_agentd.conf.d/g" /opt/zabbix/etc/zabbix_agentd.conf

sed -i "s/#\ UnsafeUserParameters=0/UnsafeUserParameters=1/g" /opt/zabbix/etc/zabbix_agentd.conf

#start zabbix_agentd

#chkconfig add zabbix_agentd

chkconfig zabbix_agentd on

chkconfig zabbix_server on

/etc/init.d/zabbix_agentd restart

/etc/init.d/zabbix_server restart

#netstat -nltp | grep --color zabbix

netstat -nltp | grep zabbix >& /dev/null

if $? -eq 0 ;then

代码语言:txt
复制
 echo "zabbix\_server install successed"

else

代码语言:txt
复制
 echo "zabbix\_server install failed"

fi

#安装zabbix-server的初始lnmp环境,由http://lnmp.org/一键安装包提供,此脚本仅在CentOS测试成功,使用时请自行修改相关配置。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016年10月04日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Author: www.vdevops.com
  • Changelog: 2016-10-4 shaonbean initial commit
  • stop here if you are creating database for Zabbix proxy
  • copy zabbix web code
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档