安装部署redis集群
已经安装了gcc及gcc-c++(yum install -y gcc-c++)

redis1 服务器 开通防火墙 端口 8001 8002 8003 18001 18002 18003

redis2 服务器 开通防火墙 端口 8004 8005 8006 18004 18005 18006
1.将介质解压
tar xzvf redis-5.0.7.tar.gz -C /usr/local/

2编译安装
cd redis-5.0.7/
make #对解压后文件进行编译
cd ./src #进入到src文件目录下
make install #进行redis安装
3便于维护的文件目录,Redis文件中的conf配置文件和常用命令移动到统一文件中
cd redis-5.0.7/
mkdir bin && mkdir etc
mv redis.conf etc/
cd src
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server /usr/local/redis-5.0.7/bin/
4集群部署
cd /usr/local/redis-5.0.7/src/
cp redis-trib.rb ../bin/
cd /usr/local/redis-5.0.7
mkdir /usr/local/redis-5.0.7/redis_cluster
cd /usr/local/redis-5.0.7/redis_cluster
#注redis服务器1
mkdir 8001 8002 8003
cp /usr/local/redis-5.0.7/etc/redis.conf /usr/local/redis-5.0.7/redis_cluster/8001
cp /usr/local/redis-5.0.7/etc/redis.conf /usr/local/redis-5.0.7/redis_cluster/8002
cp /usr/local/redis-5.0.7/etc/redis.conf /usr/local/redis-5.0.7/redis_cluster/8003
#注redis服务器2
cd /usr/local/redis-5.0.7/redis_cluster
mkdir 8004 8005 8006
cp /usr/local/redis-5.0.7/etc/redis.conf /usr/local/redis-5.0.7/redis_cluster/8004
cp /usr/local/redis-5.0.7/etc/redis.conf /usr/local/redis-5.0.7/redis_cluster/8005
cp /usr/local/redis-5.0.7/etc/redis.conf /usr/local/redis-5.0.7/redis_cluster/8006
修改集群配置文件
#分别修改redis_cluster/8001 redis_cluster/8002 redis_cluster/8003 redis_cluster/8004 redis_cluster/8005 redis_cluster/8006

cd /usr/local/redis-5.0.7/redis_cluster/8001 #8001-8006
#注修改一下内容
sed -i 's/^bind/#&/g' redis.conf &&
sed -i 's/^protected-mode/#&/g' redis.conf &&
sed -i 's/^port/#&/g' redis.conf &&
sed -i 's/^daemonize/#&/g' redis.conf &&
sed -i 's/^dir/#&/g' redis.conf &&
sed -i 's/^pidfile/#&/g' redis.conf &&
sed -i 's/^logfile/#&/g' redis.conf &&
sed -i 's/^appendonly/#&/g' redis.conf
所有配置文件添加参数
#分别修改redis_cluster/8001 redis_cluster/8002 redis_cluster/8003 redis_cluster/8004 redis_cluster/8005 redis_cluster/8006

bind ip
protected-mode no
port 8001
daemonize yes
pidfile /var/run/redis_8001.pid
logfile "/usr/local/redis-5.0.7/redis_cluster/8001/redis.log"
dir /usr/local/redis-5.0.7/redis_cluster/8001
cluster-enabled yes
cluster-config-file node-8001.conf
cluster-node-timeout 15000
appendonly yes
masterauth redis
requirepass redis
启动所有节点
redis-server /usr/local/redis-5.0.7/redis_cluster/8001/redis.conf
redis-server /usr/local/redis-5.0.7/redis_cluster/8002/redis.conf
redis-server /usr/local/redis-5.0.7/redis_cluster/8003/redis.conf
redis-server /usr/local/redis-5.0.7/redis_cluster/8004/redis.conf
redis-server /usr/local/redis-5.0.7/redis_cluster/8005/redis.conf
redis-server /usr/local/redis-5.0.7/redis_cluster/8006/redis.conf
在其中一台执行创建集群命令
redis-cli -a 'redis' --cluster create 192.168.216.164:8001 192.168.216.164:8002 192.168.216.164:8003 192.168.216.165:8004 192.168.216.165:8005 192.168.216.165:8006 --cluster-replicas 1

Can I set the above configuration? (type 'yes' to accept):
yes
测试集群
redis-cli -a 'redis' -h 192.168.216.164 -c -p 8001
set cluster-test access
换其他redis登录获取值
redis-cli -a 'redis' -h 192.168.216.165 -c -p 8004
get cluster-test
redis遵守BSD协议,是有个高性能NOSQL的key-value数据库
配置文件介绍
bind 127.0.0.1			#本机访问,改掉不可能本地访问
daemonize no #守护进程开启,启用后台管理
pidfile path #进程PID
loglevel notice #日志级别
databases 16 #数据库数量
rdbcompression yes #硬盘存储压缩算法存储默认yes
dbfilename dump.rdb #数据库文件名称可以更改默认dump.rdb
dir ./ #指定数据库存放的目录
requirepass redis #设置数据库密码
maxmemory <byte> #设置Redis最大内存级别,前提内存空间够大
replica-read-only yes #主从复制,从机不可写
RDB持久化
save 900 1
save 300 10
save 60 10000
#900秒内1个发生改变,300秒内10个发生改变,60秒内10000个发生改变,写入文件->*.rdb
AOF持久化
apped only 		file
appendfsync always #每次收到数据就写入磁盘不推荐
appendfsync everysec #每秒强制写入一次磁盘
PHP Redis扩展
tar xvf redis-4.3.0.tgz
cd redis-4.3.0
phpize
./configure && make && make install
ls /usr/local/php/lib/php/extensions/no-debug-zts-20170718/redis.so #查看是否安装成功
vim /usr/local/php/etc/php.ini
extension=redis.so
service php-fpm restart
测试php redis是否安装成功