【发布时间】:2021-08-29 22:11:15
【问题描述】:
我的环境:
我想使用 Redis 作为 Memcached 的替代品。
就我而言,我将使用 3 台服务器,每台服务器将拥有一个 Redis MASTER。我不需要复制,只需要分片。所有数据都将存储在内存中,我不在乎它是否会在服务器宕机时丢失。
Server 1: master_1.conf
Server 2: master_2.conf
Server 3: master_3.conf
如果一台服务器出现故障,Pacemaker/Corosync 将在另一台服务器上启动相同的 MASTER(所有服务器都有一个共享的只读文件系统,因此可以使用相同的配置文件启动新的 MASTER ,但在另一台服务器上)。
Server 1: dead
Server 2: master_1.conf (data wiped), master_2.conf
Server 3: master_3.conf
当故障服务器修复后,MASTER会返回给它。我了解在这些移动过程中数据将被擦除。
Server 1: master_1.conf (data wiped)
Server 2: master_2.conf
Server 3: master_3.conf
问题:
据我所知,真正重要的是在创建集群时分配给 MASTER 的 NODE ID。因此,如果我将我的 MASTER 移动到另一台服务器,我需要确保它保持与之前服务器上相同的 NODE ID。没有它,它就无法重新加入集群。
但是,我找不到它的配置选项。有没有办法在config文件中配置NODE ID?
我不关心移动过程中的数据丢失,我只需要确保所有 3 个 MASTERS 都在运行,即使它们在 1 台服务器上运行(如果其他 2 台停机)。
Server 1: server dead
Server 2: server dead
Server 3: master_1.conf (data wiped), master_2.conf (data wiped), master_3.conf
【问题讨论】:
标签: redis redis-cluster