Redis集群以两台机器实现高可用(两台redis做集群)

 Redis集群(Redis Cluster)是 Redis 的高可用功能,旨在使用多台服务器实现分布式存储,有效保证 Redis 服务的完整性,以实现数据高可用。

这里我们以两台机器的示例来实现 Redis 集群高可用,首先在两台机器上都需要搭建 Redis 服务(操作系统版本要一致),假定现在有两台Redis节点,node1 和 node2,节点 node1 的IP是 192.168.1.1,节点 node2 的 IP 是 192.168.1.2,下面我们通过 Redis 的 clone/replication 特性来同步两台服务器,例如在 node1 上添加以下配置:

Master Redis
requirepass 123456
appendonly yes
maxmemory 500mb
masterauth 123456

同时在 node2 上添加以下配置:

Slave Redis
requirepass 123456
appendonly yes
maxmemory 500mb
slaveof 192.168.1.1 6379
masterauth 123456

接着启动两台机器的 Redis 服务,同步完成后,两台机器上的 Redis 服务就可以实现高可用,再添加 Redis 的 Sentinel 服务,Sentinel 可以实时监控 Redis 服务,当其中一台机器宕机时,Sentinel 服务会立即触发自动切换功能,从而实现高可用。

当我们需要给 Redis 服务添加新节点时,先启动新节点的 Redis 服务,然后使用 Redis 的 cluster 命令进行添加,如下所示:

redis-cli --cluster create 192.168.1.1:6379 192.168.1.2:6379 --cluster-replicas 1 --cluster-auth 123456 

我们可以使用 Redis 的 cluster info 命令查询集群状态,如果状态为:OK,则表示 Redis 集群成功搭建,以 two nodes 三节点搭建 Redis 集群,就可以实现高可用。

因此,Redis 集群高可用功能是很实用且简单易行的,能有效保障 Redis 服务的完整性,以实现数据高可用,通过上文的实现步骤,就可以很简单的完成 Redis 集群的配置,进而获得高可用的体验效果。


数据运维技术 » Redis集群以两台机器实现高可用(两台redis做集群)