Redis主从集群搭建的方法
Redis是一个开源的,基于内存的数据结构存储系统,可以用作数据库、缓存和消息中间件,在分布式系统中,为了提高系统的可用性和扩展性,通常会采用主从复制的方式来实现数据的备份和负载均衡,本文将介绍如何搭建Redis主从集群。
准备工作
1、环境准备
首先需要准备两台或以上的服务器,操作系统可以是Linux或者Windows,推荐使用Linux系统,因为Redis官方推荐的安装方式是基于Linux的。
2、安装Redis
在每台服务器上安装Redis,可以使用源码编译安装或者使用官方提供的预编译包,以下是在Linux系统上使用源码编译安装Redis的方法:
下载Redis源码包 wget http://download.redis.io/releases/redis6.2.5.tar.gz 解压源码包 tar xzf redis6.2.5.tar.gz 进入解压后的目录 cd redis6.2.5 编译安装 make && make install
配置主节点
1、修改配置文件
在主节点的Redis目录下,找到redis.conf文件,打开并修改以下配置项:
绑定IP地址,设置为0.0.0.0表示监听所有IP地址 bind 0.0.0.0 设置密码,如果有需要的话 requirepass your_password
2、创建RDB文件快照
为了让从节点能够同步数据,需要在主节点上创建一个RDB文件快照,执行以下命令:
rediscli save appendonly yes
配置从节点
1、修改配置文件
在从节点的Redis目录下,找到redis.conf文件,打开并修改以下配置项:
绑定IP地址,设置为0.0.0.0表示监听所有IP地址,与主节点保持一致 bind 0.0.0.0 设置密码,如果有需要的话,与主节点保持一致 requirepass your_password
2、指定主节点信息
在从节点的redis.conf文件中,添加以下配置项:
指定主节点的IP地址和端口号 slaveof your_master_ip your_master_port
启动Redis服务
1、启动主节点的Redis服务:
redisserver /path/to/your/redis.conf daemonize yes
2、启动从节点的Redis服务:
redisserver /path/to/your/redis.conf daemonize yes slaveof your_master_ip your_master_port masterauth your_password requirepass your_password appendonly yes loadmodule /path/to/your/rdbcompression.so dbfilename dump.rdb dir /path/to/your/dumpdir rdbcompression yes rdbchecksum yes save "" appendonly no slaveservestaledata yes slavereadonly yes repldisabletcpnodelay no replbacklogsize 1mb replbacklogttl 3600 repldisablepoisonmessages no slavepriority 100 minslavestowrite 3 minslavesmaxlag 10 slavelatencythreshold 100 slavependingjobssizelimit 1gb appendfsync everysec noappendfsynconrewrite no appendonly yes appendfilename "appendonly.aof" appendfsync always appendfsynceverysec no noappendfsynconrewrite no autoaofrewritepercentage 100 autoaofrewriteminsize 64mb aofloadtruncated yes aofuserdbpreamble yes stopwritesonbgsaveerror yes rdbcompression yes rdbchecksum yes dbfilename dump.rdb dir /path/to/your/dumpdir rdbcompression yes rdbchecksum yes save "" appendonly no slaveservestaledata yes slavereadonly yes repldisabletcpnodelay no replbacklogsize 1mb replbacklogttl 3600 repldisablepoisonmessages no slavepriority 100 minslavestowrite 3 minslavesmaxlag 10 slavelatencythreshold 100 slavependingjobssizelimit 1gb appendfsync everysec noappendfsynconrewrite no appendonly yes appendfilename "appendonly.aof" appendfsync always appendfsynceverysec no noappendfsynconrewrite no autoaofrewritepercentage 100 autoaofrewriteminsize 64mb aofloadtruncated yes aofuserdbpreamble yes stopwritesonbgsaveerror yes rdbcompression yes rdbchecksum yes dbfilename dump.rdb dir /path/to/your/dumpdirrdbcompression yesrdbchecksum yessave ""appendonly noslaveof your_master_ip your_master_portmasterauth your_passwordrequirepass your_passwordappendonly yesloadmodule /path/to/your/rdbcompression.sodbfilename dump.rdbdir /path/to/your/dumpdirrdbcompression yesrdbchecksum yessave ""appendonly noslaveof your_master_ip your_master_portmasterauth your_passwordrequirepass your_passwordappendonly yesloadmodule /path/to/your/rdbcompression.sodbfilename dump.rdbdir /path/to/your/dumpdirrdbcompression yesrdbchecksum yessave ""appendonly noslaveof your_master_ip your_master_portmasterauth your_passwordrequirepass your_passwordappendonly yesloadmodule /path/to/your/rdbcompression.sodbfilename dump.rdbdir /path/to/your/dumpdirrdbcompression yesrdbchecksum yessave ""appendonly noslaveof your_master_ip your_master_portmasterauth your_passwordrequirepass your_passwordappendonly yesloadmodule /path/to/your/rdbcompression.sodbfilename dump.rdbdir /path/to/your/dumpdirrdbcompression yesrdbchecksum yessave ""appendonly noslaveof your_master_ip your_master_portmasterauth your_passwordrequirepass your_passwordappendonly yesloadmodule /path/to/your/rdbcompression.sodbfilename dump.rdbdir /path/to/your/dumpdirrdbcompression yesrdbchecksum yessave ""appendonly noslaveof your_master_ip your_master_portmasterauth your_passwordrequirepass your_passwordappendonly yesloadmodule /path/to/your/rdbcompression.sodbfilename dump.rdbdir /path/to/your/dumpdirrdbcompression yesrdbchecksum yessave ""appendonly noslaveof your_master_ip your_master_portmasterauth your_passwordrequirepass your_passwordappendonly yesloadmodule /path/to/your/rdbcompression.sodbfilename dump.rdb
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/470663.html