linux服务器redis部署(哨兵模式)

一、部署说明:

准备了三台主机,如下操作先完成10.1.61.11(主)的部署

10.1.61.11(作为主)

10.1.61.12(作为从)

10.1.61.13(作为从)

1、下载redis代码:

任意进入一个可以保存代码的路径下(/home/webjoin/local),执行下载操作

cd /home/webjoin/local
wget http://download.redis.io/releases/redis-7.0.13.tar.gz

2、解压代码

tar -zxvf redis-7.0.13.tar.gz

3、执行编译安装:

cd redis-7.0.13
make install PREFIX=/home/webjoin/local/redis/redis-7.0.13
mkdir log run working

说明:编译安装完成后,代码在bin目录下,PREFIX后面跟的路径是安装redis的位置,并创建了三个文件夹存放日志等文件

4、拷贝配置文件到bin目录下

cp /home/webjoin/local/redis-7.0.13/redis.conf /home/webjoin/local/redis/redis-7.0.13/bin
cp /home/webjoin/local/redis-7.0.13/sentinel.conf /home/webjoin/local/redis/redis-7.0.13/bin

redis.conf配置文件末尾添加(如果有和原redis.conf重复的参数,自行删除即可):

# 工作目录
dir /home/webjoin/local/redis/redis-7.0.13/working
# # 需要不同服务器的节点连通,就不能设置为 127.0.0.1
bind 0.0.0.0
# # 需要不同服务器的节点连通,这个就要设置为 no
protected-mode no
# # 设置后台运行redis
daemonize yes
# # 端口
# port 6379
# # 密码
requirepass i23456
# # PID文件
pidfile /home/webjoin/local/redis/redis-7.0.13/run/redis_6379.pid
# # LOG文件
logfile /home/webjoin/local/redis/redis-7.0.13/log/redis.log
# # RDB文件名
dbfilename dump.rdb
# # 开启AOF
appendonly yes
# # AOF文件名
appendfilename "appendonly.aof"
# # 主节点认证,主从节点均需要配置
masterauth 123456

sentinel.conf配置文件用以下就可以了(注意文件中我写的注意事项)

# 保护模式默认关闭
protected-mode no
# 哨兵端口
port 26379
# 后台运行
daemonize yes
# pid
pidfile "/home/webjoin/local/redis/redis-7.0.13/run/redis-sentinel.pid"
# log
logfile "/home/webjoin/local/redis/redis-7.0.13/log/redis-sentinel.log"
# 工作目录
dir "/home/webjoin/local/redis/redis-7.0.13/working"
# 监控Redis主服务
sentinel monitor redis-master 10.1.61.11 6379 2
# 配置认证密码
sentinel auth-pass redis-master 12345678
# S_DOWN时间

# 设置在故障转移后可以重新配置以同时使用新主服务器的副本数

# 故障转移超时时间

acllog-max-len 128
sentinel deny-scripts-reconfig yes
sentinel resolve-hostnames no
sentinel announce-hostnames no

#注意注意,从这往下的参数先不要填写,在bin目录下执行:./redis-sentinel sentinel.conf后即可生成下面# Generated by CONFIG REWRITE下面的几行,其中需要关注myid 对应的值,会在其它几个从服务器的哨兵配置中用到,参考下面最后几行
# Generated by CONFIG REWRITE
latency-tracking-info-percentiles 50 99 99.9
user default on nopass sanitize-payload ~* &* +@all
sentinel myid 3a80ffdf1610aa5d445a04e15f988adbc0dbba53
sentinel config-epoch redis-master 0
sentinel leader-epoch redis-master 1
sentinel current-epoch 1

#哨兵配置
sentinel known-replica redis-master 10.1.61.12 6379
sentinel known-replica redis-master 10.1.61.13 6379
sentinel known-sentinel redis-master 10.1.61.12 26379 ebf711bac3990a534fc068312b7622c849dc65e5
sentinel known-sentinel redis-master 10.1.61.13 26379 ec8837fb38d22daa9800b82006130fe625d959ff
#ebf711bac3990a534fc068312b7622c849dc65e5和ec8837fb38d22daa9800b82006130fe625d959ff是10.1.61.12、10.1.61.13的myid对应的值
#每台机器都配其它两台机器的ip和端口(redis端口、哨兵端口)、myid

安装上面步骤执行完成后,即可启动redis了(需要启动两个,一个是redis,一个是哨兵):

./redis-server redis.conf
./redis-sentinel sentinel.conf

上面redis的主服务器就安装好了,下面进行两个从服务器进行安装redis

5、安装从redis(10.1.61.12和10.1.61.13)

复用1~4步骤,新增配置

redis.conf文件末尾新增如下参数:

#表示关联对应的主服务器和端口
replicaof 10.1.61.11 6379

操作完以上就可以完成10.1.61.12、10.1.61.13从服务器的配置,按照步骤4启动

6、安装完成验证:

验证主服务器(10.1.61.11):

#在bin目录下执行,其中123456是密码
./redis-cli -p 6379 -a '123456'
#执行结果
127.0.0.1:6379> info replication
# Replication
role:master(代表他是主)
connected_slaves:2(代表他和两个从服务器链接)
slave0:ip=10.1.61.12,port=6370,state=online,offset=121147,lag=0
slave1:ip=10.1.61.13,port=6379,state=online,offset=121147,lag=1
master_failover_state:no-failover
master_replid:ba21bec2faf57f89808b153b07a7981f786e7dcc
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:121147
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:121147
127.0.0.1:6379> 

验证从服务器(10.1.61.12):

#在bin目录下执行
./redis-cli -p 6379 -a '123456'
#执行结果
127.0.0.1:6379> info replication
# Replication
role:slave(代表他是从服务器)
master_host:10.1.61.11(代表他对应的主服务器是10.1.61.11)
master_port:6379
master_link_status:up
master_last_io_seconds_ago:9
master_sync_in_progress:0
slave_read_repl_offset:121035
slave_repl_offset:121035
slave_priority:100
slave_read_only:1
replica_announced:1
connected_slaves:0
master_failover_state:no-failover
master_replid:ba21bec2faf57f89808b153b07a7981f786e7dcc
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:121035
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:121035
127.0.0.1:6379> 

7、完成

ip密码redis端口哨兵端口
10.1.61.11123456637926379
10.1.61.12123456637926379
10.1.61.13123456637926379

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值