redis启动指定配置文件_一起学redis之redis cluster部署

之前我们已经安装过redis了,现在我们来搭建一个redis cluster集群与分区。由于并没有这么多服务器,所以搭建的是一个三主三从伪集群。集群的ip地址统一为:192.168.0.160,端口分别为:7001-7006

配置文件修改

7001节点配置

1、进入到redis安装目录,创建配置文件

cd /usr/local/redis-5.0.3
mkdir -p cluster/7001
cd cluster/7001/
cp ../../redis.conf ./

2、修改配置文件

vim redis.conf

修改配置信息如下

#注释掉redis的监听地址,使其可以使用其他地址访问
#bind 127.0.0.1
#不开启保护模式
protected-mode no
#修改redis端口
port 7001
#redis后台运行
daemonize yes
#修改pid文件,使pid文件唯一
pidfile /var/run/redis_7001.pid
#开启集群功能
cluster-enabled yes

其他的暂时不修改

7002节点配置

1、复制7001节点配置

cd ../
cp -r 7001/ 7002

2、修改7002节点配置

vim 7002/redis.conf

修改内容如下

port 7002
pidfile /var/run/redis_7002.pid

其他节点配置

其他节点配置参照7002节点配置,修改相应的端口,pid文件名即可,创建完,目录如下

8e419ff26223e7ef892dec5382ca2305.png

启动服务

1、编写启动脚本

vim start.sh

内容如下

cd 7001/
redis-server ./redis.conf
cd ../7002/
redis-server ./redis.conf
cd ../7003/
redis-server ./redis.conf
cd ../7004/
redis-server ./redis.conf
cd ../7005/
redis-server ./redis.conf
cd ../7006/
redis-server ./redis.conf

2、修改启动脚本权限

chmod u+x start.sh

3、启动

sh start.sh

启动集群

1、启动脚本

redis-cli --cluster create 192.168.0.160:7001 192.168.0.160:7002 192.168.0.160:7003 192.168.0.160:7004 192.168.0.160:7005 192.168.0.160:7006 --cluster-replicas 1

说明:

  1. --cluster: 指定操作的是集群
  2. create: 创建集群
  3. 192.168.0.160:7001 192.168.0.160:7002等等:指定集群节点的地址与ip
  4. --cluster-replicas:指定每个主节点带一个从节点

2、启动选择

48fc79c01f94e9ae6024a7993780ad8f.png

输入: yes 创建集群

集群操作

1、连接集群

redis-cli -h 192.168.0.160 -p 7001 -c

说明:redis地址可以指定集群中任意可用的节点,对数据库进行操作,会切换到对应的主节点

-c: 指定连接集群

2、查看集群信息

cluster info

d7bd50ae55ecb75782392e20b0808b9e.png

3、查看集群节点

cluster nodes

0dad7e7b3038e93e4d5d3c48d34c53dc.png

3、查看主从

80d610365646623cec42a5846062e3c3.png

4、操作数据

set name:1 test

2d8cdc38ec709fbf4d991608ae92fef9.png

客户端自动move连接到7003这个端口的主节点

添加一主一从节点

1、主节点配置

参照配置文件修改章节,添加7007节点配置文件,修改配置文件内容。修改的内容如下

port 7007
pidfile /var/run/redis_7007.pid

2、启动主节点

cd 7007
redis-server ./redis.conf

3、主节点加入集群

redis-cli --cluster add-node 192.168.0.160:7007 192.168.0.160:7004

9e99ef8242ac81bae0305f44c0b687cb.png

说明:

--cluster:集群操作

add-node: 增加节点操作

192.168.0.160:7007: 新增节点的地址端口

192.168.0.160:7004:要加入集群的节点地址端口(集群中任意可以节点地址端口)

4、连接到集群,查看节点信息

redis-cli -h 192.168.0.160 -p 7001 -c
cluster nodes

5002299df7e3669afa2f11f601749580.png

说明 7007已经作为主节点加入集群了

5、为7007节点分配槽点

只有为节点分配了槽点,节点才能储存数据

redis-cli --cluster reshard 192.168.0.160:7001

说明:

--cliuster: 集群操作

reshard: 重新分区

192.168.0.160:7001:集群中任意可用节点地址端口

def1e0d2e6c5479d666699748cd80725.png

此处的3000指定要重新分区的槽点数(redis总计槽点16384)

f876e120f33a0bcef766a36dccb59d17.png

指定接收槽点的节点,这里指定7007节点的运行id

355efc8e4c5c7d9f3461d19cbe066107.png

5af33a09b1af6880c9e9556d3fe384a6.png

指定槽点的源节点,all指定全部主机节点(只有主机节点存储槽点)。或者一个一个指定要从哪些主节点分配,输入完成后输入done

bbaba4a1e6ae0af4d5e858ad2438f50f.png

输入 yes 执行重新分区

6、再次查看集群节点信息

91d09ad98c12f2feedc39a9223767423.png

7007节点已分配槽点

7、从节点配置

参照配置文件修改章节,添加7008节点配置文件,修改配置文件内容。修改的内容如下

port 7008
pidfile /var/run/redis_7008.pid

8、启动从节点

cd 7008
redis-server ./redis.conf

9、从节点加入集群

redis-cli --cluster add-node 192.168.0.160:7008 192.168.0.160:7001 --cluster-slave --cluster-master-id b395d49fdb0e3675770723cd4948c0861a816577

说明:

--cluster: 集群操作

add-node: 添加节点

192.168.0.160:7008: 新增节点

192.168.0.160:7001: 集群中可用节点

--cluster-slave 添加的为从节点

--cluster-master-id: 为从节点指定主节点

b395d49fdb0e3675770723cd4948c0861a816577: 主节点运行编号

10、查看集群节点信息

redis-cli -p 7001 -c
cluster nodes

d7524d7bd859e3218b5e5b6da0f9409b.png

7008节点已加入集群,并且作为7007的从节点

高可用性与容灾

1、模拟节点7007宕机

0eb3a07fbae5f7e6ee89540d1dabbcab.png

2、查看集群节点信息

bdb9b4769d6788155b04cc0d2a7d10c5.png

7007已经连接断开,7008(之前7007的从节点)变成了主节点

3、操作集群

aef852f46028da9c1f5cfd7540075370.png

集群可用

4、再次启动7007

08d13ce6b472fdade65b753f175aaa46.png

5、查看集群信息

e401b56d940cb4648161d204962b514b.png

7007加入了节点,并且成为了7008的从节点

6、模拟7007、7008都宕机了

5e9218795f32b5c63a19424c7247dbae.png

7、再次查看集群信息

21ed81fd7d96a47e414a466420c6bde6.png

某个分片的节点都宕机了,对redis操作,提示集群宕机了

8、重启7007

ae3602d27527f3926d6d25ee9ee00cca.png

9、再次查看

ee293b3f3d5d0d0c539d616bf65a7c50.png

虽然从节点起来了,但是集群还是宕机的

10、启动7008

1263f884e8b99aca77c70b445339b9c0.png

11、查看集群

fce0ae2314241248fbe6df6ca0628181.png

此时集群已经可以用了

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值