Redis集群部署
2015-03-25 11:42
274 查看
目前 redis的稳定版本是:redis-2.8.19.tar.gz
但是redis可以做一个主从复制的设置,见redis.conf的 复制【REPLICATION】 部分注释和设置
修改下就可以配置主从复制了,有 slaveof <masterip> <masterport> ,就成了 从服务器 ,没有就是 主服务器。
tar xvf redis.tar.gz
cd redis
make && make install
将会把redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-dump 五个文件复制到 /usr/local/bin/下
然后将源码中的 redis.conf 复制到 /etc/redis.conf
再制作一个 init.d 的启动脚本:
将上面内容复制到 /etc/init.d/redis
chkconfig --add redis
chkconfig --list redis
service redis start
开启了服务,对了忘记了 /etc/redis.conf里面可以把 daemonize no 修改为
就可以默认在后台执行redis-server了。
这就是主服务器,从服务器,配置一样,只不过 修改/etc/redis.conf 中
然后开启从服务器的redis服务。
logfile 配置日志位置,不配置默认产生的日志放入垃圾箱
测试
由于配置中有一条 从服务器 是只读的,所以从服务器 没法设置数据,只可以读取数据。
但是redis可以做一个主从复制的设置,见redis.conf的 复制【REPLICATION】 部分注释和设置
修改下就可以配置主从复制了,有 slaveof <masterip> <masterport> ,就成了 从服务器 ,没有就是 主服务器。
tar xvf redis.tar.gz
cd redis
make && make install
将会把redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-dump 五个文件复制到 /usr/local/bin/下
然后将源码中的 redis.conf 复制到 /etc/redis.conf
再制作一个 init.d 的启动脚本:
#!/usr/bin/env bash # # redis start up the redis server daemon # # chkconfig: 345 99 99 # description: redis service in /etc/init.d/redis \ # chkconfig --add redis or chkconfig --list redis \ # service redis start or service redis stop # processname: redis-server # config: /etc/redis.conf PATH=/usr/local/bin:/sbin:/usr/bin:/bin REDISPORT=6379EXEC=/usr/local/bin/redis-server REDIS_CLI=/usr/local/bin/redis-cli PIDFILE=/var/run/redis.pid CONF="/etc/redis.conf"#make sure some dir existif [ ! -d /var/lib/redis ] ;then mkdir -p /var/lib/redis mkdir -p /var/log/redis fi case "$1" in status) ps -A|grep redis ;; start) if [ -f $PIDFILE ] then echo "$PIDFILE exists, process is already running or crashed"else echo "Starting Redis server..."$EXEC$CONF fi if [ "$?"="0" ] then echo "Redis is running..." fi ;; stop) if [ ! -f $PIDFILE ] then echo "$PIDFILE does not exist, process is not running"else PID=$(cat $PIDFILE) echo "Stopping ..."$REDIS_CLI -p $REDISPORTSHUTDOWNwhile [ -x ${PIDFILE} ] do echo "Waiting for Redis to shutdown ..."sleep1 done echo "Redis stopped" fi ;; restart|force-reload) ${0} stop ${0} start ;; *) echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2exit1 esac
将上面内容复制到 /etc/init.d/redis
chkconfig --add redis
chkconfig --list redis
service redis start
开启了服务,对了忘记了 /etc/redis.conf里面可以把 daemonize no 修改为
daemonize yes
就可以默认在后台执行redis-server了。
这就是主服务器,从服务器,配置一样,只不过 修改/etc/redis.conf 中
slaveof <masterip> 6379
如:slaveof 192.168.1.10 6379
然后开启从服务器的redis服务。
logfile 配置日志位置,不配置默认产生的日志放入垃圾箱
测试
#主服务器 redis-cli -p 6379 set hello world #从服务器 redis-cli -p 6379 get hello "world"#主服务器 redis-cli -p 6379 set hello world2 #从服务器 redis-cli -p 6379 get hello "world2" redis-cli -p 6379 set hello world (error) READONLY You can't write against a read only slave. #成功 配置主从redis 服务器。好简单啊。
由于配置中有一条 从服务器 是只读的,所以从服务器 没法设置数据,只可以读取数据。
相关文章推荐
- Redis3.0.1 Stable版本的集群部署(Mac)
- redis集群部署
- Windows环境部署Redis集群
- redis3.0集群部署和测试
- redis 集群部署
- redis集群部署之codis 维护脚本
- 使用redis部署集群
- redis集群部署及踩过的坑
- 使用Tomcat-redis-session-manager来实现Tomcat集群部署中的Session共享
- redis3.0集群详细部署过程
- redis 集群部署 (linux)
- 1--redis3.0.5集群部署安装详细步骤
- redis 3.0的集群部署
- redis(二)集群部署详解
- Redis集群配置和部署 spring整合redisCluster
- redis 3.0的集群部署
- redis 3.0的集群部署
- Redis实践(四)高可用的集群+哨兵部署 下的jedis开发
- linux下redis 3.2.1双节点集群安装部署
- redis集群部署及踩过的坑