centOS7下redis3.0安装以及布置集群教程(单机创建多个实例调试)
来源:互联网 发布:淘宝抢红包微信群 编辑:程序博客网 时间:2024/05/19 00:36
版本说明
本教程使用redis3.0版本。3.0版本主要增加了redis集群功能。
安装的前提条件
需要安装gcc:yuminstall gcc-c++(如果你的Linux环境下已经装过了Nginx,此处可忽略,因为Nginx也需要gcc环境才能安装)
源码下载:此处提供官网下载地址(点击打开链接)
安装位置:将redis-3.0.0.tar.gz拷贝到/usr/local下(本文安装位置在/usr/local/redis)
开始安装
[root@localhost ~]# cd /usr/local/
[root@localhost local]# tar -zxvf redis-3.0.0.tar.gz
[root@localhost local]# cd redis-3.0.0/
[root@localhost redis-3.0.0]# make
[root@localhost redis-3.0.0]# make PREFIX=/usr/local/redis install
等待,要是其中某处问你yes/no或者y/n,输入yes或者y即可
测试:
[root@localhost ~]# cd /usr/local/redis//bin/
[root@localhost bin]# ./redis-server
出现:
安装成功!
接下来修改redis.conf配置文件为后端启动和集群做准备!
[root@localhost bin]# chmod 777 redis.conf
[root@localhost bin]# vim redis.conf
位置:第37行daemonize 把no改为yes,允许后端启动
位置:第633行cluster-enabled把no改为yes,集群的前提条件
:wq
搭建集群需要的环境
搭建集群需要使用到官方提供的ruby脚本。
需要安装ruby的环境。
[root@localhost ]# yum install ruby[root@localhost ]# yum install rubygems
上传redis-3.0.0.gem到/usr/local下
[root@localhost ]# gem install redis-3.0.0.gem
创建实例前的准备(文件夹)
[root@localhost local ]# mkdir redis-cluster
[root@localhost local ]#cp -r bin ../redis-cluster/redis01
以此步骤在redis-cluster下分别建立redis01到redis06总共6个文件夹,以此看做6个redis,后面将以此为基础进行调试
分别修改每一个redis0X下的redis.conf的端口分别从7001到7006
每一个redis.conf第633行cluster-enabled把no改为yes
:wq保存并退出
把创建集群的ruby脚本复制到redis-cluster目录下
[root@localhost ]# cd /usr/local/redis-3.0.0/src
[root@localhost src ]# cp *.rb /usr/local/redis-cluster/
至此文件夹的准备工作结束!
iptables里面要打开7001到7006端口!!!!!!!
编写打开6个redis实例的脚本
[root@localhost ]#cd/usr/local/redis-cluster/
[root@localhost redis-cluster]# vim startall.sh
cd redis01
./redis-server redis.conf
cd ..
cd redis02
./redis-server redis.conf
cd ..
cd redis03
./redis-server redis.conf
cd ..
cd redis04
./redis-server redis.conf
cd ..
cd redis05
./redis-server redis.conf
cd ..
cd redis06
./redis-server redis.conf
cd ..
:wq保存并退出
完成后redis-cluster的目录结构应该是这样的
建议把每个redis0X文件夹下的redis.conf都给大点的权限
[root@localhost redis0X]# chmod 777 redis.conf
打开6个redis实例
[root@localhost redis-cluster]# ./startall.sh
查看所有的redis
[root@localhost redis-cluster]# ps -aux|grep redis
(1)[root@localhost redis-cluster]# ./redis-trib.rb create --replicas 1 192.168.181.132:7001 192.168.181.132:7002 192.168.181.132:7003 192.168.181.132:7004 192.168.181.132:7005 192.168.181.132:7006
博主的Linux虚拟机的静态ip地址是192.168.181.132请根据自己的实际情况修改,centOS7的防火墙需要设置,网上很多,博主其他的博文里面也有提到
1、这一步估计有不少人会失败:出现这个问题
最下方是
[ERR]Node XXXXXX is not empty. Either the node already knows other nodes (check withCLUSTER NODES) or contains some key in database 0
解决办法是将每一个redis下删除生成的配置文件nodes.conf,如果不行则说明现在创建的结点包括了旧集群的结点信息,需要删除redis的持久化文件后再重启redis,比如:appendonly.aof、dump.rdb
还需要进入每一个redis清除数据:[root@localhost redis-cluster]# redis01/redis-cli -h 192.168.181.132 -p 7001 -c
192.168.181.132:7006> FLUSHALL
总共6个redis清除后重复(1)
若还是有问题:
[root@localhost redis-cluster]# ./redis-trib.rb check 192.168.181.132:7001
正常状态下应该是:
如果不是如上,可以修复这个端口
[root@localhost redis-cluster]# ./redis-trib.rb fix 192.168.181.132:7001
请检查这6个端口并修复!!!
创建成功
操作(1)成功后应该出现:
输入yes确定
出现:
调试redis集群效果
参照下图,set get 几个数据,相互之间端口会有跳转,证明集群布置成功会根据计算出的位置自己选择存储位置,而且互相之间可以访问数据
success!!!!!
有任何问题欢迎留言讨论!!
- centOS7下redis3.0安装以及布置集群教程(单机创建多个实例调试)
- Redis3.0单机版的安装教程
- CentOS7下安装redis3
- centos7安装redis3.2.5集群
- centos7安装redis3.2.5集群
- Centos7安装Redis3.0
- Centos7安装redis3.0
- CentOS7下安装redis3.2.9
- Centos7中安装Redis3.2.3集群
- CentOS下安装Redis3集群
- CentOS7 配置redis3.0集群开机启动
- ZooKeeper教程(一)----Centos7下安装ZooKeeper(单机版)
- Redis3.0.7 cluster/集群 安装配置教程
- Redis3.0.7 cluster/集群 安装配置教程
- Redis3.0.7 cluster/集群 安装配置教程
- Redis3.0--集群安装部署
- redis3.0集群安装步骤
- Redis3.0集群的安装
- spring学习--总结IOC(控制反转)
- Javascript----Promise初步探究
- 如果你在学嵌入式底层驱动,内核模块编程将是你的第一课!小白学Linux之内核模块编程详解
- leetcode No124. Binary Tree Maximum Path Sum
- C语言读写SQLite数据库
- centOS7下redis3.0安装以及布置集群教程(单机创建多个实例调试)
- Android开发中的五大布局
- log4j日志记录配置的小结
- POJ 1972 Dice Stacking 笔记
- Vim插件之Conque GDB
- mysql表的操作
- RDD编程
- fork(父写,子读;子写,父读)
- Problem D: 锁屏密码