redis集群搭建(六个节点,三主三从)

近期对redis集群进行了搭建,花了很多时间,遇到了一些坑,并进行总结。
工具:使用xshell,多窗口同时进行,比较方便。

一、安装
  1. 准备六台CentOS服务器,创建Redis安装目录:/yuanben
  2. 上传redis安装包到安装目录:/yuanben
  3. 每台服务器安装GCC, 用于编译程序:
    yum -y install gcc
  4. 解压:tar -zxvf redis-4.0.9.tar.gz
  5. 进入文件夹 cd redis-4.0.9
  6. make 编译
  7. 进入src目录 cd src
  8. make install
二、配置
  1. 在每个节点的Redis安装目录创建redis-cluster目录,并在redis-cluster目录下面创建etc,bin目录
    cd /yuanben
    mkdir redis-cluster
    cd redis-cluster
    mkdir etc
    mkdir bin

  2. 进入redis目录,将redis目录下的 redis.conf 复制到 /yuanben/redis-cluster/etc下
    cp redis.conf /yuanben/redis-cluster/etc

  3. 进入redis目录下的src目录,复制相关启动脚本到/yuanben/redis-cluster/bin下
    cp mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-server /yuanben/redis-cluster/bin

  4. 启动测试 (指定配置文件)
    /yuanben/redis-cluster/bin/redis-server /yuanben/redis-cluster/etc/redis.conf

  1. 修改配置文件

修改 daemonize yes #后台启动
appendonly yes #开启aof模式
aof策略配置:
appendfsync always
appendfsync everysec
appendfsync no
修改 dir /yuanben/redis-cluster/etc #数据文件存放路径
端口修改:port 6379 可以修改成其他端口(也可以不改)
bind 本机IP (一定要改,每台机器都改成自己的IP地址)
cluster-enable yes 开启集群模式
cluster-config-file nodes-6379.conf 指定集群配置文件
cluster-node-timeout 15000 超时时间
cluster-require-full-coverage no (一定要改)

建议:用vim编辑不是那么方便,将redis.config 复制到本机,用其它软件修改后,再复制到跳板机上传,并copy到其它几台服务器。

三、集群设置
  1. 安装ruby环境(redis 集群依赖ruby)
    yum -y install ruby
    yum -y install rubygems

gem install redis 这里不会成功
这里很关键,参考步骤五:ruby安装

  1. 分别启动6个redis实例
    /yuanben/redis-cluster/bin/redis-server /yuanben/redis-cluster/etc/redis.conf

  2. 通过 ps -ef | grep redis

  3. 设置redis开机启动
    编辑/etc/rc.local文件,追加:
    /yuanben/redis-cluster/bin/redis-server /yuanben/redis-cluster/etc/redis.conf
    ****注意检查/ect/rc.d/rc.local是否有可执行权限,没有的话,执行 chomd a+x /ect/rc.d/rc.local
    ll命令,显示蓝色代表有权限

  4. 配置集群策略:
    在任意一个节点上,进入redis的安装目录的src目录下 执行redis-trib.rb命令
    ./redis-trib.rb create --replicas 1 172.16.1.14:7379 172.16.1.15:7379 172.16.1.16:7379 172.16.1.17:7379 172.16.1.18:7379 172.16.1.19:7379

replicas后面的 1 代表一主一从

cd /yuanben/soft/redis-4.0.9/src/
./redis-trib.rb create --replicas 1 192.168.0.11:6379 192.168.0.12:6379 192.168.0.13:6379 192.168.0.14:6379 192.168.0.15:6379 192.168.0.16:6379
最后:提示输入:yes
yes

四、测试

redis-cli -c -h 172.16.1.14 -p 7379 (-c 表示集群模式)

进入路径 cd /yuanben/redis-cluster/bin/
redis-cli -c -h 192.168.0.11 -p 6379

命令:info 查看redis信息
命令:cluster nodes 查看集群信息
命令:set name zh get name

这里成功后,也可以下载安装redisManager进行操作或查看

五、ruby 安装

更新CURL:
yum update -y nss curl libcurl
上传文件至/yuanben,授权文件权利,并拷贝到其它几台服务器,最后执行rvm-installer.sh,安装 rvm
chmod a+x rvm-installer.sh
/yuanben/rvm-installer.sh

更换RVM源:
gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/

RVM安装完成后执行如下命令安装ruby:

source /usr/local/rvm/scripts/rvm

rvm list known (可选,查看可按照的ruby版本)

rvm install 2.4.0 --disable-binary

rvm use 2.4.0 --default

rvm remove 2.0.0 (可选,可以不用删除)

ruby --version

最后:
gem install redis

六、一些命令

pwd 显示当前所在路径

把redis安装包复制到12服务器的路径/yuanben/soft/下

scp redis-4.0.9.tar.gz [email protected]:/yuanben/soft/ 
scp redis-4.0.9.tar.gz [email protected]:`pwd` 

vim 文件后,查找功能,使用 斜杠,/192 搜索192相关内容
给文件赋予权限 chmod a+x /etc/rc.d/rc.local

七、截图
ryby安装01.png

单机版redis启动测试.png
gem install redis安装.png
赋予可执行文件权限01.png
赋予可执行文件权限02.png
集群节点显示.png
info命令-集群节点.png
集群搭建成功测试02.png
集群搭建成功测试03.png

你可能感兴趣的:(redis集群搭建(六个节点,三主三从))