安装redis集群
redis安装
上传安装包,安装
tar -zxvf redis-5.0.5.tar.gz ##解压
yum install -y gcc 安装依赖包
编译安装
cd redis-5.0.5 ##进入到redis下
Make #编译
cd src/
make install PREFIX=/usr/local/redis
移动配置文件
cd .. ##回到上一个目录下
[root@1 redis-5.0.5]# mkdir /usr/local/redis/etc
[root@1 redis-5.0.5]# cp redis.conf /usr/local/redis/etc/
启动redis服务
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
Redis不是在后台运行,我们需要把redis放在后台运行
vim /usr/local/redis/etc/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf ##重启一下
**
客户端连接redis
**
/usr/local/redis/bin/redis-cli -h 192.168.100.10
停止redis
/usr/local/redis/bin/redis-cli shutdown
或者
pkill reids-server
ln -s /usr/local/redis/bin/* /usr/local/bin/ ##添加软链接
添加开机自启
chmod +x /etc/rc.d/rc.local
echo " /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf" >> /etc/rc.d/rc.local
修改redis配置文件
vim /usr/local/redis/etc/redis.conf
重启redis
Pkill redis-server
redis-server /usr/local/redis/etc/redis.conf
测试
登录时候用密码
Redis-cli -a 123456
redis常规命令
帮助命令
创建一个表,在列表的左侧加入一个值
在右侧加入值
等。。。。。。
Redis持久化
配置文件中与RDB相关的参数
mkdir -p /redis/data
vim /usr/local/redis/etc/redis.conf
Redis主从架构
配置slave1,
安装redis,配置如上
配置slave1上的主
vim /usr/local/redis/etc/redis.conf
replicaof 192.168.1.11 6379 #指定master IP,端口
masterauth 123456 #指定redis密码
重启redis服务
Pkill redis-server
redis-server /usr/local/redis/etc/redis.conf
Redis-cli -h 192.168.100.20 -a 123456
Info replication
测试
同步成功了
使用sentinel 实现主从架构高可用
cd /usr/local/redis/etc/
mkdir /var/log/redis
mkdir -p /redis/data
Vim redis.conf
配置第二个redis
cp redis.conf redis2.conf #生成第2台redis服务器配置文件
vim redis2.conf
把6379端口替换成6380
修改RDB目录
指定master的ip和端口
mkdir /redis/data2 #创建第2台数据保存目录
mkdir /var/log/redis #创建日志目录
在配置第三个redis
cp redis2.conf redis3.conf #生成第3台redis服务器配置文件
vim redis3.conf
替换端口
修改RDB目录
mkdir /redis/data3 #创建第3台数据保存目录
启动3个redis服务器
redis-server /usr/local/redis/etc/redis.conf
redis-server /usr/local/redis/etc/redis2.conf
redis-server /usr/local/redis/etc/redis3.conf
添加开机自启
echo "redis-server /usr/local/redis/etc/redis2.conf" >> /etc/rc.local
echo "redis-server /usr/local/redis/etc/redis3.conf" >> /etc/rc.local
测试
redis-cli -h 192.168.100.10 -p 6379 -a 123456
生成sentinel配置文件
cd redis-5.0.5
cp sentinel.conf /usr/local/redis/etc/
vim /usr/local/redis/etc/sentinel.conf
修改以下
监控ip必须是0.0.0.0
修改master的ip
在最后添加这一行
启动
cd /usr/local/redis/etc/
redis-sentinel /usr/local/redis/etc/sentinel.conf
echo "redis-sentinel /usr/local/redis/etc/sentinel.conf" >> /etc/rc.local #添加开机启动
登录redis-sentinel
redis-cli -h 192.168.100.10 -p 26379 -a 123456
测试关闭master
ps -ef | grep redis
Kill -9 进程号
查看主从状态
启动主服务器
redis-server /usr/local/redis/etc/redis.conf
查看主从状态
Redis-cluster集群
(这里我是恢复虚拟机快照做的,在实际当中是六台虚拟机的,因为虚拟机不够,就用三台了,请谅解)
安装redis 配置如上
在第一台主机上配置
修改hosts文件
Vim /etc/hosts
创建cluster工作目录
创建数据存储目录
生成配置文件
cp /root/redis-5.0.5/redis.conf /etc/redis/cluster/6379/
cp /root/redis-5.0.5/redis.conf /etc/redis/cluster/6380/
修改配置文件
vim /etc/redis/cluster/6379/redis.conf ##去掉注释,添加路径,修改
daemonize yes //redis后台运行
bind 192.168.1.11 //监听地址
pidfile /var/run/redis_6379.pid //pidfile文件对应端口
port 6379 //端口
dir "/data/redis/data/6379" //配置redis rdb数据保存位置
logfile "/var/log/redis/redis_6379.log" //修改log日志路径
cluster-enabled yes //开启集群 把注释#去掉
cluster-config-file nodes_6379.conf //集群的配置,配置文件首次启动自动生成
cluster-node-timeout 15000 //请求超时15s
appendonly yes //aof日志开启,有需要就开启,它会每次写操作都记录一条日志
vim /etc/redis/cluster/6380/redis.conf
daemonize yes //redis后台运行
bind 192.168.1.11
pidfile "/var/run/redis_6380.pid"
port 6380
dir "/data/redis/data/6380"
logfile "/var/log/redis/redis_6380.log" //修改log日志路径
cluster-enabled yes //开启集群 把注释#去掉
cluster-config-file nodes_6380.conf //集群的配置,配置文件首次启动自动生成
cluster-node-timeout 15000 //请求超时15s
appendonly yes //aof日志开启,有需要就开启,它会每次写操作都记录一条日志
关闭之前的redis
Ps -ef | grep redis
删除之前设置的redis自启 ##删除以下
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
启动redis服务
mkdir /var/log/redis ##创建日志目录
redis-server /etc/redis/cluster/6379/redis.conf
redis-server /etc/redis/cluster/6380/redis.conf
查看端口 添加开机自启
复制软件和配置文件到另外两个服务器
scp -r /etc/redis/ 192.168.100.20:/etc
scp -r /etc/redis/ 192.168.100.30:/etc
scp -r /usr/local/redis/ 192.168.100.20:/usr/local/
scp -r /usr/local/redis/ 192.168.100.30:/usr/local/
在配置第二台主机
修改hosts
vim /etc/hosts
添加path环境变量
find /usr/local/bin/ -name "redis*" -exec rm -rf { } \; ##把前面是redis的文件删除
ln -s /usr/local/redis/bin/* /usr/local/bin/ ##添加软链接
创建工作目录
mkdir -p /data/redis/data/{ 6381,6382}
mkdir /var/log/redis
修改配置文件
mv /etc/redis/cluster/6379 /etc/redis/cluster/6381
mv /etc/redis/cluster/6380 /etc/redis/cluster/6382
vim /etc/redis/cluster/6381/redis.conf `因为是从第一台主机上复制过来的,所以就只修改端口和ip`
daemonize yes //redis后台运行
bind 192.168.1.12 //监听地址
pidfile /var/run/redis_6381.pid //pidfile文件对应端口
port 6381 //端口
dir "/data/redis/data/6381" //配置redis rdb数据保存位置
logfile "/var/log/redis/redis_6381.log" //修改log日志路径
cluster-enabled yes //开启集群 把注释#去掉
cluster-config-file nodes_6381.conf //集群的配置,配置文件首次启动自动生成
cluster-node-timeout 15000 //请求超时15s
appendonly yes //aof日志开启,有需要就开启,它会每次写操作都记录一条日志
替换端口
修改成自己本机的监听地址
vim /etc/redis/cluster/6382/redis.conf ##修改端口和ip
daemonize yes //redis后台运行
bind 192.168.1.12 //监听地址
pidfile /var/run/redis_6382.pid //pidfile文件对应端口
port 6382 //端口
dir "/data/redis/data/6382" //配置redis rdb数据保存位置
logfile "/var/log/redis/redis_6382.log" //修改log日志路径
cluster-enabled yes //开启集群 把注释#去掉
cluster-config-file nodes_6382.conf //集群的配置,配置文件首次启动自动生成
cluster-node-timeout 15000 //请求超时15s
appendonly yes //aof日志开启,有需要就开启,它会每次写操作都记录一条日志
重启redis服务,查看端口
redis-server /etc/redis/cluster/6381/redis.conf
redis-server /etc/redis/cluster/6382/redis.conf
netstat -antup | grep 63
添加开机自启
echo "redis-server /etc/redis/cluster/6381/redis.conf" >> /etc/rc.local
echo "redis-server /etc/redis/cluster/6382/redis.conf" >> /etc/rc.local
在第三台主机上配置
修改hosts
vim /etc/hosts
添加环境变量
ln -s /usr/local/redis/bin/* /usr/local/bin/
创建工作目录
mkdir -p /data/redis/data/{ 6383,6384}
mkdir /var/log/redis ##创建日志目录
修改配置文件
mv /etc/redis/cluster/6379 /etc/redis/cluster/6383
mv /etc/redis/cluster/6380 /etc/redis/cluster/6384
vim /etc/redis/cluster/6383/redis.conf ##也是只修改ip和端口
daemonize yes //redis后台运行
bind 192.168.1.13 //监听地址
pidfile /var/run/redis_6383.pid //pidfile文件对应端口
port 6383 //端口
dir "/data/redis/data/6383" //配置redis rdb数据保存位置
logfile "/var/log/redis/redis_6383.log" //修改log日志路径
cluster-enabled yes //开启集群 把注释#去掉
cluster-config-file nodes_6383.conf //集群的配置,配置文件首次启动自动生成
cluster-node-timeout 15000 //请求超时15s
appendonly yes //aof日志开启,有需要就开启,它会每次写操作都记录一条日志
vim /etc/redis/cluster/6384/redis.conf
daemonize yes //redis后台运行
bind 192.168.1.13 //监听地址
pidfile /var/run/redis_6384.pid //pidfile文件对应端口
port 6384 //端口
dir "/data/redis/data/6384" //配置redis rdb数据保存位置
logfile "/var/log/redis/redis_6384.log" //修改log日志路径
cluster-enabled yes //开启集群 把注释#去掉
cluster-config-file nodes_6384.conf //集群的配置,配置文件首次启动自动生成
cluster-node-timeout 15000 //请求超时15s
appendonly yes //aof日志开启,有需要就开启,它会每次写操作都记录一条日志
启动redis服务,查看端口
redis-server /etc/redis/cluster/6383/redis.conf
redis-server /etc/redis/cluster/6384/redis.conf
netstat -antup | grep 63
添加开机自启
echo "redis-server /etc/redis/cluster/6383/redis.conf" >> /etc/rc.local
echo "redis-server /etc/redis/cluster/6384/redis.conf" >> /etc/rc.local
查看进程
ps -ef | grep redis
创建cluster集群
创建集群
redis-cli --cluster create 192.168.100.10:6379 192.168.100.10:6380 192.168.100.20:6381 192.168.100.20:6382 192.168.100.30:6383 192.168.100.30:6384
关闭集群
vim /root/redis-5.0.5/utils/create-cluster/create-cluster
PORT=6379 #修改端口为6379
NODES=6 #修改node节点为6,工具会自动累加节点6379-6384节点操作
/root/redis-5.0.5/utils/create-cluster/create-cluster stop ##关闭
启动集群
/root/redis-5.0.5/utils/create-cluster/create-cluster start ##启动
到这里就结束了,做的不好请谅解,如果有错的地方请小伙伴们留言
还没有评论,来说两句吧...