【问题标题】:How configure multiple Redis instances on Debian如何在 Debian 上配置多个 Redis 实例
【发布时间】:2021-08-04 11:56:03
【问题描述】:

我有一个运行 Redis 的 Debian 服务器,我想使用不同的端口运行第二个副本。有很多指南解释了如何在 Ubuntu 和其他版本的 Linux 上执行此操作,但我很难将它们翻译成 Debian。

到目前为止,我已经创建了 /etc/redis/redis.conf 的副本并将其重命名为 /etc/redis/redis_6380.conf。在新文件中,我更改了 PID 文件的名称、日志文件的位置、监听端口(改为 3680),这样它们就不会与现有的 Redis 实例冲突。

我的问题是知道要进行哪些更改以便 systemd 可以启动新实例。

我复制了 /lib/systemd/system/redis-server.service 并将其命名为 redis-server-6380.service 并更改了 EXECStart 和 PIDFile 行以指向新文件:

ExecStart=/usr/bin/redis-server /etc/redis/redis_6380.conf
PIDFile=/var/run/redis/redis-server_6380.pid

在做:

systemctl enable redis-server-6380.service

结果:

Failed to enable unit: File /etc/systemd/system/redis.service already exists and is a symlink to /lib/systemd/system/redis-server.service

我该如何解决这个问题?我猜我错过了一个重要的步骤,但我对在 Debian 上配置 systemd 监督进程不是很熟悉。

【问题讨论】:

    标签: redis debian-based


    【解决方案1】:

    redis-server 单元文件的结尾会说:

    [Install]
    WantedBy=multi-user.target
    Alias=redis.service
    

    要么删除该别名,要么确保它是唯一的。

    另外:确保您的 Redis 实例拥有自己的数据库和日志文件。

    【讨论】:

    • 谢谢,我已将 Alias 行更改为 Alias=redis.service.3680,现在收到警告“redis-server-6380.service: PID file /var/run/redis/redis -server_6380.pid 在 start-post 后不可读(还?):没有这样的文件或目录”尽管 /var/run/redis 被创建并且也属于 redis 组。
    • 检查 /var/log/redis.上次我看到这个错误时,我对 /var/lib/redis 的权限有误。
    猜你喜欢
    • 2020-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-14
    • 2012-05-25
    • 2018-04-12
    • 1970-01-01
    • 2022-10-18
    相关资源
    最近更新 更多