安装环境CentOS Linux release 7.5.1804 (Core)

如果服务器没有连接网络,请按步骤自行百度其离线方式

话不多说,开整!!!


一、安装redis

#下载至/home/install(或windows系统下载后上传)mkdir /usr/local/installcd usr/local/installwget http://124.205.69.171/files/6160000006F201F1/download.redis.io/releases/redis-4.0.11.tar.gz#解压tar -zxvf redis-4.0.11.tar.gz #移动mv redis-4.0.11 /usr/local/redis-4.0.11#编译安装cd /usr/local/redis-4.0.11make && make install

如果报没有gcc的错:

下载gcc所有依赖:

rpm  -ivh  *.rpm --nodeps --force

zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录

执行:make MALLOC=libc


二、配置六个redis服务(官方建议3主3从)

1.创建集群目录

mkdir /usr/local/redis-cluster/

cd  /usr/local/redis-cluster/

mkdir 7001

mkdir 7002

mkdir 7003

mkdir 7004

mkdir 7005

mkdir 7006

2.修改配置文件

cd  /usr/local/redis-cluster/

    cp /usr/local/redis-4.0.11/redis.conf  ./7001/redis.conf

    vim ./7001/redis.conf

    #找到如下KEY,放开注释,修改值内容

    bind 0.0.0.0#不限制访问ip和远程连接

    protected-mode no#保护模式

    port 7001 #修改端口号 

    daemonize yes#后台运行线程

    pidfile /var/run/redis_7001.pid #守护进程文件

    dbfilename dump7001.rdb#缓存持久存储文件名称

    dir /usr/local/redis-cluster/7001/#db文件存放路径

    appendonly yes#开启日志实时持久

    appendfilename "appendonly7001.aof"#日志名称

    cluster-enabled yes#开启集群

    cluster-config-file nodes_7001.conf#集群节点文件

    cluster-node-timeout 15000#集群通信超过该时长视为挂掉,单位毫秒

3.拷贝配置文件

cd  /usr/local/redis-cluster/

    cp ./7001/redis.conf ./7002/redis.conf

    cp ./7001/redis.conf ./7003/redis.conf

    cp ./7001/redis.conf ./7004/redis.conf

    cp ./7001/redis.conf ./7005/redis.conf

    cp ./7001/redis.conf ./7006/redis.conf

4.手工修改配置文件

    vim ./7002/redis.conf

    :%s/7001/7002/g#所有7001的字符串替换为7002

               .

               .

               .

    vim ./7006/redis.conf

    :%s/7001/7006/g#所有7001的字符串替换为7006


三、安装redis依赖(ruby)

1.安装依赖包

    yum install -y gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison sqlite-devel iconv-devel

2.安装 rvm

    curl -L get.rvm.io | bash -s stable

3.拷贝中间红框中的执行

4.再次安装rvm(命令同上:curl -L get.rvm.io | bash -s stable )

安装成功,黄字提示请把用户添加到rvm用户组(执行)

    usermod -G  rvm root

5.添加生效指令

    echo "source /etc/profile.d/rvm.sh" >> ~/.bashrc && source /etc/profile.d/rvm.sh

6.安装ruby(等得有点久,不要慌,出现下图就可以了)

    rvm install ruby

7.安装ruby与redis接口

    gem install redis

    yum install rubygems


四、启动redis并创建集群

1.启动所有的redis

cd  /usr/local/redis-cluster/
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7001/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7002/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7003/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7004/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7005/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7006/redis.conf

2.创建测试用集群(如redis需要设置密码或有项目需要连接集群-->见六、实战)

    /usr/local/redis-4.0.11/src/redis-trib.rb create --replicas 1 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 127.0.0.1:7006

3.测试验证

随便链接一个节点,我连接的是7001,可以退出连接其他节点去取值(这里就不测试了)


五、报错处理:

重新编译redis,删除7001-7006文件夹下除redis.conf之外的文件,然后gem install redis,再次执行即可

如果使用阿里云,可能提示can not connect ... 请配置安全组,放开7001-7006端口

如果一直停留在join....或者使用代码连接上不,请关闭防火墙或配置安全规则,然后打开集线端口(redis端口+10000即[17001-17006])或者移步实战应用.


