frps error: no available port 引出的 supervisor 配置问题

背景

frps 服务大量报错 error: no available port
但是 ulimit 和 systemctl 的限制都已经改了。
systemctl 的问题可以参考之前写的 Centos 7 修改 ulimit 后 systemctl 启动服务无效

原因

frps 使用的是 supervisor 进行的管理,但是 supervisor 配置中有两个对进程和fd的关键项

minfds=1024                  ; min. avail startup file descriptors; default 1024
minprocs=200                 ; min. avail process descriptors;default 200

minfdsminprocs 决定了 supervisord 进程及其守护的子进程的 Max Processes 和 Max open files

解决方案

  1. minfdsminprocs 调大
  2. 使用 systemctl 进行管理。
    • frps 官方下载包中含有 frps.service,可按需修改配置内容
    • 将其放入 /usr/lib/systemd/system/
    • systemctl enable frps 加入开机启动
    • systemctl start frps 启动 frps

你可能感兴趣的:(frps error: no available port 引出的 supervisor 配置问题)