redis5 集群搭建

单节点;

wget http://download.redis.io/releases/redis-5.0.5.tar.gz

tar xzf redis-5.0.5.tar.gz

cd redis-5.0.5

make

cd src

make install

#默认配置启动

./redis-server

#使用配置文件启动

./redis-server ../redis.conf

 

使用redis的控制台:

./redis-cli

测试安装是否成功

redis检测

 

多节点:

redis要求至少三主三从共6个节点才能组成redis集群

此前准备了两台机器:192.168.132.11、192.168.131.12  本文集群试用三主三从六个节点

安装操作同上

配置操作:

修改redis配置文件redis.conf:

    daemonize yes             # 守护进程模式开启(后台启动)

    bind 0.0.0.0             #默认只监听本机访问也可以将需要访问的IP空格分隔添加在后面,需要注释掉

    requirepass 5555  #建议更改,不更改的话,如果后续要设置密码时,就得一个一个节点的设置过去

    masterauth mastertest   #建议更改,当master服务设置了密码保护时,slav服务连接master的密码

    cluster-enabled yes      #启用集群

    cluster-config-file nodes-6379.conf      #集群节点配置文件

 

 

需要创建三个文件夹为:

     mkdir -p /usr/local/redis-cluster/6379

      mkdir -p /usr/local/redis-cluster/6380

      mkdir -p /usr/local/redis-cluster/6381

 

拷贝配置文件

cp /usr/local/redis-5.0.5/redis.conf /usr/local/redis-cluster/6379/redis_6379.conf

cp /usr/local/redis-5.0.5/redis.conf /usr/local/redis-cluster/6380/redis_6380.conf

cp /usr/local/redis-5.0.5/redis.conf /usr/local/redis-cluster/6381/redis_6381.conf

 

修改配置文件中的port,cluster-config-file,pidfile:

修改标红部份(端口)

port 6379

cluster-config-file nodes-6379.conf

pidfile /var/run/redis_6379.pid

 

改完一台机器上的,其他机器的也就ok了

scp -rp ./redis-cluster/ 192.168.132.11/usr/local/

 

 

修改/etc/security/limits.conf文件,设置nofile 的值(看情况设置)

* soft nofile 65536

* hard nofile 65536

重启生效

nofile数量 ——文件描述符数量:打开现存文件或新建文件时,内核会返回一个文件描述符。读写文件也需要使用文件描述符来指定待读写的文件。

检验:查看redis的pid,执行cat /proc/$PID/limits5

启动redis:

分别使用3个配置文件启动redis

./redis-server /usr/local/redis-cluster/6379/redis_6379.conf

./redis-server /usr/local/redis-cluster/6380/redis_6380.conf

./redis-server /usr/local/redis-cluster/6381/redis_6381.conf

 

设置每个redis节点的密码,每个节点密码需要一致(redis_x.conf中设置了 requirepass 5555 可以忽略):

指定端口连接redis

./redis-cli -p 6381

config set requirepass 5555

 

 

在其它节点上也做上述操作,

 

集群管理器启动:

./redis-cli -a 5555 -cluster create 192.168.132.11:6379 192.168.132.12:6379 192.168.132.11:6380 192.168.132.12:6380 192.168.132.11:6381 192.168.132.12:6381 --cluster-replicas 1

   1) a   #指定集群密码 。

     2) create    #表示创建一个redis集群。

     3) --cluster-replicas 1    #表示为集群中的每一个主节点指定一个从节点,即一比一的复制。

 

遇到Can I set the above configuration?提示时需要输入yes再确认,否则后续连上redis集群,执行set key value就会报错:

 

到此为止集群搭建就结束了

 

懒人外记:

按照上述的redis集群启动模式,得连上n台机器,执行n遍启动操作,不如写一个脚本去统一启动:

 

#!/bin/sh

./redis-server /usr/local/redis-cluster/6379/redis_6379.conf

./redis-server /usr/local/redis-cluster/6380/redis_6380.conf

./redis-server /usr/local/redis-cluster/6381/redis_6381.conf

ssh root@192.168.132.11 "cd /usr/local/redis-5.0.5/src ; ./redis-server /usr/local/redis-cluster/6379/redis_6379.conf ; ./redis-server /usr/local/redis-cluster/6380/redis_6380.conf ; ./redis-server /usr/local/redis-cluster/6381/redis_6381.conf"

./redis-cli -a test --cluster create 192.168.132.11:6379 192.168.132.12:6379 192.168.132.11:6380 192.168.132.12:6380 192.168.132.11:6381 192.168.132.12:6381 --cluster-replicas 1

 

该脚本每ssh一台机器就需要输入一次密码,多了也难搞,可以再配置一个免密登录,可以自行去查看怎么配置,这里就不细写了。

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis是一个开源的内存数据存储系统,常用于缓存、消息队列等场景。Docker是一个容器化平台,可以将应用程序及其依赖项打包成一个独立的容器,方便部署和管理。搭建Redis Docker集群可以提高系统的可用性和性能。 以下是Redis Docker集群搭建的步骤: 1. 安装Docker:首先需要在服务器上安装Docker,可以根据操作系统类型选择相应的安装方式。 2. 创建Docker网络:使用Docker命令创建一个自定义的网络,用于容器之间的通信。例如,可以执行以下命令创建名为"redis-net"的网络: ``` docker network create redis-net ``` 3. 创建Redis配置文件:在本地创建一个目录,用于存放Redis配置文件。在该目录下创建一个名为"redis.conf"的文件,并添加以下内容: ``` bind 0.0.0.0 protected-mode no cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes ``` 4. 创建Redis容器:使用Docker命令创建多个Redis容器,并将它们连接到之前创建的网络中。例如,可以执行以下命令创建3个Redis容器: ``` docker run -d --name redis1 --net redis-net -v /path/to/redis.conf:/usr/local/etc/redis/redis.conf redis redis-server /usr/local/etc/redis/redis.conf docker run -d --name redis2 --net redis-net -v /path/to/redis.conf:/usr/local/etc/redis/redis.conf redis redis-server /usr/local/etc/redis/redis.conf docker run -d --name redis3 --net redis-net -v /path/to/redis.conf:/usr/local/etc/redis/redis.conf redis redis-server /usr/local/etc/redis/redis.conf ``` 5. 创建Redis集群:使用Redis的官方工具"redis-trib.rb"来创建Redis集群。首先需要进入其中一个Redis容器,执行以下命令安装工具: ``` docker exec -it redis1 bash apt-get update apt-get install -y ruby gem install redis ``` 6. 初始化集群:在Redis容器中执行以下命令初始化集群: ``` redis-trib.rb create --replicas 1 <ip1>:<port1> <ip2>:<port2> <ip3>:<port3> ``` 其中,<ip1>:<port1>、<ip2>:<port2>、<ip3>:<port3>分别为三个Redis容器的IP地址和端口号。 至此,Redis Docker集群搭建完成。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值