技术解析

有了 systemd 是不是就可以抛弃 supervisor 了?
0
2021-07-08 11:26:02
idczone
之前的程序一直是用supervisor来控制,相比写rc脚本是方便多了。
最近用上centos7后作业控制系统变成了systemd,扫了下文档发现写服务描述文件很方便,不比supervisor麻烦多少了,这样的话supervisor好象没必要用了吧。
已替换

supervisor可以通过网页执行启动停止的操作

好问题。。。看看大家的答案。。。

我也觉得,配置文件跟supervisor一样简单了

那么问题来了,Ubuntu怎么办?

貌似在ubuntu也加入了。抱歉。没看wiki

RHEL 7 里面已经换成systemd了。 最大的诱惑还是在启动上面。 原来是顺序启动,慢而且很容易卡住。而systemd,可以并发启动服务,自动解决服务之间的相互依赖。

Ubuntu从今年的15.04 Vivid开始默认使用Systemd,之前的也可以参考Wiki安装
反正用Systemd来管理守护进程挺方便的,Log用journalctl或者systemctl status查看也挺方便的
好吧,我承认我没用过Supervisor,Centos只用过Centos 7

不是通过vim修改配置么?

OS X 怎么办

OS X 不是早就有 launchd 了么?

Debian jessie 表示用了 systemd 以后再也不用写又臭又长还容易出错的 rc.d 了。

我一直没觉得那是给人用的

```
[Unit]
Description=ghost
After=network.target
[Service]
Type=simple
Edit WorkingDirectory, User and Group as needed
WorkingDirectory=/path/to/Ghost
User=http
Group=http
ExecStart=/usr/bin/npm start --production
ExecStop=/usr/bin/npm stop --production
Restart=always
SyslogIdentifier=Ghost
[Install]
WantedBy=multi-user.target
```
看了下配置不错

我也喜欢 systemd 的服务管理。不过日志部分还是喜欢 syslog-ng + logrotate。纯文本看起来方便,journalctl 找日志挺慢的。

supervisor有自动重启服务的功能,systemd有吗?

去看文档,不但有,而且功能更全面。

crontab.

systemd-timer

systemd一个配置文件只能一个程序吗?
例如我想只输入systemctl restart gfw就能重启chinadna dnsmasq ss-tunnel ss-local或更多程序

用dependency去拉
或者写一个bash脚本调用

有,而且功能强大
有,cockpit

做一个 gfw.target ?
重启当然没问题。systemd 还能跟踪 fork 出来的进程,supervisord 可不行。
systemd.timer 不会发邮件 :-(

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服