前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >3.redis集群部署3主3从

3.redis集群部署3主3从

作者头像
py3study
发布2020-01-07 10:52:43
9310
发布2020-01-07 10:52:43
举报
文章被收录于专栏:python3python3

redis集群部署 

一:安装redis (使用redis3.0.6版本),同《1.redis安装》

1.下载源码

$ tar xzf redis-3.0.6.tar.gz

$ cd redis-3.0.6

$ make

   2、编译完成后,在Src目录下,有四个可执行文件redis-server、redis-benchmark、redis-cli和redis.conf(在上一级目录)。然后拷贝到一个目录下。

mkdir /usr/redis

cp redis-server /usr/redis

cp redis-benchmark /usr/redis

cp redis-cli /usr/redis

cp redis.conf /usr/redis

cd /usr/redis

3.启动redis

./redis-server redis.conf

二:集群搭建

1.准备:

2.安装 支持的插件

A:安装ruby

tar zxvf ruby-2.3.0.tar.gz

cd ruby-2.3.0

./configure

make

sudo make install

B:安装rubygems

tar -zxvf rubygems-2.6.6.tgz

cd rubygems-2.6.6

ruby setup.rb

C、安装redis-3.0.0.gem

gem install ../redis-3.2.1.gem

两台服务器。每台放3个节点。

分别是16和17

另外一台配置相同、

3.节点部署

A.基础文件

cd /usr/local/

mkdir redis-cluster 创建集群目录

cd redis-cluster

mkdir 7003 7004 7005   分别对应节点为7003-7005

B.配置文件复制

cp  /usr/redis/redis.conf  /usr/local/redis-cluster/7003

cp  /usr/redis/redis.conf  /usr/local/redis-cluster/7004

cp  /usr/redis/redis.conf  /usr/local/redis-cluster/7005

cp  /usr/redis/redis-server  /usr/local/redis-cluster/7005

cp  /usr/redis/redis-server  /usr/local/redis-cluster/7004

cp  /usr/redis/redis-server  /usr/local/redis-cluster/7003

C.修改配置文件 redis.conf

daemonize yes redis后台运行

port 7003 端口7003,7004,7005

4.建立集群:

./redis-trib.rb  create --replicas 1 10.0.31.183:7000 10.0.31.183:7001 10.0.31.183:7002 10.0.31.202:7003 10.0.31.202:7004 10.0.31.202:7005

./redis-trib.rb create --replicas 1 10.1.114.17:7000 10.1.114.17:7001 10.1.114.17:7002 10.1.114.16:7003 10.1.114.16:7004 10.1.114.16:7005

问题:

集群没有搭成功;

1.配置文件修改不全问题:

bind 10.1.114.17   对应的ip(10.1.114.16 和10.1.114.17 )

daemonize yes redis后台运行

pidfile /var/run/redis_7000.pid pidfile文件对应7000,7001,7002

port 7000 端口7000,7002,7003

cluster-enabled yes 开启集群 把注释#去掉

cluster-config-file nodes_7000.conf 集群的配置 配置文件首次启动自动生成 7000,7001,7002

cluster-node-timeout 5000 请求超时 设置5秒够了

appendonly yes aof日志开启 有需要就开启,它会每次写操作都菜单记录一条日志

2.没有这个节点

原因:配置文件错误:

修改为 nodes_7000.conf

3.redis连接不上

>>> Creating cluster

[ERR] Sorry, can't connect to node 10.1.114.17:7000

解决方案:

a.添加日志。

在配置文件redis.conf 中添加logfile的地址

logfile "/usr/local/redis-cluster/7000/redis.log"

b.日志显示报错

无法在10.1.114.17上无法连接10.1.114.16:7000

》》》修改配置文件redis.conf

bind 10.1.114.17   只需要绑定本机

4.校验集群部署情况错误:

[root@localhost src]# redis-cli -p 7000 cluster nodes

Could not connect to Redis at 127.0.0.1:7000: Connection refused

5.不是cluster node 错误

a.检查配置文件redis.conf

发现文件中 # cluster-enabled yes   还是被注释,没有开启

》》》去掉# ,改为 cluster-enabled yes

要改redis 主从关系,把篡位的16服务器的主节点用

1。kill -9 ***  进程杀死,17对应服务器自动变 主master

2。./redis-service redis.conf  重新启动16的服务器

默认连接了本机127.0.0.1

用命令

redis-cli -h ip地址 -p 端口

例如:

redis-cli -h 10.1.114.17 -p 7000

查看信息:

代码语言:javascript
复制

16跟17 都启动redis节点 /启动方式如下

cd /usr/local/cluster/7000

redis-server redis.conf

cd /usr/local/cluster/7001

redis-server redis.conf

cd /usr/local/cluster/7002

redis-server redis.conf

ps -ef | grep redis   #查看是否启动成功

netstat -tnlp | grep redis

#可以看到redis监听端口

备注:

1.##启动之后使用命令查看redis的启动情况ps -ef|grep redis

2.区分主从节点命令  redis-cli -p 7000 cluster nodes

3.查看集群信息

    [root@t1 redis-3.0.3]# src/redis-cli -p 6379

    127.0.0.1:6379> cluster info

对于我的目录来说在

代码语言:javascript
复制

cd /root/redis/redis-3.0.6/src

校验方法:判断集群是否部署成功

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档