Redis主从和集群搭建

前期准备

使用的操作系统是os x系统, 已经安装了redis(我这里是使用brew进行安装).

redis主从环境搭建

这里假设搭建一个master, 一个slave的环境(多个slave的环境搭建类似)

  1. /usr/local/etc目录下查找redis的配置文件, redis.conf文件
  2. 拷贝redis.conf文件, 重命名成redis6380.conf
  3. 修改redis6380.conf配置文件中的以下配置:
 port 6380
 slaveof 127.0.0.1 6379
   masterauth <master-password>(如果master主机设置了auth密码则要进行设置)
  1. 分别启动mater和slave, 启动时指定配置文件(不指定默认使用redis.conf)
 redis-server <PATH-TO-REDIS.CONF>/redis.conf   // 启动master
 redis-server <PATH-TO-REDIS6380.CONF>/redis6380.conf // 启动slave

master:


redis-master

slave:


redis-slave
  1. 使用客户端连接redis进行操作, 连接时要指定端口
 redis-cli -p 6379 // 连接到master
 redis-cli -p 6380 // 连接到slave

注意: 默认情况下slave服务只能进行读操作, 要是想让slave也能进行写操作, 则需要修改slave-read-only no, 这样就能对slave进行写操作, 但是对slave的写操作不会同步到master中.

redis集群搭建

  1. 新建3个目录, 目录名是端口号
  2. 每一个目录中都放一份redis.server执行文件(方便后面的执行, 不是必要的)和一份redis.conf配置文件
  3. 修改每个目录中的redis.conf配置文件中的以下属性
cluster-config-file nodes-<port>.conf(只要3个配置的文件名不一样即可)
daemonize yes
cluster-enabled yes
cluster-node-timeout 5000
  1. 进入到每个目录, 使用命令./redis-server redis.conf启动redis
  2. 安装ruby(已经安装的跳过, mac应该是自带ruby的)
  3. 安装redis的ruby模块 [sudo] gem install redis
  4. 从redis的源码中下载src/redis-trib.rb文件(这个ruby用于管理redis的集群, 例如slots的设置)
  5. 启动集群, ruby <redis-trib.rd-path> create <--replicas 1>(用于创建master-slave 模式, 设置每个master有1个slave) 127.0.0.1:7000 127.0.0.1:7001...
  6. 使用redis-cli -p <port>指定任意一个端口, 就可以连接redis的集群了

cluster:

redis-cluster
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容