阅读 117

【Redis主从架构】搭建一个一主一从的Redis主从架构

1. 学习目标

搭建一个一主一从的Redis主从架构。

主节点去写,从节点去读,如果在主节点写入数据之后,从节点能读取到,就说明搭建成功了。

2. 搭建 redis slave node

2.1 安装tcl


#1. 下载tcl安装包
wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz

#2. 解压tcl8.6.1-src.tar.gz
tar -zxvf tcl8.6.1-src.tar.gz

#3. 配置tcl
cd /usr/local/tcl8.6.1/unix
./conifgure

#4. 安装tcl
make && make install
复制代码

2.2 安装Redis

tar -zxvf redis-3.2.8.tar.gz

cd redis-3.2.8

make && make test && make install
复制代码

2.2.1 Redis生产环境启动方案配置

  1. redis/utils目录下,有个redis_init_script脚本

0

  1. redis_init_script脚本拷贝到 linux系统的/etc/init.d目录中,将redis_init_script重命名为redis_63796379是我们希望这个redis实例监听的端口号

    1

  2. 修改redis_6379脚本的第6行的REDISPORT,设置为相同的端口号(默认就是6379)

2

  1. 创建两个目录:/etc/redis(存放redis的配置文件),/var/redis/6379(存放redis的持久化文件)
mkdir /etc/redis

mkdir /var/redis/6379
复制代码
  1. 修改redis配置文件(默认在根目录下,redis.conf),拷贝到/etc/redis目录中,修改名称为6379.conf
  • redis.conf

1

2

5.1 修改redis.conf中的部分配置为生产环境


# 让redis以daemon进程运行
daemonize yes

# 设置redis的pid文件位置
pidfile /var/run/redis_6379.pid

# 设置redis的监听端口号
port 6379

# 设置持久化文件的存储位置
dir /var/redis/6379

# 绑定ip地址(本机的ip地址)
bind 192.168.0.111

复制代码

1

2

3

5.2 设置redis跟随系统启动自启动**

在redis_6379脚本中,最上面,加入两行注释

# chkonfig: 2345 90 10

# description: Redis is a persistent key-value datebase

复制代码

4

执行命令:chkconfig redis_6379 on

2.2.2 配置主从节点

在slave node配置:

# 注意:redis3.x 版本是配置:slaveof 192.168.1.1 6379

# 我用的是redis-5.x
 replicaof 192.168.0.103
复制代码

1

2

2.2.3 设置从节点只读

基于主从复制架构,实现读写分离

在slave node配置只读:

# 配置只读(我用的的redis-5.x版本,redis-3.x版本配置为:slave-read-only yes)
replica-read-only yes
复制代码

3

开启了只读的redis slave node,会拒绝所有的写操作,这样可以强制搭建读写分离的架构

2.2.4 集群安全认证

master node上启用安全认证,requirepass

# 开启安全认证
requirepass foobared
复制代码

1

slave node上设置连接口令:

masterauth foobared
复制代码

4

2.2.5 防止意外,放开6379端口

iptables -A INPUT -ptcp --dport  6379 -j ACCEPT
复制代码

2.2.6 主从架构测试

启动主从节点,进入命令行:

redis-cli -h ipaddr
复制代码

执行命令,查看其他节点信息:

info replication
复制代码

在主上写,在从上读

  • 从节点

1

  • 主节点

2

  • 测试,主节点写一条数据,看能否从从节点获取到数据
  • Slave节点一连接到Master节点的时候,就会将Master节点的数据复制到slave节点。
关注下面的标签,发现更多相似文章
评论