zoukankan      html  css  js  c++  java
  • redis-cluster(集群)

    redis-cluster(集群)

    简介

    • redis cluster是Redis的分布式解决方案,在3.0版本推出后有效地解决了redis分布式方面的需求,在3.0之前为了解决容量高可用用方面的需求基本上只能通过客户端分片+redis sentinel或者代理(twemproxy、codis)方案解决、redis cluster非常优雅地解决了redis集群方面的问题
    • 功能
      • 高性能
      • 线性扩容
      • 高可用

    搭建redis-cluster集群

    1. 创建6个节点,用于存储数据,信息都除了端口不同都是一样的

      vim redis-7000.conf
      # 插入信息
      
      port 7000
      daemonize yes
      dir "/opt/redis/data"
      logfile "7000.log"
      dbfilename "dump-7000.rdb"
      cluster-enabled yes  					#开启集群模式
      cluster-config-file nodes-7000.conf 	#集群内部的配置文件
      
    2. 启动6个数据库实例

      redis-server redis-7000.conf 
      redis-server redis-7001.conf 
      redis-server redis-7002.conf 
      redis-server redis-7003.conf 
      redis-server redis-7004.conf 
      redis-server redis-7005.conf 
      
    3. 检查其日志和进程状态

      # 查看日志
      cat 7000.log
      
      # 查看redis服务端  进程号
      netstat -tunlp|grep redis
      
      ps -ef |grep redis
      
    4. 开启分配redis集群状态,以及槽位分配,

      • 对redis集群管理的工具有几种,有豆瓣公司开源的codis工具,还有ruby
    5. 准备ruby的编程环境并下载,

      # 1.下载ruby的源码包
      wget https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.gz
      # 2. 解压ruby源码
      tar -xvf ruby-2.3.1.tar.gz
      # 3. cd 到ruby-2.3.1,编译
      ./configure --prefix=/opt/ruby/
      # 4 安装 
      make && make install
      # 将其加入环境变量中
      vim /etc/profile
      插入内容
      export PATH=$PATH:/opt/ruby/bin 
      # 读出该文件,使其生效
      source /etc/profile
      
    6. 安装ruby操作redis模块

      # 1. 下载ruby操作redis的模块
      wget http://rubygems.org/downloads/redis-3.3.0.gem
      # 2. 安装
      gem install -l redis-3.3.0.gem
      # 3. 搜索创建redis集群的命令
      find /opt  -name  redis-trib.rb
      搜索结果:
      /opt/redis-4.0.10/src/redis-trib.rb
      
    7. 一键创建redis集群

      /opt/redis-4.0.10/src/redis-trib.rb  create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005
      # 参数解析
      --replicas  进行身份授权 
      后面的1  代表,每个主节点,只有一个从节点
      
      
      # redis-5.03版本创建集群的命令为下
      redis-cli --cluster create 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 --cluster-replicas 1
      
      
    8. 查看集群节点,是否能正常写入数据

      redis-cli -p 7000 -c
      # 参数解析
      -p   指定数据库端口
      -c   指定开启集群模式
      
    9. 查看集群状态

      redis-cli -p 7000 cluster info  
      
      redis-cli -p 7000 cluster nodes  #等同于查看nodes-7000.conf文件节点信息
      
      集群主节点状态
      redis-cli -p 7000 cluster nodes | grep master
      集群从节点状态
      redis-cli -p 7000 cluster nodes | grep slave
      
    10. 查看集群状态

      [root@localhost /opt/redis/data]#redis-cli -p 7000 cluster info
      cluster_state:ok
      cluster_slots_assigned:16384
      cluster_slots_ok:16384
      cluster_slots_pfail:0
      cluster_slots_fail:0
      cluster_known_nodes:6
      cluster_size:3
      cluster_current_epoch:6
      cluster_my_epoch:1
      cluster_stats_messages_ping_sent:531
      cluster_stats_messages_pong_sent:586
      cluster_stats_messages_sent:1117
      cluster_stats_messages_ping_received:581
      cluster_stats_messages_pong_received:531
      cluster_stats_messages_meet_received:5
      cluster_stats_messages_received:1117
      
      
  • 相关阅读:
    「Luogu2397」 yyy loves Maths VI (mode)
    「Luogu2014」 选课
    「Luogu2972」 [USACO10HOL]岩石和树木Rocks and Trees
    中国剩余定理
    点双连通分量
    Miller_Rabin大质数检验
    manachaer算法
    Kruskal重构树
    世界,你好!
    [Luogu P1450] [HAOI2008]硬币购物 背包DP+容斥
  • 原文地址:https://www.cnblogs.com/yuncong/p/10293579.html
Copyright © 2011-2022 走看看