linux systemctl系统服务管理

systemctl 其功能是用于管理系统服务。从 RHEL/CentOS7 版本之后初始化进程服务 init 被替代成了 systemd 服务,systemd 初始化进程服务的管理是通过 systemctl 命令完成的,从功能上涵盖了之前 service、chkconfig、init、setup 等多条命令的大部分功能。

  • 启动服务:systemctl start patroni
  • 停止服务:systemctl stop patroni
  • 重启服务:systemctl restart patroni
  • 查看服务状态:systemctl status patroni
  • 加入开机启动项:systemctl enable patroni
  • 取消开机启动:systemctl disable patroni
  • 显示已启动的服务列表信息:systemctl list-units --type=service
  • 服务配置文件:/usr/lib/systemd/system/patroni.service
[Unit]
Description=Runners to orchestrate a high-availability PostgreSQL 13.3
After=syslog.target network.target

[Service]
Type=simple
User=admin
Group=admin
ExecStart=/usr/local/bin/patroni /etc/patroni.yml
KillMode=process
TimeoutSec=30
Restart=no
TasksMax=50000

[Install]
WantedBy=multi-user.target

TasksMax=50000 可以限制服务能够创建的最大进程数量。其效果与 ulimit 限制最大文件句柄数量和最大用户进程数量类似。

通常 systemctl 启动的服务,其日志输出到 /var/log/message 文件,也可以通过下面命令查看日志,如下:

journalctl -f -u patroni

文章评论

0条评论