使用shell脚本一键安装zabbix并配置客户端的自动发现选项

1.缘由:

我自己的ESXi服务器上上最近新加了好多虚拟主机,但我现在还不会安装,使用,那种批量运维工具(saltstack,ansible,puppet等)。虽然还有一种方法:就是通过shell工具一次打开若干个窗口,然后在编辑框中输一行行的输入命令,点击全部窗口执行。可是我的老笔记本已经撑不住这么开这么多窗口了,。

2.然后

开始写zabbix_agent安装脚本,通过手工上传到各个虚拟机中执行,这里推荐大家在初始化Linux的时候,别忘记安装lrzsz,rz和sz可以拖动上传文件到Linux中。很方便。

还有一种思路:初始化Linux时,在管理机上配置一个共享挂载文件目录到那些被管理机上,然后通过这种方式进行分发脚本。但觉得路子有点歪。还不如去整个ansible来做。这个留作后话吧。

printf "关闭并屏蔽服务firewalld."
systemctl stop firewalld > /dev/null 2>&1
systemctl mask firewalld > /dev/null 2>&1
printf "\033[32;1m%20s\033[0m\n" "[ OK ]"
printf "安装zabbix3.4.2源......."
yum -y install http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm > /dev/null 2>&1
printf "\033[32;1m%20s\033[0m\n" "[ OK ]"
printf "安装zabbix-agent........"
yum -y install zabbix-agent > /dev/null 2>&1
printf "\033[32;1m%20s\033[0m\n" "[ OK ]"
printf "更改zabbix-agent配置文件"
sed  -i "s/Server=127.0.0.1/Server=192.168.1.120/g" /etc/zabbix/zabbix_agentd.conf
sed  -i "s/ServerActive=127.0.0.1/ServerActive=192.168.1.120/g" /etc/zabbix/zabbix_agentd.conf
sed  -i "s/# HostMetadataItem=/HostMetadataItem=system.uname/g" /etc/zabbix/zabbix_agentd.conf
sed  -i "s/# HostnameItem=system.hostname/HostnameItem=system.hostname/g" /etc/zabbix/zabbix_agentd.conf
sed  -i "s/Hostname=Zabbix server/# Hostname=Zabbix server/g" /etc/zabbix/zabbix_agentd.conf
printf "\033[32;1m%20s\033[0m\n" "[ OK ]"
printf "设置zabbix-agent自启动.."
systemctl enable zabbix-agent > /dev/null 2>&1
printf "\033[32;1m%20s\033[0m\n" "[ OK ]"
printf "启动zabbix-agent服务...."
systemctl restart zabbix-agent > /dev/null 2>&1
printf "\033[32;1m%20s\033[0m\n" "[ OK ]"

讲解下:

  • 禁止防火墙自启动本来可以用systemctl disable firewalld 这个命令在CentOS 7上没毛病,

    但是在同源的FedoraServer26上总是无法成功,所以使用更加粗暴的systemctl mask firewalld的  方式,直接将firewalld的目录指偏,让systemctl找不到firewalld。

  • zabbix使用了最新的版本
  • 更改配置文件这里,我对服务器地址进行了重新指定。

即Server=192.168.1.120(被动,适用于自动发现动作)

ServerActive=192.168.1.120 (主动,适用于自己向服务器发起注册操作)

HostnameItem=system.hostname(定义主机的名称,在自动注册的时候有用)

HostMetadataItem=system.uname(定义主机的元数据信息,在自动注册的时候有用)

  • 然后就是开启服务啦。
时间: 2024-10-22 15:30:16

使用shell脚本一键安装zabbix并配置客户端的自动发现选项的相关文章

Centos 6.4上面用Shell脚本一键安装mysql 5.6.15

Centos 6.4上面用Shell脚本一键安装mysql 5.6.15  #!/bin/bash if [ `uname -m` == "x86_64" ];then machine=x86_64 else machine=i686 fi mysqlBasedir=/storage/server/mysql mysqlDatadir=${mysqlBasedir}/data/ mysqlLogdir=/storage/log/mysql mysqlUser=mysql mysqlGr

