俩台服务器搭建redis集群5.0.4
俩台服务器搭建redis集群
1、俩服务器分别新建目录:usr/local/redis-cluster
2、下载源码并解压编译(使用redis版本5.0.4)
3、tar xzf redis-5.0.4.tar.gz
4、cd redis-5.0.4
5、make & make install
测试编译:发现报错

6、cd src
make test
CC Makefile.dep
You need tcl 8.5 or newer in order to run the Redis test
make: *** [test] Error 1
问题原因:缺少依赖,进行安装
7、yum install tcl
8、再次测试编译ok
make test
\o/ All tests passed without errors!
Cleanup: may take some time... OK

9、至此,可以启动redis了,默认启动模式为前端启动,指令如下
cd usr/local/bin
./redis-server
10、验证启动是否成功
ps -ef | grep redis
11、报错
a、运行redis-server报错bash: redis-server: command not found
这是因为在系统的usr/local/bin目录下没有命令文件,这就要将usr/local/redis-cluster/redis/ redis-5.0.4/bin下redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-rdb、redis-sentinel这些可执行文件复制到local/bin下
c、所以修改redis.conf里的daemonize改为yes

12、前端启动的话,如果客户端关闭,redis服务也会停掉,只能新开一个窗口或者改成后台启动redis。
具体做法分为两步 ->
第一步:将redis解压文件里面的redis.conf文件复制到当前目录,修改redis.conf里的daemonize改为yes
第二步:启动
13、创建集群目录
俩台服务器在redis-cluster下分别创建7001,7002,7003 // 7004,7005,7006目录
mkdir 7001 7002 7003
mkdir 7004 7005 7006
14、首先对redis.conf下的参数进行修改
(1)、daemonize 设置yes 设置后台运行redis
(2)、cluster-enabled 设置yes并去掉注释 (启动集群模式)
(3)、cluster-node-timeout 设置5000并去掉注释
(4)、bind 127.0.0.1(默认ip为127.0.0.1 需要改为其他节点机器可访问的ip 否则创建集群时无法访问对应的端口,无法创建集群 )
(5)、protected-mode设置 no(关闭保护模式)需要不同服务器的节点连通,这个就要设置为 no
(6)、appendonly 设置yes aof日志开启 有需要就开启,它会每次写操作都记录一条日志
15、复制redis.conf
分别复制redis.conf文件到7001-7006目录下
根据不同端口需要个性化设置的地方(可以批量替换)
(1)、port 7001(分别对每个机器的端口号进行设置)
(2)、设置pidfile存放在 run目录下的文件名 pidfile /var/run/redis_7001.pid
(3)、logfile /var/log/redis/redis_7001.log
(4)、dbfilename dump_7001.rdb
(5)、appendfilename "appendonly_7001.aof"
(6)、cluster-config-file nodes-7001.conf(集群节点信息文件) 去掉注释
16、创建集群
(1)、先对每台服务器的端口进行开放
输入命令行: uname
会出现系统的名称
再输入
cat /etc/redhat-release
则会出现具体系统
vim /etc/sysconfig/iptables
“I”键输入命令行:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 7001 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 7002 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 7003 -j ACCEPT
....
注意BUG点:新开放的端口行一定要在端口行22的下面一行
(2)、关闭防火墙
重启防火墙使配置生效:
[root@Neo777 ~]# /etc/init.d/iptables restart
查看开放端口
[root@Neo777 ~]# /etc/init.d/iptables status
关闭防火墙命令为:
[root@Neo777 ~]# /etc/init.d/iptables stop
(3)、创建集群
./redis-cli --cluster create 172.25.44.10:7001 172.25.44.10:7002 172.25.44.10:7003 172.25.44.11:7004 172.25.44.11:7005 172.25.44.11:7006 --cluster-replicas 1
留意屏幕,会有一句(type 'yes' to accept),输入 yes ,回车,就是接受自动分配的三主三从
如果最后出现
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
说明成功了。
如果是出现
Waiting for the cluster to join...........
一直有 “.”出现,说明另一台服务器的端口策略没通,一直在等那边的节点加入集群,那么恭喜你,要悲剧了.....
俩台服务器搭建redis集群5.0.4的更多相关文章
- 基于 twemproxy 搭建 redis 集群
概述 由于单台redis服务器的内存管理能力有限,使用过大内存redis服务器的性能急剧下降,且服务器发生故障将直接影响大面积业务.为了获取更好的缓存性能及扩展型,我们将需要搭建redis集群来满足需 ...
- Windows下 搭建redis集群
Windows下搭建redis集群教程 一,redis集群介绍 Redis cluster(redis集群)是在版本3.0后才支持的架构,和其他集群一样,都是为了解决单台服务器不够用的情况,也防止了主 ...
- Windows 环境搭建Redis集群
环境以及引用资料 1.windows server 2008 r2 enterprise (木有办法,公司的服务器全是如此,就这种环境搭建吧) 2.redis官方资料下载: https://redi ...
- 这次一定要教会你搭建Redis集群和MySQL主从同步(非Docker)
前言 一直都想自己动手搭建一个Redis集群和MySQL的主从同步,当然不是依靠Docker的一键部署(虽然现在企业开发用的最多的是这种方式),所以本文就算是一个教程类文章吧,但在动手搭建之前,会先聊 ...
- docker搭建redis集群
一.简介 docker作为一个容器技术,在搭建资源隔离性服务上具有很大的优势,在一台服务器上可以启动多个docker容器,感觉每个在容器里面部署的服务就像是部署在不同的服务器上.此次基于docker以 ...
- Windows下搭建Redis集群
Redis集群: 如果部署到多台电脑,就跟普通的集群一样:因为Redis是单线程处理的,多核CPU也只能使用一个核, 所以部署在同一台电脑上,通过运行多个Redis实例组成集群,然后能提高CPU的利用 ...
- Redis集群搭建(转自一菲聪天的“Windows下搭建Redis集群”)
配置Redis参考:http://blog.csdn.net/zsg88/article/details/73715947 使用Ruby配置集群参考:https://www.cnblogs.com/t ...
- centos6搭建redis集群搭建(单机多节点)
一.安装redis 1.安装gcc环境 yum install gcc-c++ 2.下载源码包并解压 wget http://download.redis.io/releases/redis-3.2. ...
- 手动搭建 redis 集群
转自http://meia.fun/article/1544161420745 手动搭建 redis 集群 redis 基本命令: 启动 redis 服务:redis-server xxx.conf ...
随机推荐
- 如何用C++操作无线网卡开启共享热点WiFi?
首先需要笔记本具备AP热点功能,记得写好的程序必须用管理员身份运行. 准备工作需要先做好 //查看是否支持的承载网络 netsh wlan show drivers //设置网络模式为allow ne ...
- 记一次排查tomcat耗费CPU过高的经历
有一个新项目,在测试环境部署后,发现tomcat进程耗费的CPU非常高,排查过程如下: 日志搜集 先通过top,查找耗费CPU最高的线程 top -Hp pid 将线程ID转为16进制 printf ...
- ThoughtWorks 面试备忘录
ThoughtWorks 面试备忘录 前言 前段时间 ThoughtWorks 在网上和拉勾网合作搞了一次网络招聘,名为抛弃简历!让代码说话!,可谓赚足了眼球,很多程序猿纷纷摩拳擦掌.踊跃提交代码,在 ...
- 利用Rsync同步工具上传、删除目标文件
Rsync是文件备份工具,当然也可以当做传输工具,管理远程服务器的文件 上传 rsync -avzP --progress --port 9106 /path/.../指定文件 root@192.16 ...
- 浅谈js闭包(closure)
相信很多从事js开发的朋友都或多或少了解一些有关js闭包(closure)的知识. 本篇文章是从小编个人角度,简单地介绍一下有关js闭包(closure)的相关知识.目的是帮助一些对js开发经验不是很 ...
- 宜信开源|数据库审核软件Themis的规则解析与部署攻略
一.介绍 Themis是宜信公司DBA团队开发的一款数据库审核产品,可帮助DBA.开发人员快速发现数据库质量问题,提升工作效率.其名称源自希腊神话中的正义与法律女神.项目取此名称,寓意此平台对数据库质 ...
- Spring Boot:快速入门教程
什么是Spring Boot? Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人 ...
- Storm —— 单机环境搭建
1. 安装环境要求 you need to install Storm's dependencies on Nimbus and the worker machines. These are: Jav ...
- 还在被大妈灵魂拷问?使用Python轻松完成垃圾分类!
目录 0 环境 1 引言 2 思路 3 图像分类 4 总结 0 环境 Python版本:3.6.8 系统版本:macOS Mojave Python Jupyter Notebook 1 引言 七月了 ...
- 算法与数据结构基础 - 堆栈(Stack)
堆栈基础 堆栈(stack)具有“后进先出”的特性,利用这个特性我们可以用堆栈来解决这样一类问题:后续的输入会影响到前面的阶段性结果.线性地遍历输入并用stack处理,这类问题较简单,求解时间复杂度一 ...