centos部署redis主从

安装环境

CentOS 6.5 、CentOS 7.4

主Redis:10.159.44.175

从Redis: 10.159.44.176、10.159.44.177

Redis下载和安装

在3台机器上分别安装redis

#添加yum仓库

yum install epel-release -y

#安装redis

yum install redis -y

程序文件说明

安装完毕后有以下几个文件位于/usr/bin目录:

redis-server:Redis服务器的daemon启动程序

redis-cli:Redis命令行操作工具,也可以用telnet根据其纯文本协议来操作

redis-benchmark:Redis性能测试工具,测试Redis在当前系统及配置下的读写性能

redis-check-aof:更新日志检查

redis-check-dump:用于本地数据库检查

iptables策略配置

如果iptable处于启用状态,且INPUT链默认规则为drop,则需要配置开放端口

firewall-cmd --zone=public --add-port=4100/tcp --permanent

firewall-cmd --zone=public --add-port=4200/tcp --permanent

firewall-cmd --reload     #重新加载生效

**以上为端口根据实际情况添加,默认端口为:6370、26379

Redis主从配置

主redis的配置

在主Redis上编辑配置文件

# cat /etc/redis.conf

daemonize yes
pidfile "/var/run/redis/redis.pid"
port 4100
tcp-backlog 511
timeout 0
tcp-keepalive 0
loglevel notice
logfile "/var/log/redis/redis.log"
databases 16
save 900 1
save 300 10
save 60 10000
maxmemory 10g
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename "dump.rdb"
dir "/var/lib/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
appendonly yes
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
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-entries 512
list-max-ziplist-value 64
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
masterauth "LQi#czFe$!"
requirepass "LQi#czFe$!"
# Generated by CONFIG REWRITE
protected-mode no

从redis配置

在2台从服务器上编辑Redis的配置文件

以上面主redis的配置文件为基准,添加一行

slaveof  <主redis服务器IP>  <端口>

即完成 从redis的配置。

如:slaveof 10.159.44.175 4100  # 指向10.159.44.175:4100作为master服务器

Sentinel的配置

在3台服务器上分别编辑redis-sentinel的配置文件

vi /etc/redis-sentinel.conf

port 4200       # 默认使用4200端口
daemonize yes
protected-mode no
logfile "/var/log/redis/sentinel.log"
pidfile "/var/run/redis/sentinel.pid"
dir "/tmp

sentinel monitor mymaster 10.159.44.175 4100 1      # 监视一个名为 mymaster 的主服务器, 这个主服务器的 IP 地址为 127.0.0.1 , 端口号为 4100 , 而将这个主服务器判断为失效至少需要 2 个 Sentinel 同意 (只要同意 Sentinel 的数量不达标,自动故障迁移就不会执行)。
sentinel down-after-milliseconds mymaster 5000       # 指定了 Sentinel 认为服务器已经断线所需的毫秒数。
sentinel config-epoch mymaster 10                            # 配置纪元,可以理解为配置的版本号,因为Sentinel会主动自动修改redis.conf和自己的redis-sentinel.conf来保持主从同步,此项数值可随意设置,但当Sentinel做过自动的主从切换以后,数值会加1。

sentinel parallel-syncs mymaster 1                             # 在执行故障转移时, 最多可以有多少个从服务器同时对新的主服务器进行同步, 这个数字越小, 完成故障转移所需的时间就越长,但越大就意味着越多的从服务器因为复制而不可用。可以通过将这个值设为 1 来保证每次只有一个从服务器处于不能处理命令请求的状态。

注意:/etc/redis-sentinel.conf 必须要有写入权限。

常用命令

Redis的启动,停止,重启:

systemctl start redis.service

systemctl stop redis.service

systemctl restart redis.service

Redis Sentinel的启动,停止,重启:

systemctl start redis-sentinel.service

systemctl stop redis-sentinel.service

systemctl restart redis-sentinel.service

使用redis客户端连接服务初始化已经确认状态

redis-cli -p 4100 -h 127.0.0.1  # 使用参数指定:-p 端口 -h 服务器地址

127.0.0.1:6379> auth passwd                                #使用密码登录

OK

127.0.0.1:6379> config set protected-mode "no"   #修改redis的保护模式为no,不启用。

OK

127.0.0.1:6379> info                                              #查看状态

原文地址:https://www.cnblogs.com/shawhe/p/redis.html

时间: 2024-10-17 20:57:30

centos部署redis主从的相关文章

部署redis主从高可用集群

