您的位置:首页 > 数据库 > Redis

CentOS7下安装部署redis主从复制+哨兵模式

2020-06-09 04:56 477 查看

1. 准备三台服务器,分别是10.0.100.157/158/159。其中157作为master,另外两台作为slave。主服务器提供读写功能,而从服务器负责读

2. 在文件的安装目录下安装redis,我的是/opt

3. 通过以下命令下载redis安装包

cd /opt

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

4.解压下载下来的redis

tar -zxvf redis-4.0.11.tar.gz

5.安装gcc

yum -y install gcc automake autoconf libtool make

6.进入redis-4.0.11目录,输入命令进行安装

make

7. redis安装好之后,在/opt下新建redis目录,再将原来的redis-4.0.11下的5个文件移动到redis目录下

[ opt]$ mkdir redis
[ opt]$ cd redis-4.0.11/src/
[ src]$ cp redis-server /opt/redis
[ src]$ cp redis-cli /opt/redis
[ src]$ cp redis-benchmark /opt/redis
[ src]$ cd ..
[ redis-4.0.11]$ cp redis.conf /opt/redis
[ redis-4.0.11]$ cp sentinel.conf /opt/redis

8. 修改服务器的redis.conf文件

vim /opt/redis/redis.conf

#bind 127.0.0.1    #把这一行注释掉
protected-mode no  # 把保护模式设置为no,如果这里是yes,那么修改为no
daemonize yes     #这里修改为yes,表示redis服务可以后台运行

slaveof 10.0.100.157 6379   #注意这一步只有从服务器要添加,标识从服务器隶属的主服务器

9. 关闭防火墙

systemctl stop firewalld.service

10. 创建全局快捷方式

ln -s /opt/redis-4.0.11/src/redis-server /usr/bin/redis-server  #注意根据自己的安装路径来做修改

11. 分别启动redis服务,并查看redis的信息

redis-server redis.conf

redis-cli info

可以看到redis的主从复制已经成功了,接下来我们来实验一下

至此,redis主从复制已经成功实现读写分离。

接下来是redis的哨兵模式

服务器上的redis进程和哨兵进程是不冲突的,所以直接在这三台服务器上部署哨兵进程

 

 

 

sentinel monitor mymaster 10.0.100.157 6379 2 #这里指的是监视哪一个redis集群,2代表的是主服务器挂了那么3个哨兵中2个确定挂了就可以随机选一个当主节点

 

注意在主从中配置为主节点的redis 在配置sentinel.conf的时候

需要把这句话注释掉 sentinel deny-scripts-reconfig yes 暂时我也不知道为什么 希望大佬看见能解释下 感激不尽!!


13. 配置好之后,启动服务

redis-server sentinel.conf --sentinel &

14. 通过如下命令可以查看哨兵信息

redis-cli -p 26379 INFO Sentinel

我们可以看到主节点是157,然后有两个从节点,总共三个哨兵

15. 验证是否符合预期

使用redis-cli shutdown命令将157的服务挂了,哨兵投票随机选取一个服务器当做新的主服务器

接下来我们再看看能不能在159上面进行写操作

结果符合预期,哨兵部署完毕

 

转载于:https://www.cnblogs.com/Leslie-/p/11474979.html

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: