Ubuntu 18.04 配置redis集群

发布网友

我来回答

1个回答

热心网友

首先,更换服务器源至最新的阿里云源。

其次,更新源后,安装redis服务。

为了模拟集群环境,本次操作在一台虚拟机上开启多个redis服务。在真实环境中,通常一台服务器加一台redis。

创建一个集群目录,随后创建六个文件夹存放六个redis包。

将redis.conf文件复制至每个文件夹,并针对每个服务修改配置文件。

关键修改包括:

# redis后台运行

# 指定运行的端口号,对应每个服务

# 设置只接受特定IP请求

# 指定数据文件存放位置,确保不同目录,以防数据丢失

# 启用集群模式

# 配置集群启动自动创建的文件

# 设置集群超时时间,节点超时即视为宕机

# 开启aof持久化模式,确保数据安全

配置完成后,依序启动六个redis服务,并检查启动状态。

启动成功后,使用redis-cli配置集群。

通过客户端连接集群。

集群原理解析:

1. 集群启动成功后,自动在节点间分片数据,即使节点宕机集群仍能运行,但大面积宕机会导致集群无法使用。

2. 数据切分至多个redis节点,确保数据分布均匀。

3. 每个节点建立两个tcp连接,一个用于与客户端交互(如7001,7002),一个用于节点间通讯(客户端端口号+10000,如17001,17002)。

4. redis集群使用哈希槽进行数据分片,整个集群共有16384个slot,决定key存放位置的算法为crc16(key)/16384。

5. 集群中有三个主节点时,哈希槽分配如下:

节点A分配0-5500

节点B分配5501-11000

节点C分配11001-16384

增加或删除节点无需停机,操作简单且高效。

6. 每个主节点拥有n个从节点,如7001主节点连接7004从节点,若7001挂掉,7004会自动升为主节点,保障集群正常运行。

集群整体设计确保数据高可用性与服务稳定运行。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com