zabbix-server 自动安装脚本

原创 2016年10月04日 10:49:24

#!/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
     echo "user exists"
 else
     useradd $user
     echo $user | passwd --stdin $user

 fi


#install gcc
yum -y install gcc gcc-c++ openssh-clients net-snmp*
 if [ $? -eq 0 ];then
    echo "yum install successed"
  else
    echo "yum install failed"
    exit 2
 fi
#create zabbix group if not exists  
egrep "^zabbix" /etc/group >& /dev/null  
 if [ $? -ne 0 ]  
 then  
    groupadd zabbix  

 fi


#create user if not exists  
egrep "^zabbix" /etc/passwd >& /dev/null  
 if [ $? -ne 0 ]  
 then  
    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
   echo "wget is successed"
 else
   echo "wget is failed"
   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
    echo "zabbix_server install successed"
 else
    echo "zabbix_server install failed"

fi

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

版权声明:本文为木偶人shaon原创文章,转载请注明原文地址,非常感谢。 https://blog.csdn.net/wh211212/article/details/52732950

zabbix一键安装脚本

#脚本和之前的说明都是从网上CP过来的,不过后面有些自己安装时遇到的问题,在网上的帖子并没有提到,在此描述下。说明:此脚本只适用与RHEL6.x系列;Nginx版本为1.6最新稳定版;PHP为5.4最...
  • u014505701
  • u014505701
  • 2016-09-09 17:43:01
  • 631

自己都zabbix部署包安装的一些心得(适合小菜鸟的教程)

1,首先我这边是有两台机器的62(ip简称) 为centos6.9的版本,78的为centos7.1的版本 lsb_release -a  cat  /etc/redhat-rel...
  • Baron0071
  • Baron0071
  • 2017-12-19 16:45:30
  • 198

Zabbix系列之Zabbix安装搭建及汉化

Server端: 1、安装开发软件包 1 yum  -y groupinstall  "Development Tools" 2、安装所需的依赖包 ...
  • William234
  • William234
  • 2017-06-25 23:27:07
  • 9261

zabbix一键安装方式

zabbix 环境安装以及php环境安装
  • u012554661
  • u012554661
  • 2016-07-26 15:52:39
  • 3007

使用ansible自动化安装zabbix3.0

[背景] 最近由于公司需要使用ansible自动化部署zabbix的server端和agent端,所以研究了一下。去年的时候,曾经接触过ansible,尝试用来部署openstack,但是那时候刚刚开...
  • wn_hello
  • wn_hello
  • 2016-08-18 09:41:06
  • 3487

zabbix系列(九)zabbix3.0实现自动触发zabbix-agent端shell脚本任务

zabbix实现自动触发远程脚本执行命令 Zabbix触发器(trigger)达到阀值后会有动作(action)执行:发送告警信息或执行远程命令 环境 Server:基于centos6.5 fi...
  • reblue520
  • reblue520
  • 2016-08-25 15:40:26
  • 11437

Zabbix 3配置脚本报警(二)

Zabbix 3配置脚本报警(二) 配置使用script报警媒介 Zabbix 3配置邮件报警(一)  上面详细介绍了如何使用zabbix email形式发送报警,个人认为唯一的缺点就是...
  • wangdaoge
  • wangdaoge
  • 2016-10-29 10:31:27
  • 4887

zabbix3.0.4通过自定义shell脚本添加对关键日志文件的监控

zabbix添加对自定义无规则日志文件的监控 项目背景及思路: zabbix自带有针对日志文件的监控,自带的监控只能监控到指定文件或者正则匹配的固定日志文件,但当需要监控的文件名没有规律的时候自带...
  • reblue520
  • reblue520
  • 2017-03-15 19:13:01
  • 5328

zabbix自定义脚本

这个脚本的思路,自定义一个key,然后就是通过查看文件 /proc/net/dev 里面的数值,来计算实时网卡流量,其实我算的是一个平均值。分为进和出。如果这个脚本每隔1分钟执行一次,那么算出来的流量...
  • m0_37841609
  • m0_37841609
  • 2017-05-16 10:19:57
  • 209

简单的zabbix agent自动安装脚本

yum -y groupinstall "Development Tools" yum -y install ntpdate ###?录?rontab PROGRAM='ntpdate cn.pool...
  • zhaoyangjian724
  • zhaoyangjian724
  • 2015-08-10 13:02:27
  • 784
收藏助手
不良信息举报
您举报文章:zabbix-server 自动安装脚本
举报原因:
原因补充:

(最多只允许输入30个字)