1...下载redis
https://redis.io/
2...上传服务器,解压,编译
mv redis-3.2.9.tar.gz redis3.0
cd /usr/local/dev/redis-3.2.9
make
make install PREFIX=/usr/local/redis
(make之前要注意几个内容报错)
2.1./bin/sh: cc: command not found
安装gcc:yum install gcc
安装g++: yum install gcc-c++
2.2.zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or director
解决方案:make MALLOC=libc
2.3.安装后可以运行make test检测是否安装成功,这个时候可能出现的问题:
You need tcl 8.5 or newer in order to run the Redis test
安装tcl测试 : yum install tcl
下面代表测试通过:
\o/ All tests passed without errors!
Cleanup: may take some time... OK
3.创建所需要的目录(至少需要6个)
cd /usr/local/dev/redisCluster
mkdir 7000
mkdir 7001
mkdir 7002
mkdir 7003
mkdir 7004
mkdir 7005
拷贝执行文件到对应文件夹:(目录取决于你的安装目录 即PREFIX=/usr/local/redis)
cp -r /usr/local/redis/bin/* /usr/local/dev/redisCluster/7001
............
4:修改配置文件redis.conf(也可以直接使用附件中文件)
/usr/local/dev/redis-3.2.9
##修改配置文件中的下面选项
daemonize yes
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
如果需要带密码验证的redis,需要在配置的最后一行(推荐在最后一行) 添加自己的认证密码:
masterauth "qwerty"
requirepass "qwerty"
##修改完redis.conf配置文件中的这些配置项之后把这个配置文件分别拷贝到7000/7001/7002/7003/7004/7005目录下面
##注意:拷贝完成之后要修改7001/7002/7003/7004/7005目录下面redis.conf文件中的port参数,分别改为对应的文件夹的名称(推荐使用notepad++的NppFTP插件进行修改)
5:分别启动这6个redis实例(也可以使用附件中的脚本runAll.sh放到对应位置进行启动)
redis-server redis.conf
cd /usr/local/dev/redisCluster/7001
redis-server redis.conf
cd /usr/local/dev/redisCluster/7002
redis-server redis.conf
cd /usr/local/dev/redisCluster/7003
redis-server redis.conf
cd /usr/local/dev/redisCluster/7004
redis-server redis.conf
cd /usr/local/dev/redisCluster/7005
redis-server redis.conf
6:执行redis的创建集群命令创建集群
./redis-trib.rb create --replicas 1 127.0.0.1:7000 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
6.1执行上面的命令的时候会报错,因为是执行的ruby的脚本,需要ruby的环境
错误内容:/usr/bin/env: ruby: No such file or directory
所以需要安装ruby的环境,这里推荐使用yum install ruby安装
6.2然后再执行第6步的创建集群命令,还会报错,提示缺少rubygems组件,使用yum安装
错误内容:
./redis-trib.rb:24:in `require': no such file to load -- rubygems (LoadError)
from ./redis-trib.rb:24
6.3再次执行第6步的命令,还会报错,提示不能加载redis,是因为缺少redis和ruby的接口,使用gem 安装
错误内容:
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- redis (LoadError)
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from ./redis-trib.rb:25
注意:gem install redis --version 3.3.3 失败的话,需要修改一下gem的源
gem sources -a https://ruby.taobao.org/
6.4 再次执行第6步的命令,正常执行
这个地方如果前面你配置了密码会报错:
Sorry, can't connect to node 127.0.0.1:7000
前面加入密码验证的步骤的验证完以后需要修改ruby的一个文件才能生效(因为要用到ruby来创建redis集群),命令如下:
-----前提是安装了ruby-gems,
340 yum install ruby 安装ruby
341 yum install rubygems 安装ruby的基础gems
342 gem install redis --version 3.3.3 安装redis的gems
343 gem sources --remove https://rubygems.org/
344 gem sources -a https://ruby.taobao.org/ 这两步是删除自带的地址换为淘宝的源
345 gem install redis --version 3.3.3
需要ruby文件
find / -name "client.rb"
vi /usr/local/share/gems/gems/redis-3.3.3/lib/redis/client.rb
将下面的属性修改为和上面conf里面同样的
DEFAULTS = {
:url => lambda { ENV["REDIS_URL"] },
:scheme => "redis",
:host => "127.0.0.1",
:port => 6379,
:path => nil,
:timeout => 5.0,
:password => "qwerty",
:db => 0,
:driver => nil,
:id => nil,
:tcp_keepalive => 0,
:reconnect_attempts => 1,
:inherit_socket => false
}
安装成功!!!!
启动某个端口的redis:
./redis-cli -c -p 7002 -a qwerty(带上认证)(-a 是认证英语的缩写)
补充篇:
ruby的gems管理:
gem query –remote-----查询出当前安装的gems和版本
*** LOCAL GEMS ***
bigdecimal (1.2.0)
io-console (0.4.2)
json (1.7.7)
psych (2.0.0)
rdoc (4.0.0)
redis (3.3.3)
gem uninstall redis ----如果多个版本的他会问你输入版本号
增加对bind ip的操作和理解:
在redis.conf里面有一段配置:
################################## NETWORK #####################################
# By default, if no "bind" configuration directive is specified, Redis listens
# for connections from all the network interfaces available on the server.
# It is possible to listen to just one or multiple selected interfaces using
# the "bind" configuration directive, followed by one or more IP addresses.
#
# Examples:
#
# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1 ::1
#
# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
# internet, binding to all the interfaces is dangerous and will expose the
# instance to everybody on the internet. So by default we uncomment the
# following bind directive, that will force Redis to listen only into
# the IPv4 lookback interface address (this means Redis will be able to
# accept connections only from clients running into the same computer it
# is running).
#
# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
# JUST COMMENT THE FOLLOWING LINE.
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#bind 127.0.0.1
bind 192.168.1.97 127.0.0.1
它的默认端口为6379,如果你是使用linux本身操作,那么默认bind的ip是127.0.0.1,如果你想要通过windows来访问redis,那么bind的ip更改成你linux的ip,使用ifconfig来查看linux的ip。
这段话的意思不是绑定了那些IP可以访问,而是开放了那些接口或者说是网卡供外界访问,这里很容易让人误认为是白名单ip
如果这个地方你配置了,那么下面的创建集群命令可能会有一些变化
6、开始集群使用以下命令,可将它写在一个shell脚本中
./redis-trib.rb create --replicas 1 192.168.243.128:7001 192.168.243.128:7002 192.168.243.128:7003 192.168.243.128:7004 192.168.243.128:7005 192.168.243.128:7006
写在一个叫cluster.sh的脚本中,执行当然你直接将上面的命令输入也可以,这里的ip地址是你在redis.conf绑定的ip
更详细的内容 请参考
http://www.cnblogs.com/honger/p/5852005.html
相关推荐
为了解决 Redis 哨兵的缺点,我们可以使用 Redis 集群搭建来实现高可用性和扩展性。集群搭建计划包括: * 主从划分:3 台主机 3 台从机共 6 台 * 端口划分:7000-7005 1.2 集群搭建 1.2.1 准备集群文件夹 首先,...
总结,本篇文章详细介绍了如何使用Spring Data Redis搭建Redis集群,以及如何在Spring应用中操作Redis集群,存储和检索对象。`RedisClusterDemo`项目提供了一个具体的实践示例,适合初学者理解和学习。
【Redis集群安装笔记】 Redis是一种高性能的键值存储系统,常用于数据库、缓存和消息中间件等场景。为了提高Redis服务的可用性和可靠性,我们可以采用哨兵(Sentinel)模式来搭建分布式集群。哨兵模式是Redis的一种...
综上所述,Spring集成Redis集群需要配置集群节点信息、创建ConnectionFactory并设置RedisTemplate,然后就可以在Spring应用中正常使用Redis集群了。在实际应用中,还需要考虑数据分布策略、故障恢复和监控等问题,以...
以下是关于Redis集群搭建及配置的详细步骤和相关知识点。 一、Redis主从服务器搭建 1. 下载Redis:首先,你需要从Redis官方网站或者通过包管理器下载最新版本的Redis源代码。 2. 解压Redis tar包:使用tar命令...
#### 一、Redis集群方案比较 Redis 是一种高性能的键值存储系统,在多种场景中被广泛应用于缓存、消息队列以及实时分析等领域。随着应用规模的增长,单一的 Redis 实例往往难以满足高并发和大数据量的需求,因此...
Redis 集群环境搭建与Java操作指南 Redis 是一款高性能的键值数据库,广泛应用于缓存、消息队列等领域。为了实现高可用性和数据冗余,Redis 提供了集群(Cluster)功能。本指南将详细阐述如何搭建 Redis 集群环境,...
### 数据库技术+Redis集群+搭建指南+系统优化使用 #### 一、Redis集群概述 在高并发场景下,单一Redis实例已经难以满足大规模数据处理的需求。为了应对这一挑战,Redis集群应运而生,它通过分布式的方式将数据分散...
5. **Redis集群搭建**: Redis集群(Cluster)是Redis的一个重要特性,可以实现数据的分布式存储和处理。在"淘淘商城"中,集群可以提升系统的可用性和扩展性。搭建Redis集群需要至少3个节点,并且每个节点都需要...
### Redis集群搭建详解 #### 一、环境准备与Redis安装 **1.1 使用服务器** 在本案例中,我们使用了以下服务器地址:192.168.130。 **1.2 安装Redis** 接下来,我们需要安装Redis。首先下载Redis最新稳定版: ``...
### Redis集群的安装(Redis3+CentOS) ...通过上述步骤,可以成功地在CentOS环境下搭建一个包含3个主节点和3个备节点的Redis集群。这种配置不仅能够提供高性能的数据存储服务,还能有效提升系统的可用性和扩展性。
【Redis搭建】 ...以上是 Redis 单节点、主从复制和集群搭建的基础操作,实际部署中还需要考虑网络环境、安全性、性能优化等因素。对于大规模生产环境,建议参考 Redis 官方文档和最佳实践进行配置。
#### 二、Redis 集群搭建步骤 为了搭建一个基本的 Redis 集群,需要至少 6 台服务器(这里采用伪分布式部署,即在一个物理机上模拟 6 个 Redis 实例)。集群通常包含 3 个主节点和 3 个对应的从节点。 ##### 2.1 ...
##### 2.2 Redis集群搭建 接下来,我们将搭建一个包含三个Master节点及对应的Slave节点的伪集群。 1. **创建文件夹结构** 在`/usr/local`下创建`redis-cluster`文件夹,并在其中创建六个子文件夹,分别命名为`...
### Redis Cluster 4.0.8 配置与管理知识点详解 #### 一、环境准备与Redis安装 **1.1 Redis安装包获取** ...通过以上步骤,您可以成功搭建并管理基于Redis 4.0.8的集群环境,实现高效的数据处理和服务扩展能力。
通过这份源码,你可以学习到如何在Java应用中实现对Redis集群的正确配置和高效使用,以及如何处理集群环境中的异常情况。同时,了解这些知识对于提升应用的稳定性和扩展性至关重要。通过实践,你将能够更好地理解和...
Redis集群提供了一种分布式存储解决方案,它可以将数据分布在多个Redis实例上,支持水平扩展。Redis集群采用数据分片的方式存储数据,每个节点负责一部分键空间的数据存储。同时,集群支持故障检测和数据自动迁移等...
本文档的目的是指导读者如何在实际环境中部署和配置Redis Cluster,包括硬件选择、操作系统的选择、环境准备以及具体的集群搭建步骤,以确保用户能够顺利地构建一个稳定的Redis分布式环境。 1.2 参考文档 在部署...