首页 > 数据库 >Centos7部署redis三节点哨兵集群,添加布隆过滤器

Centos7部署redis三节点哨兵集群,添加布隆过滤器

时间:2022-10-16 21:26:29浏览次数:42  
标签:... 配置文件 redis 布隆 哨兵 Centos7 过滤器

目录

Centos7部署redis三节点哨兵集群,添加布隆过滤器

一、环境准备

1.1、服务器准备

服务器 IP 身份 哨兵
redis-sentry-0 10.10.101.26 主节点
redis-sentry-1 10.10.101.27 从节点
redis-sentry-2 10.10.101.28 从节点

1.2、依赖安装

1、redis采用编译安装,先安装编译依赖
#安装gcc9
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
yum -y install wget

#切换到gcc9
1、临时切换
scl enable devtoolset-9 bash
2、永久切换
echo source /opt/rh/devtoolset-9/enable >> /etc/profile

#查看当前gcc版本
gcc -v
... ...
gcc version 9.3.1 20200408 (Red Hat 9.3.1-2) (GCC)

二、部署redis

2.1、安装redis

#下载tar包
# 官网下载地址:	http://download.redis.io/releases/
wget https://download.redis.io/releases/redis-5.0.0.tar.gz

#解压
tar xf redis-5.0.0.tar.gz
rm -rf redis-5.0.0.tar.gz
mv redis-5.0.0/* .
rm -rf redis-5.0.0

#编译安装
make && make install

redis 编译安装后,命令文件会自动加入PATH,配置文件就在当前目录下

可以使用 which [命令] 来查看命令文件的位置

2.2、修改配置文件

vim redis.conf

bind 0.0.0.0
daemonize [yes/no]		#yes后台启动		no前台启动
requirepass "12345678"  #redis的密码
logfile "/data/server-logs/redis/redis.log"

2.3、加入systemctl管理

1、redis加入systemctl管理
vim /lib/systemd/system/redis-server.service
[Unit]
Description=redis
After=network.target
[Service]
Type=forking
#相应修改PID路径
PIDFile=/var/run/redis_6379.pid
#相应修改启动文件与配置文件
ExecStart=/usr/local/bin/redis-server /data/server-side/redis/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target

2、哨兵加入systemctl管理
vim /lib/systemd/system/redis-sentinel.service
[Unit]
Description=Redis sentinel Server
After=network.target
[Service]
Type=simple
#相应修改PID路径
PIDFile=/var/run/redis-sentinel.pid
LimitNOFILE=100000
#相应修改启动文件与配置文件
ExecStart=/usr/local/bin/redis-sentinel /data/server-side/redis/sentinel.conf
#相应修改启动文件,注意端口设置,端口是哨兵的端口
ExecStop=/usr/local/bin/redis-cli -p 26379 shutdown
Restart=on-failure
[Install]
WantedBy=multi-user.target

3、重载systemctl配置
systemctl daemon-reload

三、配置主从

3.1、修改配置文件

1、redis主节点配置文件无需修改

2、修改redis从节点配置文件
vim redis.conf
... ...
replicaof <masterip> <masterport>
masterauth <master-password>
... ...

3.2、重启redis

四、配置哨兵

4.1、修改哨兵配置文件

vim sentinel.conf
... ...
#sentinel monitor [服务器名字,可自定义] [监控的主节点服务器ip地址] [监控的主节点服务器的端口] [有几个哨兵认为主服务器不可用时,进行failover操作]
sentinel monitor mymaster 10.10.101.26 6379 2
... ...

4.2、重启哨兵

五、查看主从状态

#进入redis
redis-cli

#验证身份
auth [本文步骤2.2设置的密码]

#查看状态
info replication

六、添加布隆过滤器

6.1、下载布隆过滤器

wget https://github.com/RedisBloom/RedisBloom/archive/refs/tags/v2.2.4.tar.gz

6.2、部署布隆过滤器

1、编译
tar xf redisbloom-2.2.4.tar.gz
cd RedisBloom-2.2.4/
make

2、将编译后的结果放到redis目录下
#不放也行,在哪都行,又不是不能用
mkdir redis/module
mv redisbloom.so redis/module

6.3、为redis安装Bloom Filter模块

1、修改redis配置文件
vim redis.conf
# loadmodule [模块的绝对路径]
loadmodule redis/module/redisbloom.so

6.4、验证布隆过滤器

重启redis,在日志文件中发现
Module 'bf' loaded from /data/server-side/redis/module/redisbloom.so
字段,表示布隆过滤器已加载

标签:...,配置文件,redis,布隆,哨兵,Centos7,过滤器
From: https://www.cnblogs.com/c-moon/p/16797197.html

相关文章

  • Redis数据结构之字符串
    目录Redis数据结构之字符串添加获取修改删除判断一个key是否存在查看过期时间设置过期时间合并set和ex合并set和px判断一个key是否存在,存在则忽略,不存在则创建合并set和nx......
  • Redis数据结构之列表
    目录Redis数据结构之列表查看命令帮助创建列表从左边插入元素从右边插入数据若list存在,则从左边依次追加元素,不存在则忽略若list存在,则从右边依次追加元素,不存在则忽略从li......
  • Redis数据结构之哈希
    目录Redis数据结构之哈希写入获取数据修改数据删除数据删除所有数据查看key中指定的field是否存在若value中没有相应的field,则创建获取多个值获取所有的key和value获取所......
  • Redis数据类型之无序集合
    目录Redis数据类型之无序集合查看命令帮助增加数据查看数据删除数据移动数据返回集合中成员的个数随机返回指定个数的数据判断对象是否存在于集合中随机返回并删除一个成员......
  • spark通过pipline方式批量插入redis集群方式
    spark通过pipline方式批量插入redis集群网上资料比较少,但是有一大堆都是单机的方式,spring倒是也有写入redis集群的实现代码,以下整理了spark通过pipline批量写入的方式,速度......
  • 17.Redis之分布式锁
    参考1:https://www.cnblogs.com/wangyingshuo/p/14510524.html参考2: https://blog.csdn.net/Me_xuan/article/details/124418176参考3:https://blog.csdn.net/a745233700......
  • 18.Redis常见的面试题
    参考1:https://lebron.blog.csdn.net/article/details/121456167参考2:https://lebron.blog.csdn.net/article/details/120817994......
  • redis的发布订阅模式
    redis的发布订阅模式redis发布订阅(pub/sub)是一种消息通信模式,消息的发布者不会将消息发送给特定的订阅者,而是通过消息通道(频道)广播出去,让订阅该消息主题(频道)的订阅......
  • Redis 实现分布式锁
    Redis实现分布式锁JVM层面的加锁(synchronized,ReentraLock) 单机版的锁分布式微服务架构中,为了避免各个微服务之间发生冲突和数据故障从而引入一种锁--分布式锁......
  • 布隆过滤器是否好用,得看哈希函数写成啥样
    作者:小傅哥沉淀、分享、成长,让自己和他人都能有所收获!......