六、实战应用(设置密码并开启集群模式)

1.如果用127.0.0.1进行过测试,请killall redis-server重新编译redis,删除7001-7006文件夹下除redis.conf之外的文件,然后gem install redis(没有开启过集群模式请移步2.↓)

2.在7001-7006文件夹下的所有redis.conf文件中放开requirepass属性的注释,然后设置想要的密码

3.启动所有的redis

#!/bin/sh
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7001/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7002/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7003/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7004/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7005/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7006/redis.conf

4.修改gems工具client.rb参数

找到你们自己本地的client.rb文件(我的是/usr/local/ruby/lib/ruby/gems/2.2.0/gems/redis-4.0.1/lib/redis/client.rb)

进入该文件夹-->vim ./client.rb   修改创建集群时的连接密码如"admin",注意看图,然后报存!

4.开启集群模式(替换黑色字体为你的外网或项目能访问的ip每个地址之间有一个空格)

/usr/local/redis-4.0.11/src/redis-trib.rb create --replicas 1 yoursIP:7001 yoursIP:7002 yoursIP:7003 yoursIP:7004 yoursIP:7005 yoursIP:7006

中间需要输入一次yes,出现下图就成功了,附赠redis保存错误的截图(相信我只是附赠...)

保存失败(集群模式,连接请使用集群连接参数-c)

最后使用代码连接测试一波,完美!!!

七、开机启动

mkdir /usr/local/redis-cluster/script

cd /usr/local/redis-cluster/script/

1.编写 startAll.sh

vim startAll.sh

#!/bin/sh
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7001/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7002/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7003/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7004/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7005/redis.conf
/usr/local/redis-4.0.11/src/redis-server /usr/local/redis-cluster/7006/redis.conf

2.编写 stopAll.sh

vim stopAll.sh

#!/bin/sh
/usr/local/redis-4.0.11/src/redis-cli -c -a yourPassword -p 7001 shutdown
/usr/local/redis-4.0.11/src/redis-cli -c -a yourPassword -p 7002 shutdown
/usr/local/redis-4.0.11/src/redis-cli -c -a yourPassword -p 7003 shutdown
/usr/local/redis-4.0.11/src/redis-cli -c -a yourPassword -p 7004 shutdown
/usr/local/redis-4.0.11/src/redis-cli -c -a yourPassword -p 7005 shutdown
/usr/local/redis-4.0.11/src/redis-cli -c -a yourPassword -p 7006 shutdown

3.编写restart.sh

vim restart.sh
#!/bin/sh
systemctl stop redis-cluster
systemctl start redis-cluster

4.改变权限

cd /usr/local/redis-cluster/script/

