Centos7中Redis主从搭建与配置详解

2 下载量 23 浏览量 更新于2024-08-29 收藏 42KB PDF 举报
本文档详细介绍了在CentOS 7环境下搭建Redis主从复制集群的步骤以及主节点的配置过程。首先,我们概述了环境配置,包括一个运行作为主节点的Redis服务器(IP地址:172.18.8.19)和一个备用的从节点(IP地址:172.18.8.20)。接下来,我们将重点讨论主节点的配置。 1. **环境准备**: - 创建Redis的数据目录,如`/data0/redis_trade`,用于存储Redis的数据文件。 - 主节点的配置文件名为`redis_6379.conf`,在这个文件中,配置了一些基本参数: - `bind 172.18.8.19`: 设置主节点监听的IP地址,仅允许来自指定IP的连接。 - `protected-mode yes`: 开启保护模式,限制只接受来自本地的连接,通常在生产环境中应关闭或调整。 - `port 6379`: 设定主节点监听的端口。 - `tcp-backlog 511`: 设置网络连接队列长度,提高连接处理能力。 - `timeout 0`: 等待客户端连接的超时时间设置为0,表示永不超时。 - `tcp-keepalive 300`: 定义TCP连接保持活动的时间,防止长时间无操作导致连接断开。 - `daemonize yes`: 启用守护进程模式,使Redis在后台运行。 - `supervised no`: 指定是否由外部监控程序管理,这里设置为不被管理。 - `pidfile /var/run/redis_6379.pid`: 设置主进程PID文件的位置,便于管理和监控。 - `loglevel notice`: 设置日志级别,记录警告级别的信息。 - `logfile /var/log/redis_6379.log`: 指定日志文件路径,记录主节点的操作日志。 - `databases 16`: 定义数据库的数量。 - `save`: 规定了RDB持久化策略,当达到指定条件时触发全量备份。 - `slave-serve-stale-data yes`: 允许从节点在没有接收到新数据时提供服务。 - `slave-read-only yes`: 设置从节点只能读取,禁止写入操作。 - `repl-diskless-sync no`: 不进行无盘同步,可能会影响数据一致性,但可以减少网络带宽消耗。 - `repl-diskless-sync-delay 5`: 如果禁用无盘同步,则延迟时间设置为5秒。 - `slave-priority 100`: 设置从节点优先级,用于主从选举。 - `requirepass Allwelltokok`: 设置访问密码,提高安全性。 - `appendonly yes`: 开启AOF持久化,将所有命令写入到日志文件中。 - `appendfilename appendonly_6379.aof`: AOF文件名和格式。 - `auto-aof-rewrite-percentage 100` 和 `auto-aof-rewrite-min-size 64mb`: 自动重写AOF文件的条件。 - `aof-load-truncated yes`: 在AOF文件损坏时,允许从头开始加载,而非停止。 - `lua-time-limit 5000`: 设置Lua脚本的最大执行时间。 - `slowlog-log-slower-than 10000`: 记录执行时间超过指定阈值的命令。 - `slowlog-max-len 128`: 慢日志的最大条目数量。 - `latency-monitor-threshold 0`: 监控网络延迟的阈值。 - `notify-keyspace-events ""`: 关闭键空间事件通知。 这些配置确保了主节点的正常运行,并为从节点设置了正确的跟随模式。在实际部署时,还需对从节点进行相似的配置,并通过`redis-cli`或其他工具进行主从复制的相关操作,例如`redis-cli slaveof`命令来设置从节点的主服务器。在完成配置后,可以通过监控和测试来验证集群的稳定性和数据一致性。