十三、Linux(CentOS7) Redis集群模式和哨兵模式配置

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: 一、Redis集群配置创建集群目录mkdir -p /usr/local/redis-clustercd /usr/local/redis-clustermkdir 6379 6378修改配置文件vi redis.conf

一、Redis集群配置


创建集群目录


mkdir -p /usr/local/redis-cluster
cd /usr/local/redis-cluster
mkdir 6379 6378


修改配置文件


vi redis.conf


daemonize yes
port 6379
dir /usr/local/redis-cluster/6379/
cluster-enabled yes #启动集群模式
cluster-config-file nodes-6379.conf
cluster-node-timeout 5000
bind 0.0.0.0
protected-mode no
appendonly yes
#如果要设置密码需要增加如下配置:
 #(设置redis访问密码)
requirepass 123456
 #(设置集群节点间访问密码,跟上面一致)
masterauth 123456


把修改后的配置文件,copy到6379、6378,修改第2、3、5项里的端口号,可以用批量

%s/源字符串/目的字符串/g


启动redis:


./redis-server  /usr/local/redis-cluster/6379/redis.conf
./redis-server  /usr/local/redis-cluster/6378/redis.conf


查看是否启动成功


ps -ef | grep redis


用redis-cli创建整个redis集群:


测试环境:


./redis-cli --cluster create 192.168.10.195:6379 192.168.10.195:6378 192.168.10.124:6379 192.168.10.124:6378 192.168.10.100:6379 192.168.10.100:6378 --cluster-replicas 1 -a sbjcptTest


生产环境:


./redis-cli --cluster create 10.1.8.111:6301 10.1.8.111:6302 10.1.8.112:6303 10.1.8.112:6304 10.1.8.113:6305 10.1.8.113:6306 --cluster-replicas 1 -a sbjcptTest


验证集群:


./redis-cli -c -a sbjcptTest -h 192.168.10.195 -p 6379
./redis-cli -c -a xxx -h 10.1.8.111 -p 6301
./redis-cli -c -a sbjcptTest -h 10.1.8.112 -p 6301


常用命令:


# 查看集群信息
cluster info
# 查看节点列表
cluster nodes


二、Redis哨兵模式配置(主备):


创建数据存放目录


mkdir /data
mkdir /data/redis
mkdir /data/redis/redis-log
mkdir /data/redis/data


首先配置Redis的主服务器,修改redis.conf文件如下


# 使得Redis服务器可以跨网络访问
bind 0.0.0.0
dir "/data/redis/data"
daemonize yes
logfile "/data/redis/redis-log/redis.log"


# 设置密码
requirepass "123456"


# 主服务器密码,注意:有关slaveof的配置只是配置从服务器,主服务器不需要配置
masterauth 123456


配置Redis的从服务器,修改配置文件redis.conf


# 使得Redis服务器可以跨网络访问
bind 0.0.0.0
dir "/data/redis/data"
daemonize yes
logfile "/data/redis/redis-log/redis.log"
# 设置密码
requirepass "123456"
# 主服务器密码,,这个都要配置,不然主从无法用
masterauth 123456
# 注意:有关slaveof的配置只是配置从服务器,主服务器不需要配置
slaveof 192.168.10.195 6379
# 关闭防火墙:
systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl status firewalld.service
# 启动:./redis-server ../redis.conf
# 查看集群是否正常:
redis-cli  -h 192.168.10.195 -p 6379 -a 123456 info Replication
[root@localhost src]# redis-cli  -h 192.168.10.195 -p 6379 -a 123456 info Replication
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.


# Replication
role:master
connected_slaves:2
slave0:ip=192.168.10.100,port=6379,state=online,offset=70,lag=0
slave1:ip=192.168.10.124,port=6379,state=online,offset=70,lag=0
master_replid:808f22bacf3af9192301aba5c63afff7d60f3b41
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:70
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:70
# 测试
redis-cli  -h 192.168.10.195 -p 6379 -a 123456
AUTH 123456
set k1 v1
exit
# 测试
redis-cli  -h 192.168.10.124 -p 6379 -a 123456
AUTH 123456
get k1


