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采用编译安装,先安装编译依赖 |
| |
| yum -y install centos-release-scl |
| yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils |
| yum -y install wget |
| |
| |
| 1、临时切换 |
| scl enable devtoolset-9 bash |
| 2、永久切换 |
| echo source /opt/rh/devtoolset-9/enable >> /etc/profile |
| |
| |
| gcc -v |
| ... ... |
| gcc version 9.3.1 20200408 (Red Hat 9.3.1-2) (GCC) |
二、部署redis
2.1、安装redis
| |
| |
| 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] |
| requirepass "12345678" |
| 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 |
| |
| 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 |
| |
| 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 mymaster 10.10.101.26 6379 2 |
| ... ... |
4.2、重启哨兵
五、查看主从状态
| |
| 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 redis/module/redisbloom.so |
6.4、验证布隆过滤器
| 重启redis,在日志文件中发现 |
| Module 'bf' loaded from /data/server-side/redis/module/redisbloom.so |
| 字段,表示布隆过滤器已加载 |
本文作者:大胡萝卜没有须
本文链接:https://www.cnblogs.com/c-moon/p/16797197.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步