argus/deployment/build/templates/client/PUBLISH_CLIENT_zh.md

3.0 KiB
Raw Blame History

Argus Metric 客户端发布说明FTP

本说明面向“发布人员”,讲清楚如何把客户端离线包发布到 FTP供各节点通过 curl 自动安装。

目录结构(构建后)

  • client-YYYYMMDD/
    • argus-metric_YYYYMMDD.tar.gz 客户端离线包
    • setup.sh 客户端安装入口脚本(提供给节点用 curl 下载)
    • publish.sh 发布脚本(将上述两项与 LATEST_VERSION 上传到 FTP
    • LATEST_VERSION 文本(内容为 YYYYMMDD,或 YYYYMMDD-rN
    • INSTALL_CLIENT_zh.md 本地安装指南(给使用者看,不会上载到 FTP
    • PUBLISH_CLIENT_zh.md 本说明

注意:publish.sh/setup.sh 为可执行脚本;构建脚本已保证二者具有执行权限。

前置条件

  • FTP 服务已运行(默认容器:argus-ftp并打开端口21、20、2110021110被动模式
  • FTP 账号:默认 ftpuser / ZGClab1234!(如有更改,以实际为准)。

发布步骤(在 server 机器或能直连 FTP 的任意机器上)

  1. 进入发布目录:
  • cd client-YYYYMMDD
  1. 执行发布:
  • ./publish.sh --server <FTP_HOST> --user <USER> --password '<PASS>' [--port 21]
  • 例如在服务端本机:./publish.sh --server localhost --user ftpuser --password 'ZGClab1234!' --port 21

脚本会上传三类文件到 FTP 根:

  • setup.sh
  • argus-metric_YYYYMMDD[ -rN ].tar.gz
  • LATEST_VERSION(内容为当前版本号)
  1. 发布后验证:
  • curl -u ftpuser:****** -I ftp://<FTP_HOST>:21/LATEST_VERSION 应返回 200
  • curl -u ftpuser:****** -fsSL ftp://<FTP_HOST>:21/LATEST_VERSION 内容为版本号(如 20251104
  • curl -u ftpuser:****** -I ftp://<FTP_HOST>:21/argus-metric_YYYYMMDD.tar.gz 返回 200

节点侧使用方式(摘要)

  • 首次下载用 FTP 的“IP 地址”:
    • curl -u ftpuser:****** -fsSL ftp://<FTP_IP>:21/setup.sh -o /tmp/setup.sh && chmod +x /tmp/setup.sh
  • 执行安装:
    • 必需元数据:AGENT_ENV/AGENT_USER/AGENT_INSTANCE,以及 MASTER_ENDPOINT=http://master.argus.com:3000
    • sudo /tmp/setup.sh --server <FTP_IP> --user ftpuser --password '******' --port 21
  • overlay 容器场景:
    • 先将容器内 DNS 指向 Bind9 的 overlay IPecho "nameserver <BIND_OVERLAY_IP>" > /etc/resolv.conf
    • 然后再执行上述安装;安装后约 12 分钟内 DNS 即可解析 *.argus.com 域名。

常见问题

  • 530 Access denied:用户名/密码错误或 FTP 目录无权限;请核对账号与 FTP 容器状态。
  • Permission denied 执行 publish.sh:为脚本权限问题;chmod +x publish.sh。构建脚本已修复默认权限。
  • 被动端口不通导致失败:请开放 2110021110。
  • 客户端安装后短时 curl http://master.argus.com:3000 为 000服务冷启动或 DNS 同步延迟,等待 12 分钟再试。

版本与回滚

  • LATEST_VERSION 决定客户端默认安装的版本号。
  • 如需回滚:将旧版本号写回 LATEST_VERSION 并重新发布(或手动指定 --version 安装)。