Shell脚本一键安装LNMP环境

https://sourceforge.net/projects/opensourcefile/files/ Nginx是一款高性能的HTTP和反向代理服务器.Nginx在反向代理,Rewrite规则,稳定性,静态文件处理,内存消耗等方面表现了很强的优势.因此公司线上和测试环境的WEB服务大多数采用的是LNMP环境,经常要进行LNMP环境的搭建,下面是用SHELL脚本写的一键安装LNMP环境的脚本.1)系统环境介绍Centos 5.8 64位 (已测试)Nginx: nginx-1.4.1.ta

shell脚本一键安装MySQL5.5

执行脚本之前必须下载MySQL5.5二进制压缩安装包.我是事先下载好了的.下边执行shell脚本. #!/bin/bash #auth:taoyake /bin/mkdir -p /taokey/tools cd /taokey/tools/ tar -zxf mysql-5.5.32-linux2.6-x86_64.tar.gz  sleep 3 cp -R mysql-5.5.32-linux2.6-x86_64 /usr/local/mysql sleep 3 cd /usr/local/

【高效率】shell脚本一键安装Tomcat服务

脚本环境 1.linux centos 7或redhat 62.光盘镜像文件已挂载3.系统在可连接外网的环境中4.先下载jdk和tomcat软件包百度云链接提取码:89be 实验步骤 1.上传软件包到Linux系统中2.编写脚本vim tomcat.sh #!/bin/bash#this is tomcat shell #先关闭防火墙,增强性systemctl stop firewalldsetenforce 0num1=`env | grep USER | grep root | wc -l

shell脚本一键安装redis集群

简介: 明天再写,上脚本 #!/bin/bash #------------------------------------------------------------------------------------------------------------------# #| Some people die at the age of 25 and don't bury themselves in the earth until they are 75 |# #-----------

shell脚本一键安装LNMP菜单方式安装

#!/bin/bash#定义软件包变量Tnginx="nginx-1.6.0.tar.gz"nginx="nginx-1.6.0"Tcmake="cmake-2.8.6.tar.gz"cmake="cmake-2.8.6"Tlibmcrypt="libmcrypt-2.5.8.tar.gz"libmcrypt="libmcrypt-2.5.8"Tmcrypt="mcrypt-2

ansible-playbook基于role的配置一键安装zabbix客户端以及拉取自定义监控脚本

在IT工作中,您可能会一遍又一遍地执行相同的任务:没有人喜欢重复的任务.通过Ansible,IT管理员可以开始自动化日常任务中的苦差事.自动化解放了管理人员,专注于通过加快应用交付时间和建立在成功文化基础之上,为业务提供更多价值的努力.最终,Ansible为团队提供了他们永远无法获得足够的一件事:时间.让聪明的人专注于聪明的事情. Ansible是一种简单的自动化语言,可以完美地描述IT应用程序基础结构.它易于学习,自我记录,并且不需要毕业级的计算机科学学位来阅读.自动化不应该比它正在取代的任务

shell脚本一键在线安装redis数据库(使用函数实现)

shell脚本一键在线安装redis数据库(使用函数实现) 前面的文章给出了有关手工编译安装redis的流程,并且在模拟搭建redis集群时给出了在线安装redis的过程,于是就想着自己写好在线安装的redis脚本,本文主要使用shell函数来实现并且验证在线安装的过程,执行无误后就想着分享出来. PS:系统环境为Centos7.4 脚本如下: #!/bin/bash function checkroot(){ if [ $UID -ne 0 ] then echo "|------------

zabbix -- 一键安装2.4.7客户端 (附:邮件、微信警报)

小Q:各位,最近一直在玩zabbix,写点总结. 1.搭建安装脚本,一键安装2.4.7 客户端 2.报警脚本(微信 邮件) ---------------------------------------------------------------------------------------------- 1.搭建安装脚本,一键安装2.4.7 客户端 a.首先要找一台原始服务器,放置zabbix_2.4.7安装包,和一个已经写好适合自己的配置文件. b.脚本如下 #!/bin/bash f