You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu如何运行多Redis主从实例并配置自启,systemd服务失效排查

配置错误原因

  1. Service类型不匹配:默认Redis配置中daemonize yes处于开启状态,启动时会fork子进程后台运行,父进程直接退出。你配置的Type=simple会将父进程退出判定为服务启动失败,自动清理残留子进程,最终导致从节点进程被销毁。
  2. 缺少PIDFile配置:systemd无法正确识别Redis后台运行的子进程PID,无法对服务状态做正确判断。

修正方案

步骤1:调整Redis从节点配置

先编辑/etc/redis/redisSlave.conf,确认或添加PID文件配置:

pidfile /run/redis/redis-slave.pid

如果有多个从节点,每个节点的PID文件路径要区分开,比如redis-slave2.pid等。

步骤2:修正systemd服务配置

替换redis-slave.service的内容为以下配置:

[Unit]
Requires=redis-server.service
After=redis-server.service
Description=Redis Slave Instance

[Service]
Type=forking
User=root
PIDFile=/run/redis/redis-slave.pid
ExecStart=/usr/bin/redis-server /etc/redis/redisSlave.conf
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

步骤3:生效配置并启动服务

执行以下命令重载配置并启动服务:

sudo systemctl daemon-reload
sudo systemctl restart redis-slave.service

此时再执行systemctl status redis-slave.service即可看到服务正常运行,端口也能正常监听。多从节点可以按照相同逻辑修改配置路径、PID路径、服务文件名后重复上述操作即可。

内容的提问来源于stack exchange,提问作者ikiSiTamvaaan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 10:36:04