设为首页 收藏本站
查看: 1061|回复: 0

[经验分享] Redis 3.2.8集群+Sentinel部署

[复制链接]

尚未签到

发表于 2017-12-21 12:58:07 | 显示全部楼层 |阅读模式
  Redis3.2.8集群搭建
  采用官方推荐的三主三从分片方案,本例中所有节点部署在一台主机上。
  软件安装:
  tar zxvf redis-3.2.8.tar.gz
  cd  redis-3.2.8
  make
  make install
  mkdir redis-cluster
  根据端口号,创建六个节点
  mkdir redis-cluser/6379、6380、6381、6382、6383、6384
  拷贝配置文件到各个节点:
  cp redis.conf  redis-cluser/6379、6380、6381、6382、6383、6384
  修改配置文件:
  vim redis-cluser/6379、6380、6381、6382、6383、6384/redis.conf
  port    #端口号
  pidfile #pid文件
  logfile "/data/local/redis-cluster/6379/redis.log"  #日志文件
  cluster-enabled yes  #开启集群模式
  cluster-config-file nodes-6380.conf
  若需要远程连接,需要注释掉bind 127.0.0.1 改为 bind 0.0.0.0
  启动:redis-server 6379、6380、81、82、83、84/redis.conf
  安装redis-trib.rb工具:
  安装依赖组件:yum install ruby ruby-devel rubygems rpm-build
  gem install redis
  # redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384
  创建集群,每个节点有一个从节点
  

>>> Creating cluster  

>>> Performing hash slots allocation on 6 nodes...  
Using
3 masters:  

127.0.0.1:6379  
127.0.0.1:6380
  
127.0.0.1:6381
  
Adding replica 127.0.0.1:6382 to 127.0.0.1:6379
  
Adding replica 127.0.0.1:6383 to 127.0.0.1:6380
  
Adding replica 127.0.0.1:6384 to 127.0.0.1:6381
  
M: 46af51f0d193f3e76b322537bc11f9570ca13930 127.0.0.1:6379
  slots:0-5460 (5461 slots) master
  
M: 3caa86acc90199cd882475dc08622fdd522cf9a8 127.0.0.1:6380
  slots:5461-10922 (5462 slots) master
  
M: 01152da2da00e48384714c609241d2f83ca7bdc9 127.0.0.1:6381
  slots:10923-16383 (5461 slots) master
  
S: 825f0c904c8337d6eb8b5685e9b46fe36f7e9e99 127.0.0.1:6382
  replicates 46af51f0d193f3e76b322537bc11f9570ca13930
  
S: 0c01889b111948f334950e84aea677658d91f1bc 127.0.0.1:6383
  replicates 3caa86acc90199cd882475dc08622fdd522cf9a8
  
S: 567f1760b13de130a63396cc4e6983af5f6bca24 127.0.0.1:6384
  replicates 01152da2da00e48384714c609241d2f83ca7bdc9
  
Can I set the above configuration? (type 'yes' to accept):
  

  yes:
  

>>> Nodes configuration updated  

>>> Assign a different config epoch to each node  

>>> Sending CLUSTER MEET messages to join the cluster  
Waiting
for the cluster to join..  

>>> Performing Cluster Check (using node 127.0.0.1:6379)  
M: 46af51f0d193f3e76b322537bc11f9570ca13930
127.0.0.1:6379  slots:0
-5460 (5461 slots) master1 additional replica(s)  
S: 0c01889b111948f334950e84aea677658d91f1bc
127.0.0.1:6383  slots: (0 slots) slave
  replicates 3caa86acc90199cd882475dc08622fdd522cf9a8
  
S: 825f0c904c8337d6eb8b5685e9b46fe36f7e9e99
127.0.0.1:6382  slots: (0 slots) slave
  replicates 46af51f0d193f3e76b322537bc11f9570ca13930
  
S: 567f1760b13de130a63396cc4e6983af5f6bca24
127.0.0.1:6384  slots: (0 slots) slave
  replicates 01152da2da00e48384714c609241d2f83ca7bdc9
  
M: 3caa86acc90199cd882475dc08622fdd522cf9a8
127.0.0.1:6380  slots:
5461-10922 (5462 slots) master1 additional replica(s)  
M: 01152da2da00e48384714c609241d2f83ca7bdc9
127.0.0.1:6381  slots:
10923-16383 (5461 slots) master1 additional replica(s)  
[OK] All nodes agree about slots configuration.
  

>>> Check for open slots...  

>>> Check slots coverage...  
[OK] All
16384 slots covered.  

  注:使用redis-trib.rb create --replicas 1 这种方式创建主从集群的前提是,至少有6个节点,3主3从
  sentinel
  sentinel.conf:
  注释默认相关配置,添加master监控:
  

sentinel monitor master1 127.0.0.1 6379 2  
sentinel down
-after-milliseconds master1 60000  
sentinel failover
-timeout master1 180000  
sentinel parallel
-syncs master1 1  

  
sentinel monitor master2
127.0.0.1 6380 2  
sentinel down
-after-milliseconds master2 60000  
sentinel failover
-timeout master2 180000  
sentinel parallel
-syncs master2 1  

  
sentinel monitor master3
127.0.0.1 6381 2  
sentinel down
-after-milliseconds master3 60000  
sentinel failover
-timeout master3 180000  
sentinel parallel
-syncs master3 1  

  #redis-server sentinel.conf --sentinel &
  

98310:X 21 Apr 09:50:47.694 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
  
98310:X 21 Apr 09:50:47.695 # Sentinel>  
98310:X 21 Apr 09:50:47.695 # +monitor master master2 127.0.0.1 6380 quorum 2
  
98310:X 21 Apr 09:50:47.695 # +monitor master master3 127.0.0.1 6381 quorum 2
  
98310:X 21 Apr 09:50:47.695 # +monitor master master1 127.0.0.1 6379 quorum 2
  

  配置后台启动:
  sentinel.conf,添加:
  

daemonize yes  

  启动:
  #redis-server sentinel.conf --sentinel
  ========================华丽分割======================
  Redis 3.2 1主1从配置:
  主:
  cluster-enabled no
  logfile /data/local/redis-cluster/6379/redis.log
  requirepass password
  从:
  cluster-enabled no
  logfile /data/local/redis-cluster/6380/redis.log
  requirepass password
  slaveof 127.0.0.1 6379
  masterauth password   必须要注定同步master时的认证密码,否则同步失败。
  启动redis,查看主从状态:
  

#redis-cli -p 6380  
>auth password
  
>info
  

  

  
...
  
# Replication
  
role:slave
  
master_host:127.0.0.1
  
master_port:6379
  
master_link_status:up
  
...
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-426433-1-1.html 上篇帖子: [redis] linux下哨兵篇(3) 下篇帖子: Spring Boot 入门(二)Redis的配置与使用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表