zabbix_agent_install.sh

#!/bin/bash
#auther by wangxp ZABBIX_AGENT_DIR="/usr/local/zabbix"
ZABBIX_AGENT_FILE_NAME="zabbix_agent-5.0.15-linux-3.0-amd64-static.tar.gz"
SERVER_IP=111.111.110.41
#LOG_FILE= echo "检查安装文件..."
sleep 1
if test -f "$ZABBIX_AGENT_FILE_NAME"
then
echo "当前目录找到安装文件:$ZABBIX_AGENT_FILE_NAME"
else
ls `pwd`
echo "当前目录找不到:$ZABBIX_AGENT_FILE_NAME ,脚本退出"
exit 1
fi echo "检查安装目录..."
sleep 1
if test -d $ZABBIX_AGENT_DIR
then
echo "存在安装路径:$ZABBIX_AGENT_DIR"
rm -rf $ZABBIX_AGENT_DIR/*
echo "清理$ZABBIX_AGENT_DIR"
else
echo "创建安装路径:$ZABBIX_AGENT_DIR"
mkdir -pv $ZABBIX_AGENT_DIR
fi echo "创建zabbix用户..."
sleep 1
grep "zabbix" /etc/passwd
if [ $? -ne 0 ];
then
useradd zabbix -s /sbin/nologin
fi
#检测函数
check(){
if [ $? -ne 0 ];
then
echo "Error,Please check again."
exit 1
fi
}
zabbixsign(){
if test -z "`ss -ntlp|grep zabbix_agentd|grep -v grep`"
then
echo "zabbix_agentd服务启动失败"
sign=0
else
echo "zabbix_agentd服务启动成功"
sign=1
fi
} echo "开始解压缩文件..."
sleep 1
tar -zxvf $ZABBIX_AGENT_FILE_NAME -C $ZABBIX_AGENT_DIR
check echo “创建软链接”
sleep 1
if test -L '/usr/bin/zabbix_sender'
then
rm -rf /usr/bin/zabbix_sender
echo "删除已有/usr/bin/zabbix_sender"
fi
if test -L '/usr/bin/zabbix_get'
then
rm -rf /usr/bin/zabbix_get
echo "删除已有/usr/bin/zabbix_get"
fi
if test -L '/usr/sbin/zabbix_agentd'
then
rm -rf /usr/sbin/zabbix_agentd
echo "删除已有/usr/sbin/zabbix_agentd"
fi ln -s `find $ZABBIX_AGENT_DIR -type f -name zabbix_sender` /usr/bin
echo "创建软连接/usr/bin/zabbix_sender"
check
ln -s `find $ZABBIX_AGENT_DIR -type f -name zabbix_get` /usr/bin
echo "创建软连接/usr/bin/zabbix_get"
check
ln -s `find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd` /usr/sbin
echo "创建软连接/usr/sbin/zabbix_agentd"
check echo "修改zabbix_agent配置..."
sleep 1
sed -r -i s/^Server=127.0.0.1/Server=$SERVER_IP/g `find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd.conf`
check
sed -r -i s/^ServerActive=127.0.0.1/ServerActive=$SERVER_IP/g `find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd.conf`
check
sed -r -i s/'^Hostname=Zabbix server'/Hostname=`hostname`/g `find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd.conf`
check echo -e "zabbix_agent基本配置:"
cat `find $ZABBIX_AGENT_DIR -name zabbix_agentd.conf` | egrep '^Server|^ServerActive|^Hostname' echo -e "添加zabbix_agent启停脚本。。。"
sleep 1
if test ! -f zabbix_agent.sh
then
echo -e "#!/bin/bash\n# chkconfig: 2345 22 78\n# description:\n
ZABBIX_AGENT_DIR=$ZABBIX_AGENT_DIR
ZABBIX_AGENT=`find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd`
ZABBIX_AGENT_CONF=`find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd.conf`" > zabbix_agentd.sh
echo '
function stop(){
kill -15 `cat /tmp/zabbix_agentd.pid`
}
case $1 in
start)
$ZABBIX_AGENT -c $ZABBIX_AGENT_CONF
;;
stop)
stop
;;
restart)
stop
$ZABBIX_AGENT -c $ZABBIX_AGENT_CONF
;;
*)
echo "Usage:service zabbix_agentd start|stop|restart"
;;
esac'>>zabbix_agentd.sh
chmod u+x zabbix_agentd.sh
else
echo "当前目录已经存在zabbix_agent.sh脚本。"
fi if test -f /etc/init.d/zabbix-agentd;
then
rm -rf /usr/local/etc/zabbix_agentd.conf
echo "删除已存在/etc/init.d/zabbix-agentd"
fi
echo "zabbix_agent添加到init进程..."
sleep 1
cp zabbix_agentd.sh /etc/init.d
check
mv /etc/init.d/zabbix_agentd.sh /etc/init.d/zabbix-agentd
chmod a+x /etc/init.d/zabbix-agentd echo "zabbix_agent开机启动设置"
chkconfig --add zabbix-agentd
chkconfig zabbix-agentd on
service zabbix-agentd start
sleep 1
zabbixsign if [ $sign -eq 0 ];then
echo "尝试用root启动用户"
sleep 1
sed -r -i /'# AllowRoot=0'/a\AllowRoot=1 `find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd.conf`
echo -e "zabbix_agent基本配置:"
cat `find $ZABBIX_AGENT_DIR -name zabbix_agentd.conf` | egrep '^Server|^ServerActive|^Hostname|^AllowRoot'
sleep 3
service zabbix-agentd start
fi
sleep 1
zabbixsign

zabbix_agent_install.sh脚本下载

自动安装zabbix-agentd脚本 自己写的的更多相关文章

  1. mysql5.7 在Centeros 6 下自动安装的shell脚本

    概述: 此脚本实现了在Centeros 6版本下自动安装mysql5.7到目录 /opt/mysql-5.7*并且做软连接映射到 /usr/local/mysql,自动修改root密码为:123456 ...

  2. 自己用ansible加shell 写的自动安装kubernetes的脚本

    脚本地址:https://github.com/shatianxiaozi/auto_install_k8s.git 1. 下载 git clone https://github.com/shatia ...

  3. ansible 批量安装zabbix agentd客户端

    目录结构 # tree /etc/ansible/ /etc/ansible/ ├── ansible.cfg ├── hosts ├── roles │   └── zabbix-agentd │  ...

  4. (二)centos7安装zabbix agentd端

    关闭防火墙和selinux systemctl stop firewalld systemctl disable firewalld sed -ri '/^SELINUX=/cSELINUX=disa ...

  5. 自动安装L2tp的脚本

    来自于 https://teddysun.com/448.html #!/usr/bin/env bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/ ...

  6. python3自动安装脚本,python3.x与python2.x共存

    1.前言: python3过程中,通过搜索一些文章参考安装过程发现比较麻烦,而且还出现一些不可预期的报错.python3环境需要升级openssl,所以为了部署到其他环境更方便,写自动安装脚本方式,且 ...

  7. 实用脚本----Linux下Jdk和Tomcat自动安装shell脚本总结

    系统环境为:ubuntu 14.04 一.JDK 自动安装脚本 jdk自动安装bash shell脚本,截止今天(2014/10/15)亲测可用: sudo su #切换到root权限 mkdir / ...

  8. Zabbix Server 和 Zabbix Agentd 开机自动运行

    Zabbix Server 和 Zabbix Agentd 开机自动运行 请问:怎样 Zabbix Server 和 Zabbix Agentd 开机自动运行? 注:如果你的命令行写进了 /etc/r ...

  9. hadoop自动安装的脚本与步骤

    最近要在10几台机器上安装hadoop.对于这种繁复而重复的工作,一步步的打命令行,对于程序员来说是一件不能忍的事情.所以我就琢磨着怎么写一个脚本来自动安装hadoop. 任务: 在10几台机器上中的 ...

  10. 可以自动安装mysql数据库的一个shell脚本

    发布:thatboy   来源:脚本学堂     [大 中 小] 分享一例shell脚本,可以实现mysql数据库的自动安装,脚本写的不错,无论是用来学习,还是生产环境中应用,都是不错的,有需要的朋友 ...

随机推荐

  1. Java Concurrent

    本文节选自 Effective Java by Joshua Bloch 和 Concurrent Programming in Java by Doug Lea. 1.1 概述 多线程程序设计比单线 ...

  2. Checking Table 设计模式 - 从概念、建模、设计到实现——兼谈基于业务需求驱动的设计模式创新

    郑 先全, 架构师, NEC Asia Pacific Pte Ltd 简介: 如何基于业务需求驱动理念来开展我们的模式创新,成为了当今架构师.设计师的重要职责之一.本文通过具体的 Checking ...

  3. Clickhouse之集群操作

    查看集群: 在任意一台机上,使用 /usr/bin/clickhouse-client --host localhost --port 9000 连接本地服务器 select * from `syst ...

  4. 2018-2019 9th BSUIR Open Programming Championship

    I. Equal Mod Segments \(1 \leq n \leq 1e5\) \(1 \leq a_i \leq 3e5\) 题解:ST表 + 扫描线 + 二维偏序 取模存在一个不错的性质: ...

  5. .NET Core 异步(Async)底层原理浅谈

    简介 多线程与异步是两个完全不同的概念,常常有人混淆. 异步 异步适用于"IO密集型"的场景,它可以避免因为线程等待IO形成的线程饥饿,从而造成程序吞吐量的降低. 其本质是:让线程 ...

  6. IDEA 一个服务同时启动多个实例

    有些时候为了测试,服务的分发,我们可以在IDEA中对一个微服务启动多个实例,配置方法如下: 1.编辑同时启动的微服务. 勾选 allow parallel run 2.编辑完成后复制一份配置. 3.复 ...

  7. 关于 Span 的一切:探索新的 .NET 明星: 1 Span<T> 是什么?

    关于 Span 的一切:探索新的 .NET 明星 https://docs.microsoft.com/en-us/archive/msdn-magazine/2018/january/csharp- ...

  8. kubeadm安装 k8s集群证书过期更新

    kubeadm安装 k8s集群证书过期更新 kubeadm版本 v1.18.8 #查看证书 #mast节点,查看所有证书 kubeadm alpha certs check-expiration #若 ...

  9. 【网站搭建】Docsify+Gittalk的配置过程记录分享。原创!

    Gittalk 配置 这个不一定最先配置,我也不建议你最先配置这个,这个最好最后配置. 萌狼蓝天把这个的配置写在第一条,是因为我在这折腾了很久,就是因为网上抄来抄去的答案,除了迷惑萌狼蓝天难以给萌狼蓝 ...

  10. Jackson ObjectMapper - 指定对象属性的序列化顺序

    注释很有用,但在任何地方应用起来都会很痛苦.您可以配置整个 ObjectMapper 以这种方式工作 当前杰克逊版本: objectMapper.configure(MapperFeature.SOR ...