无法终止监听端口 9090 的进程(Prometheus)并不断重新启动

无法终止监听端口 9090 的进程(Prometheus)并不断重新启动

我之前使用一款名为 Prometheus 的工具来监控虚拟机上的容器。现在我想删除它,但似乎不可能。

nima@caliper-latest:~/caliper$ sudo lsof -n -i4TCP:9090
COMMAND     PID       USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
prometheu 10171 prometheus    5u  IPv4 127446      0t0  TCP 127.0.0.1:45670->127.0.0.1:9090 (ESTABLISHED)
prometheu 10171 prometheus    7u  IPv4 132766      0t0  TCP 127.0.0.1:45674->127.0.0.1:9090 (ESTABLISHED)
prometheu 10171 prometheus    8u  IPv6 133455      0t0  TCP 127.0.0.1:9090->127.0.0.1:45674 (ESTABLISHED)
prometheu 10171 prometheus   10u  IPv6 133453      0t0  TCP 127.0.0.1:9090->127.0.0.1:45670 (ESTABLISHED)

然后我杀死 PID 并立即检查,它又启动了另一个进程:

nima@caliper-latest:~/caliper$ sudo kill -9 10171
nima@caliper-latest:~/caliper$ sudo lsof -n -i4TCP:9090
COMMAND     PID       USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
prometheu 10428 prometheus    5u  IPv4 128485      0t0  TCP 127.0.0.1:45776->127.0.0.1:9090 (ESTABLISHED)
prometheu 10428 prometheus    7u  IPv4 132877      0t0  TCP 127.0.0.1:45778->127.0.0.1:9090 (ESTABLISHED)
prometheu 10428 prometheus    8u  IPv6 132878      0t0  TCP 127.0.0.1:9090->127.0.0.1:45778 (ESTABLISHED)
prometheu 10428 prometheus   11u  IPv6 134235      0t0  TCP 127.0.0.1:9090->127.0.0.1:45776 (ESTABLISHED)

我尝试了其他命令,例如 killall 等,但没有成功。有什么办法可以解决这个问题吗?

答案1

正如@DanielB所说,你必须使用系统机制来停止或启动服务。

在 Linux 下,sysvinit 样式,调用/etc/init.d/prometheus stop是停止服务的官方正确方法。在 Linux 下,systemd 样式,/etc/init.d/prometheus stop也可以实现。如果没有,您将必须使用systemctl stop <the service name>

我猜测你的系统正在使用,systemd因为 sysvinit 没有实现重新生成被终止的进程...

相关内容