我们需要在虚拟机中安装好两台centos系统,然后再去搭建一主一从的redis架构。
需要说明,本小节只关注单机redis的搭建,我们需要在两台虚拟机上分别搭建redis,并启动redis进程。
wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
tar -xzvf tcl8.6.1-src.tar.gz
cd /usr/local/tcl8.6.1/unix/
./configure
make && make install
安装好redis以后,我们需要将它作为守护进程启动,因为生产环境的需要。
REDISPORT
,设置为6379#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
# redis配置文件路径设置
CONF="/etc/redis/${REDISPORT}.conf"
# 本地的开发调试的模式,只能127.0.0.1本地才能访问到6379的端口,一定要注释掉
# bind 127.0.0.1、
# 让redis以daemon进程运行(守护进程)
daemonize yes
# 设置redis的pid文件位置
pidfile /var/run/redis_6379.pid
# redis实例监听的端口
port 6379
# 设置redis持久化文件的存储位置
dir /var/redis/6379
ps -ef | grep redis
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
chkconfig redis_6379 on
上述操作需要分别在两台服务器上都执行一下
配置slave节点的6379.conf文件
# 192.168.1.104 6379 是master的地址
slaveof 192.168.1.104 6379
# 开启了只读的redis slave node,会拒绝所有的写操作,这样可以强制搭建成读写分离的架构
slave-read-only yes
master上启用安全认证,requirepass master连接口令,masterauth
这一步笔者没有尝试,读者可以试着设置一下。
按照上面的操作,但跳过集群安全认证的步骤,slave并没有同步master中的数据。
在master上使用telnet命令连接发现:
-DENIED Redis is running in protected mode because protected mode is enabled...
本文系作者在时代Java发表,未经许可,不得转载。
如有侵权,请联系nowjava@qq.com删除。