前提说明

需要安装curl命令,安装脚本的主机需要和nginx主机互通。

第一步:安装Nginx

安装Nginx可以使用编译安装或者yum安装,区别是yum安装后,使用systemctl enable nginx 会自动生成nginx.service服务文件,编译安装需要手动新增nginx.service服务文件,才能使用systemctl命令管理nginx。​​

nginx.service服务配置参考,注意文件路径

vim /lib/systemd/system/nginx.service

[Unit]

Description=nginx

After=network.target

[Service]

Type=forking

ExecStart=/itops/nginx/sbin/nginx -c /itops/nginx/conf/nginx.conf

ExecReload=/itops/nginx/sbin/nginx -s reload

ExecStop=/itops/nginx/sbin/nginx -s quit

PrivateTmp=true

[Install]

WantedBy=multi-user.target

然后给脚本执行权限,chmod 755
/lib/systemd/system/nginx.service

自启 systemctl enable nginx.service 或 chkconfig nginx on

文第二步:配置文件路径

在配置文件nginx.conf配置以下文件存放路径,图下意思是在/目录新增一个agent文件夹,之后需要把文件放到这个文件下。

利用Nginx实现免上传安装zabbix agent_配置文件

保存后,需要重启nginx才能生效,在重启前,可以使用以下命令测试一下配置文件是否正常,如有报错,会提示在第几行的配置有误!

/itops/nginx/sbin/nginx -t

nginx: the configuration file /itops/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /itops/nginx/conf/nginx.conf test is successful

第三步:测试安装

把需要执行的文件放到第二步配置/agent目录

利用Nginx实现免上传安装zabbix agent_zabbix_02

文件可以是执行脚本,也可以是压缩包或者是rpm包,这里举例为安装zabbix_agentd免编译版,利用制作的zabbix_agent安装相关文件及配置安装。

如果不是直接的脚本文件,确保压缩包里面有安装执行的shell文件

利用Nginx实现免上传安装zabbix agent_zabbix_03

然后到任意的linux主机使用以下命令执行安装:

curl -O http://nginx主机ip/agent/linux_agent.tar && tar -xf linux_agent.tar && cd linux_agent && sh install_agent.sh install

利用Nginx实现免上传安装zabbix agent_linux_04

安装完成

利用Nginx实现免上传安装zabbix agent_配置文件_05

检查端口

利用Nginx实现免上传安装zabbix agent_配置文件_06

检查进程

利用Nginx实现免上传安装zabbix agent_nginx_07

测试成功!