redis之sentinel集群部署

2017-12-16  本文已影响39人  张伟科

一、环境说明:

1、操作系统:CentOS Linux release 7.3.1611

2、redis版本:redis-4.0.6

3、服务器共3台:

192.168.10.91

192.168.10.92

192.168.10.93

二、安装redis(3台服务器都需要安装)

1、下载redis源码包:

wget http://download.redis.io/releases/redis-4.0.6.tar.gz

2、解压源码包:

tar zxvf redis-4.0.6.tar.gz

3、编译安装:

make

make PREFIX=/app/redis install

mkdir /app/redis/conf

mkdir /app/redis/dump

4、将redis安装包的配置模板文件拷贝到redis安装目录:

cp /usr/local/src/redis-4.0.6/redis.conf sentinel.conf /app/redis/conf

5、修改配置(redis.conf):

bind 127.0.0.1    改为:    bind 0.0.0.0    --修改服务的开放的网段

daemonize no    改为:    daemonize yes    --修改服务在后台运行

dir ./    改为:    dir /app/redis/dump    --修改rdb文件的备份目录

6、启动redis,并验证安装是否OK

/app/redis/bin/redis-server /app/redis/conf/redis.conf

/app/redis/bin/redis-cli

127.0.0.1:6379> set foo bar

OK

127.0.0.1:6379> get foo

"bar"

三、集群部署

1、主从复制部署

注:初选192.168.10.91为主,192.168.10.92及192.168.10.93为从

1.1、复制选项配置(在从库上操作)

添加选项(redis.conf):

slaveof 192.168.10.91 6379

1.2、重启redis服务,使配置生效

/app/redis/bin/redis-cli

127.0.0.1:6379> shutdown

not connected> exit

/app/redis/bin/redis-server /app/redis/conf/redis.conf

1.3、验证同步是否OK

在主库上生成数据,看从库上是否有相应数据同步生成

主库命令:

/app/redis/bin/redis-cli

127.0.0.1:6379> set name wade_cheung

OK

从库命令:

/app/redis/bin/redis-cli

127.0.0.1:6379> get name

"wade_cheung"

2、sentinel部署

2.1、sentinel选项配置(sentinel.conf)

添加配置项:

bind 0.0.0.0    --服务绑定的网段

sentinel announce-ip 192.168.10.91

sentinel monitor mymaster 127.0.0.1 6379 2    改为:    sentinel monitor mymaster 192.168.10.91 6379 2    --sentinel监控的redis主库服务,并配置实施failover的投票数

2.2、关闭主库,验证从库是否能切换为新的主库

主库关闭服务:

/app/redis/bin/redis-cli

127.0.0.1:6379> shutdown

在从库查看是否切换为新主库:

/app/redis/bin/redis-cli

127.0.0.1:6379> info Replication

附:sentinel切换日志:

上一篇下一篇

猜你喜欢

热点阅读