Redis集群搭建
来源:互联网 发布:淘宝比价软件推荐 编辑:程序博客网 时间:2024/06/03 17:52
Redis作为缓存级别数据库,在访问量很高的项目中,使用它的好处要远大于MySQL等数据库
下面说一下自己在搭建redis集群时所遇到的坑,如有不正确的地方欢迎指正
一.先说下Redis单机版的安装:
这个就比较简单,熟练搭建单机版的,快速跳过
1.首先下载安装包(我用的是redis-3.2.11)
2.将压缩包上传到服务器,解压,会生成一个redis-3.2.11的目录,进入到此目录
3.直接使用命令make,进行编译
4.使用命令make install 命令进行安装
我用的是make install PREFIX=/usr/local/redis-cluster
PREFIX=用来指定安装目录,根据情况选择是否使用
按照我的路径来说,会在redis-cluster目录中存在一个bin目录 里面有启动redis的执行文件(redis-server)和关闭redis(redis-cli)
5.redis通过redis.conf进行配置,解压后的redis-3.2.11目录中有一个redis.conf配置文件,将此配置文件复制到安装目录的bin文件夹中
6编辑redis.conf,将daemonize 设置为yes(redis守护进程后端启动方式)
一般都会使用阿里云进行部署,这时候肯定要用ssh工具进行远程操作,此处修改是为了解决dos窗口关闭就会将redis服务一起关闭的问题.
恭喜你,启动完成之后一个单机版的redis就已经搭建成功了.端口号在redis.conf中进行修改 默认port:6379 并且没有密码
二,Redis集群版安装
集群的好处就不多bb了.理解不了的也没必要搭建集群
reids-cluster内部是ping-pong投票机制,半数或者半数以上的借点连接不上某个节点 , 集群即宣布那个节点挂掉,所以redis-cluster最少需要三个节点,但是一般为了保证集群的安全,会进行主从备份,我做的简单是一主一从,所以最少需要六个点,但是这六个点不建议部署在同一台服务器上,因为当这台服务器宕机的时候,六个点都会挂掉
主节点会分配用来储存的哈希槽,一共16384个哈希槽 分配给主节点 (crc16算法对16384取余)
redis-cluster依赖ruby环境,还需要redis-ruby接口工程
1.yum install ruby
2.yum install rubygems
3.gem install redis -v -3.x.x
4. 将解压后src中的redis-trib.rb拷贝到/usr/local/redis-cluster
以上配置算是一个redis实例
配置集群再复制需要的份数(此台机器的节点数)
vim redis.conf
port 7000 修改端口
daemonize yes 守护进程后台启动
cluster-enable yes 开启支持集群
删除bin中
*.rdb //快照版本的实例化文件
*.aof //执行一次保存一次的实例化文件
nodes.conf //节点信息配置文件
5.首先将所有redis节点启动(单机版后台启动方式启动)
6.执行redis-trib.rb
./redis-trib.rb create --replicas 1 +6个节点的ip:port
--replicas 1 表示只创建一个从节点
此时,会自动将这6个点的redis组成一个集群
开启/关闭集群 等于 开启/关闭每一个节点
恭喜你,redis集群搭建完成,但还有一个非常重要的事情 那就是给集群加个密码
这地方偷懒了,会有黑客帮助你完成这一步,那时候后果.......不亚于删库
在创建成集群之前也就是在第6步之前不要设置密码,要在集群创建成功后再用Jedis为每一个节点依次设置密码
我就把代码放下面了
Jedis jedis = new Jedis("ip", port); String configSet = jedis.configSet("requirepass", "你的密码");System.out.println("密码设置状态 : "+configSet );这样,一个完整的redis集群搭建完成!
附:我是用的Redis压缩文件(linux)
- redis集群搭建
- redis集群环境搭建
- redis-3.0集群搭建
- redis集群部署搭建
- redis集群环境搭建
- 搭建redis单机集群
- ELK+redis集群搭建
- redis集群搭建
- spring搭建redis集群
- redis集群搭建示例
- 【Python】搭建redis集群
- redis cluster集群搭建
- redis集群搭建手册
- redis 集群搭建 Ubuntu
- Dubbo-redis集群搭建
- Redis集群搭建
- redis集群搭建
- Redis集群的搭建
- MongoDB+ES 学习
- 素数环
- MATLAB 霍夫直线检测
- 90.Subsets II leetcode java
- jdk7监听文件系统变化通知新特性
- Redis集群搭建
- mysql分区及实例演示
- Linux 习题6
- 总结篇---闭包问题从此再不难
- bzoj 2005 [Noi2010]能量采集 O(n)莫比乌斯反演
- Tomcat相关整理
- iOS网络——AFNetworking AFHttpSessionManager源码解析
- iOS中Label的首行缩进
- 论文笔记-An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application