redis一主多从的哨兵模式配置

redis安装

1)ubuntu下安装redis

sudo apt update

sudo apt install redis-server

启动redis的服务端

redis-server

快速启动redis的客户端

redis-cli

2)linux下安装redis

下载地址:http://redis.io/download,下载最新稳定版本。

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

$ tar xzf redis-6.0.5.tar.gz

$ cd redis-6.0.5

$ make

redis主从配置

1)进入刚刚解压,编译的redis目录

2)mkdir conf //用以存放redis主从配置文件的文件夹

3)mkdir log //用以存放log日志的文件夹

4)mkdir pid //用以存放pid进程号的文件夹(方便于sheel的使用)

5)mkdir data //用以持久化数据存放的文件夹

6) mv redis.conf conf/6379.conf //将redis的配置文件移动到conf文件夹下,并以对应的端口号重命名。

7)修改6379.conf配置文件。

bind 0.0.0.0 //允许任何ip地址访问

port 6379 //端口号 logfile "./log/6379.log" //日志文件 dbfilename "6379.rdb" //持久化文件名(数据库文件名) daemonize yes //使用守护进程启动

pidfile ./pid/6379.pid //pid存放文件 dir ./data //本地数据库存放目录

requirepass 123456 //密码验证,(不建议开启,主从模式下,无影响,引入哨兵,当master宕机,会影响哨兵推选出来的新master)

8)cp 6379.conf 6380.conf/6381.conf,复制两份从数据库配置,并重命名,修改配置

bind 0.0.0.0 //允许任何ip地址访问

port 6380 //端口号 logfile "./log/6380.log" //日志文件 dbfilename "6380.rdb" //持久化文件名(数据库文件名) daemonize yes //使用守护进程启动

pidfile ./pid/6380.pid //pid存放文件 dir ./data //本地数据库存放目录

slaveof 172.16.2.100 6379 //配置主数据库的地址和端口号

slave-read-only yes //从数据库只允许读

masterauth //master配置了密码保护时,slave连接master需要密码验证

同理配置6381.conf

9)进入到redis的src目录下,启动redis服务

./redis-server ../conf/6379.conf

./redis-server ../conf/6380.conf

./redis-server ../conf/6381.conf

10)启动redis客户端,查看redis状态

./redis-cli -h 172.16.2.100 -p 6379

使用info查看状态

0

./redis-cli -h 172.16.2.100 -p 6380

使用info查看状态

0

配置哨兵

1)进入到redis目录下,创建sentinel文件夹,并进入(mkdir sentinel && cd sentinel)

2)mkdir log;mkdir pid 分别创建日志文件夹和进程文件夹

3)mv ../sentinel.conf /sentinel/26379.conf

4) 修改配置文件26379.conf

port 26379 //端口号

sentinel monitor //告诉sentinel去监听地址为ip:port的一个master,这里的master-name可以自定义,quorum是一个数字,指明当有多少个sentinel认为一个master失效时,master才算真正失效

示例:sentinel monitor mymaster 172.16.2.100 6379 2

daemonize yes //守护进程

pidfile "/usr/local/redis/sentinel/pid/26379.pid" //进程文件

logfile "/usr/local/redis/sentinel/log/26379.log" //日志文件

若建哨兵集群,复制26379.conf,修改对应端口号和进程文件,日志文件即可,如26380.conf

port 26380 //端口号

daemonize yes //守护进程运行

entinel monitor mymaster 172.16.2.100 6379 2

pidfile "/usr/local/redis/sentinel/pid/26380.pid" //进程文件

logfile "/usr/local/redis/sentinel/log/26380.log" //日志文件

5)启动哨兵服务,进入到src目录下

./redis-sentienl ../sentinel/26379.conf

6) src目录下,进入客户端,查看哨兵状态

./redis-cli -h 172.16.2.100 -p 26379

使用info查看状态

0

测试master宕机,哨兵自动推选新的master,宕到master,然后查看info即可,自行测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值