安装哨兵


# 3台Redis服务器都需执行
vi   sentinel.conf


mkdir /data/redis/sentinel-log
dataport 26379
protected-mode no
daemonize yes
pidfile /var/run/redis-sentinel.pid
logfile "/data/redis/sentinel-log/sentinel.log"
dir /tmp
sentinel monitor mymaster 192.168.10.195 6379 2
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
sentinel deny-scripts-reconfig yes
sentinel auth-pass mymaster 123456


启动哨兵:


./redis-sentinel  ../sentinel.conf


测试查看哨兵:


./redis-cli -h 192.168.10.195 -p 26379 INFO Sentinel
./redis-cli  -h 192.168.10.195 -p 6379 -a 123456 info Replication
./redis-cli -h 10.1.8.112 -p 26379 INFO Sentinel
./redis-cli  -h 10.1.8.112 -p 6379 -a 123456 info Replication


关闭命令:


pkill redis-sentinel
pkill redis-server


相关文章
|
6月前
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
720 87
|
7月前
|
存储 NoSQL 数据库
Redis 逻辑数据库与集群模式详解
Redis 是高性能内存键值数据库,广泛用于缓存与实时数据处理。本文深入解析 Redis 逻辑数据库与集群模式:逻辑数据库提供16个独立存储空间,适合小规模隔离;集群模式通过分布式架构支持高并发和大数据量,但仅支持 database 0。文章对比两者特性,讲解配置与实践注意事项,并探讨持久化及性能优化策略,助你根据需求选择最佳方案。
277 5
|
2月前
|
存储 运维 NoSQL
Redis集群模式
Redis集群是一种分布式存储方案,旨在解决数据存储容量不足的问题。它通过将数据分片存储在多个节点上,实现数据的横向扩展。常见的分片算法包括哈希求余、一致性哈希和哈希槽分区。其中,Redis采用哈希槽分区算法,将数据均匀分配到16384个槽位中,每个分片负责一部分槽位。当节点故障时,集群通过故障检测和主从切换机制,确保服务的高可用性。集群还支持自动的数据迁移和负载均衡,保障系统稳定运行。
|
4月前
|
存储 Linux Apache
在CentOS上配置SVN至Web目录的自动同步
通过上述配置,每次当SVN仓库中提交新的更改时,`post-commit`钩子将被触发,SVN仓库的内容会自动同步到指定的Web目录,从而实现代码的连续部署。
185 16
|
4月前
|
NoSQL 安全 Linux
设置Redis在CentOS7上的自启动配置
这些步骤总结了在CentOS 7系统上设置Redis服务自启动的过程。这些命令提供了一个直接且明了的方式,确保Redis作为关键组件在系统启动时能自动运行,保障了依赖于Redis服务的应用的稳定性和可用性。
467 9
|
6月前
|
Linux
Centos6配置阿里云yum源报错
在CentOS 6配置阿里云Yum源时,可能出现EPEL仓库访问报错(404 Not Found)。解决方法:编辑`/etc/yum.repos.d/epel.repo`文件,将`enabled`和`gpgcheck`参数设为0 ``` 此设置可解决仓库无法访问的问题。
1605 29
|
6月前
|
Ubuntu 安全 Linux
CentOS与Ubuntu中防火墙配置命令集汇
有了这些,你就能遨游在 CentOS 和 Ubuntu 的海洋中,频繁地改变你的防火墙设置,快速地应对各种安全威胁,同时也能保证你的系统可以正常工作。出发吧,勇敢的编程者,随着这些命令集的涌动,扬帆起航,走向安全的网络世界!
215 5
|
7月前
|
Linux Shell
在Linux、CentOS7中设置shell脚本开机自启动服务
以上就是在CentOS 7中设置shell脚本开机自启动服务的全部步骤。希望这个指南能帮助你更好地管理你的Linux系统。
618 25
|
7月前
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
1793 26
下一篇
oss云网关配置