chmod 777 ./*.sh

5.编写自启服务

cd /usr/lib/systemd/system/

vim redis-cluster.service

添加内容如下

[Unit]
Description=redis-cluster
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/redis-cluster/script/startAll.sh
ExecStop=/usr/local/redis-cluster/script/stopAll.sh
ExecReload=/usr/local/redis-cluster/script/restart.sh
[Install]
WantedBy=multi-user.target

改变权限

chmod 777 redis-cluster.service

进程服务重加载

systemctl daemon-reload

开机启动集群

systemctl enable redis-cluster.service

启动集群

systemctl start redis-cluster.service

关闭集群

systemctl stop redis-cluster.service

重启集群

systemctl restart redis-cluster.service

好啦,感谢阅读,欢迎转载,转载还请注明原出处...

感谢七脉本文参考原地址:https://www.cnblogs.com/zwcry/p/9174233.html

Redis集群cluster环境(快速搭建过程10分钟)相关推荐

  1. Redis集群的原理和搭建

    Redis集群的原理和搭建 前言 Redis 是我们目前大规模使用的缓存中间件,由于它强大高效而又便捷的功能,得到了广泛的使用.单节点的Redis已经就达到了很高的性能,为了提高可用性我们可以使用Re ...

  2. Redis集群--Cluster--故障转移的过程(原理)

    原文网址:Redis集群--Cluster--故障转移的过程(原理)_IT利刃出鞘的博客-CSDN博客_redis集群故障转移 简介 本文介绍Redis集群(Cluster)的故障转移的流程. 故障发 ...

  3. Redis集群生产环境搭建,主从搭建,动态增删步骤

    文章目录 1.解压安装初始化 2.修改所有单台redis的配置文件redis.conf 2.启动全部6台redis单机 3.组成集群 4.增加主节点7006 5.新增从节点->7007作为主机7 ...

  4. Redis集群Cluster部署

    这篇Redis 集群部署笔记参考的书籍资料是: <Redis入门指南>第二版,作者:李子骅 第8章 <Redis开发与运维> 作者:付磊 第10章 以下是学习笔记,记录了Red ...

  5. 分布式Redis集群--Cluster架构

    Cluster架构 Redis哨兵与Cluster集群模式对比 1. 哨兵模式 Redis3.0之前一般是通过哨兵工具来监测master节点的状态,若master节点宕机,则哨兵集群会进行主从切换,从 ...

  6. mysql windows集群_Mysql集群windows服务器版搭建过程

    此文就聊聊在windows服务器上搭建集群遇到的一些问题,具体的安装和配置解释我就不赘述了.供后续遇到问题的朋友们可以更快的找到问题所在,直接搞定以便避免占用太多不必要的时间. 服务器版本winsev ...

  7. Redis集群读写分离架构搭建以及主从数据连通验证(附加集群口令认证以及Redis端口6379释放)

    1. 先在两台主机上装好Redis 如果这部分工作还没有准备好的话,可以看我的另一篇博客. 2. 设置主从节点以及从节点只读(实现读写分离) 2.1 配置slave节点作为master的从机,打开/e ...

  8. 达梦数据共享集群(DSC)---搭建过程

    一.简介 达梦数据共享集群(DSC)允许达梦数据库实现在一组集群服务器上运行任何程序包,而客户应用不必作任何更改. 这种体系提供了最高级别的可用性和最灵活的可伸缩性.如果出现集群其中一个服务器失败,达 ...

  9. nginx集群_windows环境下搭建简单Nginx+Tomcat集群

    通俗点将,负载均衡就是因为访问流量太大,导致项目访问不流畅.甚至宕掉,所以通过一种分流的方式来缓解这种情况. 一. 工具 nginx-1.8.0 apache-tomcat-6.0.33 二. 目标 ...

最新文章

  1. golang垃圾回收概述
  2. bootstrap table教程--使用入门基本用法
  3. 鸿蒙os即将升级,央视爆料鸿蒙OS即将升级,荣耀智慧屏强大自研开启国货新时代...
  4. Springboo零配置原理
  5. LINUX下配置bashrc文件/ PATH环境变量修改/别名/提示符
  6. 宝塔清mysql主从日志_宝塔面板Mysql主从日志文件mysql-bin文件清除方法
  7. 12月9日 perform使用入门
  8. Android Drawable绘图学习笔记
  9. azure云数据库_使用Azure Active Directory和Azure SQL数据库
  10. Linux 命令行 Tricks
  11. 搭载敏捷飞天底座 阿里云专有云敏捷版全面升级 | 凌云时刻
  12. win10显示rpc服务器不可用,多种方法解决Win10专业版RPC服务器不可用的方法
  13. 哔哩哔哩2020届秋招数据分析师面试第一轮(2019.8.8)
  14. n维椭球体积公式_物质的量浓度公式如何应用
  15. 计算机保研面试 / 考研复试常见问题整理
  16. android 仿qq 功能,Android仿QQ、新浪相册的实现
  17. Dotween : Look rotation viewing vector is zero
  18. L-TAGE预测器 “A 256 Kbits L-TAGE branch predictor”
  19. 获得网易云音乐歌曲播放的url
  20. pkpm弹性时程分析计算书怎么出_【原创总结】结构菜鸟浅谈为何进行弹性时程分析(附操作详图)...

热门文章

  1. 简单三步创建文字水彩肖像
  2. Web基础知识之HTTP协议
  3. ORACLE-024:列行转换、多行合并
  4. java中response.setHeader()不生效
  5. 索智SC8600介绍
  6. java xml设置xsd_Eclipse引用XSD实现XML配置文件提示标签的方法
  7. 亚马逊测评技术怎么样?到底能不能做?赚钱吗?
  8. Swagger2 进行分组
  9. 基于树莓派的Lede系统安装
  10. Mysql中实现全外连接