部署redis主从高可用集群本文部署的redis集群是一主一从,这两台服务器都设置了哨兵进程,另外再加一台哨兵做仲裁,建议哨兵数量为基数172.16.1.187    redis主+哨兵172.16.1.188    redis从+哨兵172.16.1.189    哨兵以上系统均为CentOS6 在187,188,189上部署redis过程如下:(1)redis使用编译安装方式,所以需要安装编译基本组件# yum -y install gcc gcc-c++ make cmake cpp gl

SaltStack入门篇(六)之部署Redis主从实现和Job管理

一.部署Redis主从 需求: 192.168.56.11是主,192.168.56.12是从 redis监听自己的ip地址,而不是0.0.0.0 分析: linux-node1 安装 配置 启动 linux-node2 安装 配置 启动 设置主从 [[email protected] ~]# yum install redis -y [[email protected]-node1 prod]# mkdir redis/files -p [[email protected]-node1 red

部署redis主从集群并开启哨兵模式

一.部署环境系统:centos7通过在Linux系统上启动两个不同的redis实例来完成主从集群的部署yum源已部署 二.redis的下载与安装1.下载:官网下载2.安装创建/app/目录,redis安装在/app/目录下 [[email protected] ~]# mkdir /app [[email protected] ~]# cd /usr/local/src/ [[email protected] src]# ls redis-4.0.11.tar.gz [[email protec

单机部署redis主从备份

redis为了避免单点故障,也支持主从备份.个人在做主从备份的实验时,因为机器数量有限,一般非常少有多台机器做支撑. 本文就将叙述怎样在一台电脑上实现redis的主从备份. 同一台机器上部署多个redis实例,为了避免冲突,每一个实例须要使用不同的port号.非常easy.在启动redis时,指定不同的port号,或者在配置文件里指定port号.我的这个实验是在配置文件里指定的port号: 然后在启动时,指定配置文件启动: ./redis-server ./redis.conf 还能够以其它方式

利用Sentinel实现Redis主从切换

利用Sentinel(哨兵)实现Redis集群的故障自主切换 首先部署redis主从集群,这里忽略过程,主要看配置文件: master: bind 0.0.0.0 port 6801 logfile "./redis.log" requirepass 12345678 masterauth 12345678 #主从密码,主变为从时,以从的身份去同步主节点 slave: bind 0.0.0.0 port 6802 logfile "./redis.log" requ

Redis 主从+哨兵安装与部署

1 前言 redis集群常见的部署方式有: 采用主从复制 + sentinel(哨兵)监控的方式; 采用redis-cluster集群(去中心化分片集群)的方式 本文以笔者内部项目为例,采用主从复制+哨兵的方式部署. 2 版本说明 三台服务器(一主两从):192.168.1.60 为主服务器,192.168.1.59 和192.168.1.58 为从服务器 操作系统:CentOS Linux release 7.4.1708 (Core) JDK版本:jdk 1.8.0_171 REDIS版本:

主从集群搭建及容灾部署redis

redis主从集群搭建及容灾部署(哨兵sentinel) Redis也用了一段时间了,记录一下相关集群搭建及配置详解,方便后续使用查阅. 提纲 l  Redis安装 l  整体架构 l  Redis主从结构搭建 l  Redis容灾部署(哨兵sentinel) l  Redis常见问题 Redis安装 发行版:CentOS-6.6 64bit 内核:2.6.32-504.el6.x86_64 CPU:intel-i7 3.6G 内存:2G 下载redis,选择合适的版本 [[email prot

redis主从集群搭建及容灾部署(哨兵sentinel)

Redis也用了一段时间了,记录一下相关集群搭建及配置详解,方便后续使用查阅. 提纲 l  Redis安装 l  整体架构 l  Redis主从结构搭建 l  Redis容灾部署(哨兵sentinel) l  Redis常见问题 Redis安装 发行版:CentOS-6.6 64bit 内核:2.6.32-504.el6.x86_64 CPU:intel-i7 3.6G 内存:2G 下载redis,选择合适的版本 [[email protected] software]# wget http:/

redis 主从结构部署

Redis 主从搭建 结构: 1). 同一个Master可以同步多个Slaves.    2). Slave同样可以接受其它Slaves的连接和同步请求,这样可以有效的分载Master的同步压力.因此我们可以将Redis的Replication架构视为图结构.    3). Master Server是以非阻塞的方式为Slaves提供服务.所以在Master-Slave同步期间,客户端仍然可以提交查询或修改请求.    4). Slave Server同样是以非阻塞的方式完成数据同步.在同步期间