前言:
你想装什么版本都行,改一下脚本中的下载地址就可以
安装步骤:
1.创建一个脚本文件
vi zabbix_agent_install.sh
2.在文件中添加以下内容并保存:
按“i”进入输入模式后再粘贴,必须顶格粘贴
修改脚本中的两个地方,一个是zabbix server 的ip,另一个是默认用户的password
#!/bin/bash ## zabbix server 的ip ipaddress="xxx.xxx.xxx.xxx" ## 进入Linux后,默认用户的password(我这里默认用户是admin,自己写自己的password) password="xxxxx" ## 创建安装源 echo ${password} | sudo touch /etc/yum.repos.d/zabbix.repo ## 向文件中添加内容 sudo sh -c 'echo "[zabbix]" >> /etc/yum.repos.d/zabbix.repo' sudo sh -c 'echo "name=Zabbix Official Repository" >> /etc/yum.repos.d/zabbix.repo' sudo sh -c 'echo "baseurl=http://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/" >> /etc/yum.repos.d/zabbix.repo' sudo sh -c 'echo "enabled=1" >> /etc/yum.repos.d/zabbix.repo' sudo sh -c 'echo "gpgcheck=0" >> /etc/yum.repos.d/zabbix.repo' sudo sh -c 'echo "gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591" >> /etc/yum.repos.d/zabbix.repo' ## 安装zabbix_agent echo ${password} |sudo yum makecache echo ${password} |sudo yum install -y zabbix-agent ## 修改zabbix_agent 配置文件 sudo sed -i "117c Server=${ipaddress}" /etc/zabbix/zabbix_agentd.conf sudo sed -i "171c ServerActive=${ipaddress}" /etc/zabbix/zabbix_agentd.conf sudo sed -i "182c Hostname=${HOSTNAME}" /etc/zabbix/zabbix_agentd.conf echo "安装、配置zabbix客户端完成!!"
3.执行脚本
chmod +x zabbix_agent_install.sh
./zabbix_agent_install.sh
4.启动
启动:systemctl start zabbix-agent
设置开机自启:systemctl enable zabbix-agent
查看状态:systemctl status zabbix-agent
5.开启防火墙
开放10050端口
sudo firewall-cmd --zone=public --add-port=10050/tcp --permanent
重启防火墙,生效配置
sudo firewall-cmd --reload
总结:
这是第三次写脚本,发现很多要注意的点。
1.使用变量:
- 声明变量: 变量名=“xxxxx” “xxxxx” 是变量初值
- 使用变量: ${变量名}
- 在引号中使用变量:必须要写英文版的双引号,单引号中识别不到变量。
2.获取本机的hostname:${HOSTNAME}
3.在使用echo命名时提示权限:
- 这样写不行:sudo echo xxxxxx xxxxxx
- 这样写可以:sudo sh -c ‘echo “name=Zabbix Official Repository” >> /etc/yum.repos.d/zabbix.repo’
4.sed 替换用法
- 我使用的是按行号替换(不推荐,写死了)
- sed替换后会自动把文件内容打印到控制台,加上-i 可以解决
- sed替换原理是先把要替换的文件复制一份,替换里面的内容后,用复制文件覆盖原文件