redis部署手册

一、 环境配置

资源配置

操作系统

18.04.6 LTS (Bionic Beaver)

资源配置

服务器1

CPU: 4核

内存: 4 GB

磁盘: 100 GB sda[系统盘] 50GB, 默认分区

sdc[数据盘] 50GB 挂载点 /dcdata

备注:数据盘需支持扩展

服务器2

CPU: 4核

内存: 4 GB

磁盘: 100 GB sda[系统盘] 50GB, 默认分区

sdc[数据盘] 50GB 挂载点 /dcdata

备注:数据盘需支持扩展

服务器3

CPU: 4核

内存: 4 GB

磁盘: 100 GB sda[系统盘] 50GB, 默认分区

sdc[数据盘] 50GB 挂载点 /dcdata

备注:数据盘需支持扩展

备注:数据盘需支持扩展

备注:redis存储根据业务数据量来看服务器的配置。

目录规划

二、Redis软件部署

2.1 上传相关软件包

此安装包为针对ubuntu18.04.6版本的镜像源,相关的deb文件。也可通过安装

build-essential和pkg-config 工具来编译安装redis。

redis安装依赖包

三台机器均上传该文件包

2.2 安装软件

dpkg -i *.deb

2.3 修改配置文件

2.3.1 修改redis.conf

bind 0.0.0.0
protected-mode yes
port 6379
tcp-backlog 511
timeout 0
tcp-keepalive 300
daemonize yes
supervised no
pidfile "/var/run/redis/redis-server.pid"
loglevel notice
logfile "/var/log/redis/redis-server.log"
databases 16
always-show-logo yes
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename "dump.rdb"
dir "/var/lib/redis"
masterauth "redis"
slave-serve-stale-data yes
slave-read-only yes
repl-diskless-sync no
repl-diskless-sync-delay 5
repl-disable-tcp-nodelay no
slave-priority 100
requirepass "redis"
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
slave-lazy-flush no
appendonly no
appendfilename "appendonly.aof"
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
aof-use-rdb-preamble no
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes

修改以下配置项

.

2.3.2 修改sentinel.conf

daemonize yes
pidfile "/var/run/sentinel/redis-sentinel.pid"
logfile "/var/log/redis/redis-sentinel.log"

protected-mode no

port 26379

dir "/var/lib/redis"

sentinel myid e5ddbb49c8b2eb9374ace273800135b8fd1bf6f0

sentinel monitor redismaster 10.255.131.11 6379 2

sentinel auth-pass redismaster redis

sentinel config-epoch redismaster 1

sentinel leader-epoch redismaster 1

sentinel down-after-milliseconds redismaster 3

2.3.3 启动

systemctl start redis

systemctl start redis-sentinel

2.3.4 安装完成

手动kill掉12上的redis进程; 3秒后切换

三、Redis的哨兵恢复

3.1 现象

哨兵脑裂;通过 redis-cli 查看主从与查看redis-sentinel 里面的配置信息不一致;

INFO replication

哨兵中的主节点为 cat /etc/redis/sentinel.conf

3.2 解决方法

  1. 找出拥有最新数据的节点,手动设置为主节点

slaveof no one

其他节点设置同步的主节点

SLAVEOF 10.255.131.11 6379

  1. 手动修改 /etc/redis/sentinel.conf 文件;使各节点的主节点都保持一致; 以及修改下方的从节点信息,每个节点都有自己的myid;不要弄错了。

修改后再重启下sentinel即可;

systemctl restart sentinel
拥有最新数据的节点,手动设置为主节点

slaveof no one

其他节点设置同步的主节点

SLAVEOF 10.255.131.11 6379

  1. 手动修改 /etc/redis/sentinel.conf 文件;使各节点的主节点都保持一致; 以及修改下方的从节点信息,每个节点都有自己的myid;不要弄错了。

修改后再重启下sentinel即可;

systemctl restart sentinel

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JavaOpsPro

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值