shell之路--Zabbix自动部署

#!/bin/bash

#auto install zabbix

#by max 2017

ZABBIX_SOFT="zabbix-2.0.6.tar.gz"

INSTALL_DIR="/usr/local/zabbix/"

SERVER_IP="192.168.0.100"

IP=`ifconfig|grep Bcast|awk ‘{print $2}‘|sed ‘s/addr://g‘`

SERVER_INSTALL(){

yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI

groupadd zabbix

useradd -g zabbix zabbix;usermod -s /sbin/nologin zabbix

tar -xzf $ZABBIX_SOFT

cd `echo $ZABBIX_SOFT|sed ‘s/.tar.*//g‘`

./configure  --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl &&make install

if [ $? -eq 0 ];then

ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/

fi

cd -

cd zabbix-2.0.6

cp  misc/init.d/tru64/{zabbix_agentd,zabbix_server}  /etc/init.d/

chmod o+x /etc/init.d/zabbix_*

mkdir -p /var/www/html/zabbix/

cp -a  frontends/php/*  /var/www/html/zabbix/

#config zabbix server

cat >$INSTALL_DIR/etc/zabbix_server.conf<<EOF

LogFile=/tmp/zabbix_server.log

DBHost=localhost

DBName=zabbix

DBUser=zabbix

DBPassword=123456

EOF

#config zabbix agentd

cat >$INSTALL_DIR/etc/zabbix_agentd.conf<<EOF

LogFile=/tmp/zabbix_agentd.log

Server=$SERVER_IP

ServerActive=$SERVER_IP

Hostname = $IP

EOF

#start zabbix agentd

/etc/init.d/zabbix_server restart

/etc/init.d/zabbix_agentd restart

/etc/init.d/iptables stop

setenforce 0

}

AGENT_INSTALL(){

yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI

groupadd zabbix

useradd -g zabbix zabbix;usermod -s /sbin/nologin zabbix

tar -xzf $ZABBIX_SOFT

cd `echo $ZABBIX_SOFT|sed ‘s/.tar.*//g‘`

./configure  --prefix=/usr/local/zabbix  --enable-agent&&make install

if [ $? -eq 0 ];then

ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/

fi

cd -

cd zabbix-2.0.6

cp  misc/init.d/tru64/zabbix_agentd  /etc/init.d/zabbix_agentd

chmod o+x /etc/init.d/zabbix_agentd

#config zabbix agentd

cat >$INSTALL_DIR/etc/zabbix_agentd.conf<<EOF

LogFile=/tmp/zabbix_agentd.log

Server=$SERVER_IP

ServerActive=$SERVER_IP

Hostname = $IP

EOF

#start zabbix agentd

/etc/init.d/zabbix_agentd restart

/etc/init.d/iptables stop

setenforce 0

}

read -p "Please confirm whether to install Zabbix Server,yes or no?[Y/N] " INPUT

if [ $INPUT == "Y" ];then

SERVER_INSTALL

else

AGENT_INSTALL

fi

时间: 2024-09-01 17:30:01

shell之路--Zabbix自动部署的相关文章

Linux Shell脚本之远程自动部署java maven项目

脚本功能: 自动从git上获取java maven项目工程源码,在机器A上build,build完成后,将Class文件和配置文件等上传到机器B,重新启动机器B上的服务以便变更生效. 脚本特点: 1.(与之前的自动部署脚本相比)全新优化了脚本代码,更friendly,结构更紧凑 2.Public header删除了无用或者不好用的有色彩显示函数,并修正了WORKDIR不是绝对路径可能导致的bug 3.修正了域名解析判断是否正常的一个bug,该bug可能导致遇到无法解析后不断尝试解析 4.全新的m

Shell脚本自动部署(编译)LAMP平台

Shell脚本自动部署(编译)LAMP平台 LAMP是当下非常流行的一套Web架构,我们可以在GNU/Linux下通过其他人打包的程序包来进行安装; 但是在生产环境中,很多时候都需要我们自己定制安装AMP,编译安装LAMP有以下几个优点 根据生产环境灵活定制程序 优化编译参数,提高性能 解决不必要的软件依赖 友情提示:对编译安装有疑问的朋友, 查看我以前写的博客:教你使用rpm.yum.编译等方式安装软件 点击此处获得更好的阅读体验 为什么要用脚本进行部署? 在很多情况下部署LAMP平台并不止一

使用shell脚本自动部署(发布,重起)maven(java)项目

项目结构如下图 一:系统环境 本机:10.4.18.3 服务器: 10.4.18.4,用户名: web02 二:初始化服务器环境 在服务器上的家目录创建目录deploy,deploy/profile mkdir -p /home/web01/deploy mkdir -p /home/web02/deploy/profile 安装jdk export JAVA_HOME=/home/web02/jdk1.7.0_67 三:源代码(这里演示了一个自己写的http web服务器) com.lala.

Lvs别样的自动部署监控shell脚本

Lvs别样的自动部署监控shell脚本   l 脚本功能: l 实验环境图: l 具体脚本: l 结果验证: l 参考资料: 先申明,本文现在已经在我公司的测试环境和生产测试环境使用.正式环境请用keepalived+lvs. 安装ipvsadm不多说了,先说说脚本的功能,脚本分为redirect server 端和realserver 端,脚本分别为 lvs_redirector.sh 和realserver.sh脚本.另外加一个监控脚本lvs_monitor.sh(此脚本来源网友,做了一点修

Jenkins自动部署Shell脚本

注意:本脚本用于Shell脚本分享,因环境不同,不可直接用于其它环境部署用. #!/bin/bash#时间:2019年7月29日#作者:肖山#微信:helpxiaoshan#用途:用于XXXX UAT环境ATG商城项目Jenkins自动部署使用. ############ 使用注意事项:################################################################################# 注意1:需修改目标主机/etc/ssh/sshd

zabbix自动发现结合shell实现自动发现占用内存最大top10进程并监控其资源

最近在想一个问题,线上服务器跑的服务五花八门,可能这台跑的是nginx,另一台跑的是mysql,其他的跑的是nfs或者其他服务等等,通过某一个脚本中固定的写入一些服务来实现监控所有的服务器的进程占用资源情况占用zabbix服务器资源不说,假如该服务器跑的服务不在固定列表中,监控服务获取不到相应数据. 为了解决这个问题,最近在想通过zabbix的自动发现功能能不能实现自动发现占用服务器内存最大的N个进程,然后对这些进程占用内存和CPU的资源情况进行监控获取数据呢?于是就有了本篇文章的诞生. 首先,

Zabbix agent批量自动部署

感谢李大神的帮助~ 废话:系统大批量上线时,我们一个个去装agent,有点枯燥,这里分享个expect结合上一篇<zabbix自动发现>,可以省不少工时. 准备工作: 1.下载客户端去吧https://www.zabbix.com/download_agents 2.跑脚本的主机192.168.2.100 1)下载的客户端放在了/opt下面 2)需要安装agent的(ip)和(passwd)信息,放在了ip_list.sh文件中 # vim /opt/ip_list.sh 192.168.2.

zabbix 的部署及基础知识的讲解

一.Zabbix的介绍 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员 快速定位/解决存在的各种问题,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台之上. - 安装与配置简单,学习成本低 - 支持多语言(包括中文) - 免费开源 - 自动发现服务器与网络设备 - 分布式监视以及WEB

使用gogs,drone搭建自动部署

使用gogs,drone搭建自动部署 使用gogs,drone,docker搭建自动部署测试环境 Gogs是一个使用go语言开发的自助git服务,支持所有平台Docker是使用go开发的开源容器引擎Drone是一个基于容器技术的持续集成平台.每个构建都在一个临时的Docker容器中执行,使开发人员能够完全控制其构建环境并保证隔离.drone易于安装和使用,其目标是替代jenkins 本文所实现的的功能为当你push代码到gogs时,自动更新您测试环境的二进制文件并重启,实现自动部署(以go开发a