感谢各位一直以来的支持和鼓励
制作不易 求点赞 ➕ 收藏 ⭐ ⭐ ⭐ ➕ 关注✅✅✅
一键三连走起 ! ! !
一个Redis服务可以有多个该服务的复制品,这个Redis服务称为Master,其他复制品称为Slaves,只要网络连接正常,Master会一直将自己的数据更新同步给Slaves,从而保持主从同步,并且只有Master可以执行写命令,Slaves只能执行读命令;那么从服务器执行客户端发送的读命令时,比如GET、LRANGE等等,客户端就可以连接Slaves来执行读请求,从而可以降低Master的读压力
1、配置当前服务称为某Redis服务的Slave
使用格式:
redis-server --slaveof < master-ip> < master-port>
例如: redis-server --port 6388 --slaveof 127.0.0.1 6379
2、将当前服务器状态从Master修改为别的服务器的Slave
使用格式:
SLAVEOF host port
例如:
redis > SLAVEOF 192.168.1.1 6379 #将服务器转换为Slave
redis > SLAVEOF NO ONE #将服务器重新恢复到Master,不会丢弃已经同步数据
3、配置方式:启动时,服务器读取配置文件,并自动成为指定服务器的从服务器
slaveof
slaveof 127.0.0.1 6379
1、将主节点master中的redis文件复制到其它节点
使用格式:
scp -r redis的安装目录(解压的目录) 从节点主机ip(配置了hosts映射可以用主机名): 目录
举例:
scp -r redis node1:`pwd`
#·pwd·表示与master目录路径相同,没有则自动创键
2、在node1从节点中启动从服务器
进入redis的bin目录
cd /usr/local/soft/redis/bin
启动
./redis-server --port 6380 --slaveof master 6379
注意:
已经启动成功之后也可以将主改成从
SLAVEOF master 6379
从改成主 – 数据不会删除
SLAVEOF NO ONE
3.指定redis 密码
临时设置
redis 127.0.0.1:6379> config set requirepass test123
永久设置
vim redis.conf
requirepass 123456
带密码链接redis
redis-cli -a 123456
搭建前提:电脑需要已经安装了VMware或相关的虚拟机搭建的软件,并且搭建好了主从式的linux虚拟机集群。小北搭建了3台linux虚拟机master、node1、node2
在master ,node1 ,node2三个虚拟机中分别创建安装目录
mkdir /usr/local/soft/redis-cluster
复制:
cp -r /usr/local/soft/redis /usr/local/soft/redis-cluster
修改目录名:
mv /usr/local/soft/redis-cluster/redis /usr/local/soft/redis-cluster/7000
删除单机版缓存文件
rm -rf appendonly.aof
rm -rf dump.rdb
daemonize yes #redis后台运行
pidfile /var/run/redis_7000.pid #pidfile文件对应7000
port 7000 #端口7000
cluster-enabled yes #开启集群 把注释#去掉
cluster-config-file nodes.conf #集群的配置 配置文件首次启动自动生成
cluster-node-timeout 5000 #请求超时 设置5秒够了
appendonly yes #aof日志开启 有需要就开启,它会每次写操作都记录一条日志 (全持久化)
cp -r 7000 7001
cp -r 7000 7002
cp -r 7000 7003
cp -r 7000 7004
cp -r 7000 7005
这里只演示了7001的,其他的都是一样的操作步骤
vim 7001/bin/redis.conf
把7000改成对应的端口号
pidfile /var/run/redis_7001.pid
port 7001
scp -r /usr/local/soft/redis-cluster/7002 node1:/usr/local/soft/redis-cluster/
scp -r /usr/local/soft/redis-cluster/7003 node1:/usr/local/soft/redis-cluster/
scp -r /usr/local/soft/redis-cluster/7004 node2:/usr/local/soft/redis-cluster/
scp -r /usr/local/soft/redis-cluster/7005 node2:/usr/local/soft/redis-cluster/
1、在master中执行
cd /usr/local/soft/redis-cluster/7000/bin
./redis-server redis.conf
cd /usr/local/soft/redis-cluster/7001/bin
./redis-server redis.conf
2、在node1中执行
cd /usr/local/soft/redis-cluster/7002/bin
./redis-server redis.conf
cd /usr/local/soft/redis-cluster/7003/bin
./redis-server redis.conf
3、在node2中执行
cd /usr/local/soft/redis-cluster/7004/bin
./redis-server redis.conf
cd /usr/local/soft/redis-cluster/7005/bin
./redis-server redis.conf
安装工具
yum -y install ruby ruby-devel rubygems rpm-build
使用xftp上传redis-3.0.0.gem到目录/usr/local/module(小北用来存放安装包的路径,大家可以自己指定)
redis-3.0.0.geml网盘连接:
链接:https://pan.baidu.com/s/1k47i0RRe3xXOjetK4ABU8w 提取码:vxc6
gem install -l redis-3.0.0.gem
放在/usr/local/bin/ 目录下的命令可以在任何一个位置运行
```powershell
cp /usr/local/soft/redis-3.0.0/src/redis-trib.rb /usr/local/bin/redis-trib
注意: replicas :每一个主节点的备份节点数量
redis-trib create --replicas 1 192.168.47.10:7000 192.168.47.10:7001 192.168.47.20:7002 192.168.47.20:7003 192.168.47.30:7004 192.168.47.30:7005
注意: -p 端口号 -h 节点ip -c 自动重定向
redis-cli -p 7000 -h master -c
查看集群信息
cluster info
查看节点信息
cluster nodes
注意,集群模式不区分读写请求 如果想要在从节点进行查询,那么需要在查询之前执行readonly