当前位置: 首页 > article >正文

redis部署手册

文章目录

  • 一、 环境配置
    • 资源配置
      • 操作系统
      • 资源配置
        • 服务器1
        • 服务器2
        • 服务器3
    • 目录规划
  • 二、Redis软件部署
    • 2.1 上传相关软件包
    • 2.2 安装软件
    • 2.3 修改配置文件
      • 2.3.1 修改redis.conf
      • 2.3.2 修改sentinel.conf
      • 2.3.3 启动
      • 2.3.4 安装完成
  • 三、Redis的哨兵恢复
    • 3.1 现象
    • 3.2 解决方法

一、 环境配置

资源配置

操作系统

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


http://www.kler.cn/a/376654.html

相关文章:

  • Ubuntu桌面管理环境: GDM3,KDM,LightDM
  • windows及linux 安装 Yarn 4.x 版本
  • 提升 PHP 编码效率的 10 个实用函数
  • 20250110_ PyTorch中的张量操作
  • Nacos server 2.4.0 版本已知问题和 Bug 汇总
  • AI的主流数据库介绍及其功能对比
  • 长短时记忆网络(LSTM):解决 RNN 长期依赖问题的高手
  • App测试流程及测试点详解
  • GraphQL系列 - 第2讲 Spring集成GraphQL
  • 编程小白入门指南
  • Python List列表
  • 挑战自闭症摘帽困境:引导孩子重获希望
  • 基于微信小程序的校园失物招领系统的研究与实现(V4.0)
  • net mvc中使用vue自定义组件遇到的坑
  • 【Java设计模式】16-26章
  • 栈的实现
  • 操作系统-多线程案例
  • Muse-Ant-Desgin-Vue 改造成 Vite+Vue3
  • 023集——CAD 窗体交互、多段线进行翻转、错误提示(CAD—C#二次开发入门)
  • Milvus - 基于角色的访问控制(RBAC)
  • transformers 框架使用详解,bert-base-chinese
  • 网页自动化测试和爬虫:Selenium库入门与进阶
  • C++教程(004):程序流程结构之选择结构
  • GB/T 28046.3-2011 道路车辆 电气及电子设备的环境条件和试验 第3部分:机械负荷(1)
  • 免费插件集-illustrator插件-Ai插件-闭合开放路径
  • 设计师赵霂萱:以卓越设计让 Harmony Garden Workspace 荣膺国际大奖