主节点 与 从节点 安装
我们在01机器和02机器上进行安装redis,安装步骤相同
安装文件上传在/opt/redisdir文件夹中:先统一下需要的各类文件夹位置
/opt/redisdir/6379 - 持久化文件所在位置
/opt/redisdir/installdir - make安装的位置(安装完成后bin所在的文件夹)
/opt/redisdir/log - 在redis配置文件中配置的日志所在位置
/opt/redisdir/redisconf - redis配置文件所在位置
/etc/init.d/redis_6379 - redis跟随系统自启文件
1:上传安装包,然后解压进行安装。
tar -zxvf redis-5.0.5.tar.gz
cd redis-5.0.5
make PREFIX=/opt/redisdir/installdir install
# 以上命令对安装包进行解压后进行安装,PREFIX用来指定安装位置,/opt/redisdir/installdir
# 是我们指定的make安装的位置(安装完成后bin所在的文件夹)
2:配置文件redis.conf
#复制redis-5.0.5 根目录中的redis.conf 到
#我们定义的redis配置文件所在文件夹中/opt/redisdir/redisconf,并且用对应的端口作为名称
cp /opt/redisdir/redis-5.0.5/redis.conf /opt/redisdir/redisconf/6379.conf
# (配置后面再说)
3: 将自启的脚本文件redis_init_ 复制到 /etc/ini.d下。命名为redis_6379
# 脚本文件redis_init_ 复制到 /etc/ini.d下。命名为redis_6379
cp /opt/redisdir/redis-5.0.5/utils/redis_init_script /etc/init.d/redis_6379
对redis_6379做一些配置的修改:
- 修改点1:首先我们需要让redis跟随系统启动自动启动
在redis_6379脚本中,最上面,加入两行注释
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
- 修改点2:
对于各个文件的位置都需要做一下更改,不然用默认的位置,肯定找不到的
REDISPORT redis的端口(6379)
EXEC redis启redis-server所在位置(bin下面)
CLIEXEC redis启redis-cli所在位置 (bin下面)
PIDFILE 生成的pid文件所在位置(与redis配置文件中的需要一样)
CONF 配置文件所在位置(与redis配置文件中的需要一样)
- 然后配置自启动使用命令:
#配置完成之后,使用命令将其配置成服务:
Chkconfig redis_6379 on
以上基本上安装完成,并且可以启动。接下来是配置主从复制结构。
主从结构的配置
1:主节点的配置,在配置文件中配置
#1号机器作为主节点,编辑redis的配置文件/opt/redisdir/redisconf/6379.conf
vim /opt/redisdir/redisconf/6379.conf
然后对内容进行编辑:
# bind的地址改为本机的ip,如果是127.0.0.1的话从节点无法挂接过来
bind 192.168.1.51
port 6379
# 守护进程运行
daemonize yes
# pid文件存放位置
pidfile /opt/redisdir/run/redis_6379.pid
#日志文件所在位置
logfile "/opt/redisdir/log"
# 持久化文件存放位置
dir /opt/redisdir/6379
注意:主节点需要关闭防火墙,不然从节点无法连接主节点
报错:
* MASTER <-> SLAVE sync started
# Error condition on socket for SYNC: No route to host
再centos7中,使用命令 systemctl stop firewalld.service
其他版本使用service iptables stop
1:从节点的配置,在配置文件中配置
#2号机器作为主节点,编辑redis的配置文件/opt/redisdir/redisconf/6379.conf
vim /opt/redisdir/redisconf/6379.conf
然后对内容进行编辑:
# bind的地址改为本机的ip,如果是127.0.0.1的话从节点无法挂接过来
bind 192.168.1.52
#挂接到主节点
slaveof 192.168.1.51 6379
# 设置为只读模式
slave-read-only yes
port 6379
# 守护进程运行
daemonize yes
# pid文件存放位置
pidfile /opt/redisdir/run/redis_6379.pid
#日志文件所在位置
logfile "/opt/redisdir/log"
# 持久化文件存放位置
dir /opt/redisdir/6379
验证-启动主从节点
/opt/redisdir/installdir/bin/redis-server /opt/redisdir/redisconf/6379.conf
/opt/redisdir/installdir/bin/redis-cli -h xxx.xxx.xxx.xxx -p 6379
Info replication #命令查看主从信息
主节点
从节点
部署成功
集群安全认证
master上启用安全认证,requirepass
slace连接口令配置,masterauth
redis的验证机制也是相当的简单。在redis.conf中,有一句:
# requirepass foobared
去掉注释,把foobared改成自己的认证密码即可。
这样连接的时候, redis-cli -h x.x..x.x -a passwd 即可,加上 -a 参数认证
如果主机配置了认证机制,在从机的 配置上,也加上认证密码即可。修改从机的配置redis.conf
#masterauth passwd
去掉注释,修改成主机的认证密码即可