标签归档:zabbix shell install

Zabbix Server 5 一键安装脚本

Zabbix Server Web依赖环境基于ILNMP而成,具备ILNMP一键安装脚本的所有特性。若需要了解MySQL/MariaDB/Nginx/PHP安装配置信息,请参阅《ILNMP》。

脚本属性

  • 长期维护,支持定制化;
  • 支持 Zabbix Server 5 + 系列版本;
  • 交互式进行,支持依赖环境的多版本;
  • 支持 CentOS 7 ~ 8 与 Redhat 7 ~ 8 x86_64 bit 系统;
  • 默认安装(Nginx 1.19.1 PHP 7.4.8/MariaDB 10.5.4/Zabbix 5.0.1/phpMyAdmin 5)可根据需要修改脚本中的版本号(必须是官方已知版本)后再安装。

如何安装

curl -O https://renwole.com/sh/install_zabbix.sh
bash install_zabbix.sh

说明:脚本执行安装成功后会生成对应的root/Zabbix数据库及账号/密码信息打印在当前屏幕。安装完成后,请参阅以下信息管理Zabbix监控系统:

  • Zabbix UI入口:http://IP/ui
  • Zabbix管理平台账号密码:Admin/zabbix
  • Zabbix数据库/账号/密码:zabbix/zabbix/zabbix

脚本支持模块

模块名描述
enable-server启用Zabbix Server
enable-agent启用Zabbix agent
enable-proxy启用Zabbix proxy可代理采集数据,从而分担单个 Zabbix server 的负载
enable-ipv6启用对IPV6协议的支持
enable-java启用Zabbix Java gateway以支持监控 JMX 应用程序
with-mysql启用MySQL做为后端存储数据库
with-iconv启用转码,例如GBK转UTF-8,防止乱码
with-libcurl启用Web监控、VMware监控以及SMTP(邮件发送)需要的组件
with-libxml2启用VMware监控所需组件
with-ssh2SSH检查是作为无代理程序监视执行的。SSH检查不需要Zabbix Agent
with-openipmi启用IPMI协议监控服务器温度、风扇转速等
with-net-snmp启用SNMP协议监控打印机、路由器、UPS等设备
以上模块在编译安装zabbix中已自动添加开启。

应用安装目录

路径说明
/apps/server所有ILNMP应用安装及数据存储目录
/apps/server/zabbixZabbix Server监控安装目录
/apps/server/zabbix/etcZabbix Server配置文件所在目录

Zabbix Agent Remotely Install Shell(batch & Single)

批量安装:

#!/bin/sh
Server=10.16.8.8
ServerActive=10.16.8.8:10050
ip_array=("hostnamerenwole1" "hostnamerenwole2")

for ip in ${ip_array[*]}
do
zabbix=$(ssh $ip 'find /etc -name zabbix_agentd.conf')
if [ -f $zabbix ];then
ssh $ip 'rpm -ivh //repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm ; yum -y install zabbix-agent'
else
echo "Already exist, no need to install"
fi
ssh $ip '
sed -i "s#Server=.*#Server='$Server'#" /etc/zabbix/zabbix_agentd.conf
sed -i "s#ServerActive=.*#ServerActive='$ServerActive'#" /etc/zabbix/zabbix_agentd.conf
sed -i "s#Hostname=.*#Hostname='$ip'#" /etc/zabbix/zabbix_agentd.conf
sed -i "s/# UserParameter=/UserParameter=/g" /etc/zabbix/zabbix_agentd.conf
sed -i "s#UserParameter=.*#UserParameter=pro.check,sh /renwole/Apps/check.sh|wc -c#" /etc/zabbix/zabbix_agentd.conf
chmod -R 777 /etc/zabbix/zabbix_agentd.conf
systemctl restart zabbix-agent
'
done

交互式安装:

#cat /renwole/bin/Zabbix_Agent_Single.sh
#!/bin/sh
read -p "Please enter the HostName:" HostName
Server=10.16.8.8
ServerActive=10.16.8.8:10050
zabbix=$(ssh $HostName 'find /etc -name zabbix_agentd.conf')
if [ -f $zabbix ];then
ssh $HostName 'rpm -ivh //repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm ; yum -y install zabbix-agent'
else
echo "Already exist, no need to install"
fi
ssh $HostName '
sed -i "s#Server=.*#Server='$Server'#" /etc/zabbix/zabbix_agentd.conf
sed -i "s#ServerActive=.*#ServerActive='$ServerActive'#" /etc/zabbix/zabbix_agentd.conf
sed -i "s#Hostname=.*#Hostname='$HostName'#" /etc/zabbix/zabbix_agentd.conf
sed -i "s/# UserParameter=/UserParameter=/g" /etc/zabbix/zabbix_agentd.conf
sed -i "s#UserParameter=.*#UserParameter=pro.check,sh /renwole/Apps/check.sh|wc -c#" /etc/zabbix/zabbix_agentd.conf
systemctl restart zabbix-agent
'