redis学习之十:集群:redis-cluster

一:集群作用:

    1:主从备份防止主机宕机

    2:读写分离,向master中写数据,在slave中读数据

    3:任务分离,如从服务分别分担备份工作与计算工作

二:主从之间的通信过程:

    

解释:slave启动时自动连上master,master将自己的数据以rdb快照形式给slave,新添的未写入rdb中的数据以aof写入slave。接下来用replicationFeedSlaves进行进行数据备份。

三:主从的拓扑结构:


四:实战:一主两从以星型搭建

        主服务器(6379:禁止rdb,打开aof;从服务器6380:rdb打开,aof禁止;从服务器6381:rdb和aof都禁止(rdb和aof有一个服务器工作即可))

       1,因为我们启动redis的服务时,是通过指定redis.conf文件启动的,所以我们复制两个这个文件:为redis6380.conf,redis6381.conf,并杀死redis的进程

[root @ localhost桌面]#cd / usr / local / redis / ect /
[root @ localhost ect]#cp redis.conf redis6380.conf 
[root @ localhost ect]#cp redis.conf redis6381.conf 
[root @ localhost ect]#pkill -9 redis

    2,修改redis.conf主服务器配置文件(禁止RDB并开启AOF)

    

#save 900 1
#save 300 10
#save 60 10000
appendonly是的

    3,修改redis6380.conf从服务器配置文件(开启RDB并禁止AOF)

pidfile /var/run/redis6380.pid
端口6380
    在redis6380.conf中开启RDB(主服务器中就不用开启了):


节省900 1
节省300 10
节省60万
stop-writes-on-bgsave-error yes
rdbcompression是的
rdbchecksum是的
dbfilename dump6380.rdb
dir / var / redis / rdb
appendonly没有

配置从属:(点击ESC后输入/ slaveof查找)

slaveof localhost 6379#将这个6380端口的redis配置为6379的slave
slave-read-only yes#将这个redis设置为只读

4,修改redis6381.conf这两个从服务器配置文件:(不开启RDB和AOF)

pidfile /var/run/redis6381.pid
港口6381

#save 900 1
#save 300 10
#save 60 10000
appendonly没有
slaveof localhost 6379#将这个6380端口的redis配置为6379的slave
slave-read-only yes#将这个redis设置为只读

此时的Redis集群已经搭建成功,开启这三个服务器即可

(若给主服务器设置密码,相应的从服务器也要密码(不推荐使用密码):

redis.conf:requirepass mima redis6380.conf:masterauth mima)

5,开启这三个服务器即搭建成功

[root @ localhost bin]#redis-server /usr/local/redis/ect/redis.conf 
[root @ localhost bin]#redis-server /usr/local/redis/ect/redis6380.conf 
[root @ localhost bin]#redis-server /usr/local/redis/ect/redis6381.conf 

5,测试:

打开6379端口的主Redis的的客户端:

[root @ localhost bin]#redis-cli
127.0.0.1:6379>集名易庆

打开6380从服务器的客户端:

[root @ localhost桌面]#/ usr / local / redis / bin / redis-cli -p 6380
127.0.0.1:6380> get name ##出现结果yiqing

还可以测试在6380,6381端口写入会出错





阅读更多
换一批

没有更多推荐了,返回首页