From ea548ad7cf7881b0c12571a645a69e60b29a17bf Mon Sep 17 00:00:00 2001 From: wangjia <809946525@qq.com> Date: Mon, 29 Jun 2026 08:22:20 +0800 Subject: [PATCH] =?UTF-8?q?fix(deploy):=20agent=20=E4=B8=8D=E5=86=8D?= =?UTF-8?q?=E9=9A=8F=20server=20=E5=81=9C=20=E2=80=94=E2=80=94=20=E8=A7=A3?= =?UTF-8?q?=E8=80=A6=20systemd=20=E4=BE=9D=E8=B5=96(#8=20=E9=9D=99?= =?UTF-8?q?=E9=BB=98=E6=8E=89=E7=BA=BF=E6=A0=B9=E5=9B=A0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Requires=pangolin-server → Wants=(软依赖);Restart=on-failure → always + StartLimitIntervalSec=0。根因:Requires= 使每次重启 server 都把 agent 一起拖停 且不自起 → 节点静默 down。agent 本就靠 gRPC 自重连,不该绑 server 生死。 线上 /etc/systemd 已同步 daemon-reload,并重启 server 验证 agent 全程存活+重连。 Co-Authored-By: Claude Opus 4.8 --- deploy/single-node/systemd/pangolin-agent.service | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/deploy/single-node/systemd/pangolin-agent.service b/deploy/single-node/systemd/pangolin-agent.service index d58bac3..5ce9add 100644 --- a/deploy/single-node/systemd/pangolin-agent.service +++ b/deploy/single-node/systemd/pangolin-agent.service @@ -2,14 +2,18 @@ Description=Pangolin node agent (self-enrolls, manages local sing-box) Documentation=https://github.com/wangjia/pangolin After=network-online.target pangolin-server.service -Wants=network-online.target -Requires=pangolin-server.service +# 软依赖:server 只是「想要先起」,不绑生死。agent 靠 gRPC 自重连,server 重启 +# (如部署)绝不能把 agent 一起拖停——之前 Requires= 正是「agent 静默掉线」根因(#8)。 +Wants=network-online.target pangolin-server.service +# 关闭重启频率上限,配合 Restart=always 保证永不放弃自愈(StartLimit* 属 [Unit])。 +StartLimitIntervalSec=0 [Service] Type=simple EnvironmentFile=/etc/pangolin-agent/agent.env ExecStart=/usr/local/bin/pangolin-agent -Restart=on-failure +# 始终自愈(崩溃/被依赖停后都拉起);RestartSec 做退避。 +Restart=always RestartSec=5 # The agent calls `systemctl restart sing-box` after rendering config; # a polkit rule (49-pangolin-singbox.rules) lets the unprivileged pangolin