Centos7.6环境搭建redis集群,主从同步(二)

、redis单节点会有一定的风险,今天写一下redis集群的搭建

优点:
支持主从复制,主机会自动将数据同步到从机,可以进行读写分离。
为了分载Master的读操作压力,Slave服务器可以为客户端提供只读操作的服务,写服务仍然必须由Master来完成。
Slave同样可以接受其它Slaves的连接和同步请求,这样可以有效的分载Master的同步压力。
Master Server是以非阻塞的方式为Slaves提供服务。所以在Master-Slave同步期间,客户端仍然可以提交查询或修改请求。
Slave Server同样是以非阻塞的方式完成数据同步。在同步期间,如果有客户端提交查询请求,Redis则返回同步之前的数据。

、首先我们在服务器上安装redis,详情请参考我之前的文章
链接:https://blog.csdn.net/weixin_44271364/article/details/103810961

、redis集群需要至少要三个master节点,我们这里搭建三个master节点,并且给每个master再搭建一个slave节点,总共6个redis节点,这里用三台机器部署6个redis实例,每台服务器一主一从,搭建集群的步骤如下:

1. 在服务器上创建文件夹rediscluster(路径自己定,我这里是创建在/root目录),然后在其下面分别创建2个文件夾如下,第二台服务器对应创建8002、8005,第三台服务器对应创建8003、8006
(1)、mkdir /root/rediscluster
(2)、mkdir 8001、 mkdir 8004
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.把之前的redis.conf配置文件copy到8001-8006目录下,修改如下内容
(1)、daemonize yes
(2)、port 8001(分别对每个机器的端口号进行设置)
(3)、dir /root/rediscluster/8001/(指定数据文件存放位置,必须要指定不同的目录位置,不然会丢失数据)
(4)、cluster-enabled yes(启动集群模式)
(5)、cluster-config-file nodes-8001.conf(集群节点信息文件,这里800x最好和port对应上)
(6)、cluster-node-timeout 5000 (超时时间默认为15秒,可改可不改)
(7)、# bind 127.0.0.1(去掉bind绑定访问ip信息)
(8)、protected-mode no (关闭保护模式)
(9)、appendonly yes
如果要设置密码需要增加如下配置:
(10)、requirepass 密码 (设置redis访问密码)
(11)、masterauth 密码 (设置集群节点间访问密码,跟上面一致)
3.把修改后的redis.conf,copy到8002-8006,修改第2、3、5项里的端口号,修改为其对应的端口号,第一台服务器是8001,8004,第二台服务器是8002,8005,第三台服务器是8003,8006,配置文件修改完成后,就可以启动redis了
启动命令:(启动时选择各自对应的路径,修改8001为其他路径即可)

/root/redis-5.0.5/src/redis-server   /root/rediscluster/8001/redis.conf

Centos7.6环境搭建redis集群,主从同步(二)_第1张图片
Centos7.6环境搭建redis集群,主从同步(二)_第2张图片
可以通过ps -ef|grep redis来检查是否启动成功
在这里插入图片描述
四、六个redis服务启动完成了,但是相互之间还未建立关系,用redis-cli创建整个redis集群,代表为每个创建的主服务器节点创建一个从服务器节点
密码:redis.config文件中requirepass 配置的密码
ip根据自己的服务器进行替换
执行命令:
/root/redis-5.0.5/src/redis-cli -a 密码 --cluster create --cluster-replicas 1 192.168.0.61:8001 192.168.0.62:8002 192.168.0.63:8003 192.168.0.61:8004 192.168.0.62:8005 192.168.0.63:8006
执行之后会提示,要不要用上面给的配置,选择yes就可以了
在这里插入图片描述
、查看集群信息:cluster info,就可以看到一共有三个cluster,有六个节点
Centos7.6环境搭建redis集群,主从同步(二)_第3张图片
、查看节点列表:cluster nodes
在这里插入图片描述
生成的长串是唯一标识,从库会根据唯一标识确定跟的是哪个主库,在第四步的时候(如果有多台服务器)redis会自动避免主从都在同一台服务器上

到这里redis三个master节点的集群就搭建完成了。

你可能感兴趣的:(Redis,linux,redis,linux)