redis集群部署

因为Redis是c开发的,因此安装redis需要c语言的编译环境,即先需要安装gcc.

1.解压包

bash 复制代码
[root@redis01 Redis]# tar -zvxf redis-3.2.9.tar.gz

查看是否存在Makefile文件,存在则直接make编译redis源码

2.编译文件

bash 复制代码
[root@redis01 redis-3.2.9]# make

安装编译好的文件

bash 复制代码
[root@redis01 redis-3.2.9]# make install PREFIX=/usr/local/redis

3.查看redis是否安装成功

bash 复制代码
[root@redis01 redis-3.2.9]# cd /usr/local/redis/

[root@redis01 redis]# cd bin/

[root@redis01 bin]# ls

redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server [root@redis01 bin]# ./redis-server 

4.将前端redis启动改成后台启动

修改redis.conf文件,将daemonize no -> daemonize yes,这样便将启动方式修改为后台启动.

5.配置节点,启动节点服务

在usr/local目录下新建redis-cluster目录,用于存放集群节点

bash 复制代码
[root@redis01 local]# mkdir  redis-cluster
cp -r若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
[root@redis01 local]# cp -r redis/bin/ redis-cluster/7001
[root@redis01 local]# cp -r redis/bin/ redis-cluster/7002
[root@redis01 local]# cp -r redis/bin/ redis-cluster/7003
  • 修改绑定的IP,本服务器的IP地址
  • 修改端口 7001-7003
  • cluster-enabled yes //开启集群 把注释#去掉

6.搭建集群

要搭建集群的话,需要使用一个工具(ruby脚本文件),他的运行就需要ruby的运行环境

yum install ruby

ruby包安装,

复制ruby脚本搭建集群

bash 复制代码
[root@redis01 Redis]# cd redis-3.2.9/src
[root@redis01 src]# cp redis-trib.rb  /usr/local/redis-cluster/

另外的redis 02和redis 03不需要去创建集群了

bash 复制代码
[root@redis01 redis-cluster]# ./redis-trib.rb create --replicas 2 192.168.0.223:7001 192.168.0.223:7002 192.168.0.223:7003 192.168.0.225:7004 192.168.0.225:7005 192.168.0.225:7006 192.168.0.228:7007 192.168.0.228:7008 192.168.0.228:7009

7.连不上哪个节点

如果连不上哪个节点,可以查看那个节点是否启动,如果也启动了,也连不上,防火墙没关或者端口没做映射开通

查看redis启动是否正常

bash 复制代码
[root@redis01 redis-cluster]# ./redis-trib.rb check 192.168.0.223:7001
相关推荐
云空1 小时前
《Qt Creator 4.11.1 教程》
数据库·qt
shine_du1 小时前
架构师之路--达梦数据库学习计划
数据库·达梦数据库·dameng
潇潇和多客开源1 小时前
数据库的数据被清除了,该如何恢复?
数据库·oracle
胖头鱼的鱼缸(尹海文)1 小时前
数据库管理-第274期 Oracle Enterprise Manager 24ai新特性一览(20241223)
数据库·oracle
搬码后生仔2 小时前
SQLite 是一个轻量级的嵌入式数据库,不需要安装服务器,直接使用文件即可。
数据库·sqlite
码农君莫笑2 小时前
Blazor项目中使用EF读写 SQLite 数据库
linux·数据库·sqlite·c#·.netcore·人机交互·visual studio
江上挽风&sty2 小时前
【Django篇】--动手实践Django基础知识
数据库·django·sqlite
向阳12182 小时前
mybatis 动态 SQL
数据库·sql·mybatis
胡图蛋.2 小时前
什么是事务
数据库
小黄人软件2 小时前
20241220流水的日报 mysql的between可以用于字符串 sql 所有老日期的,保留最新日期
数据库·sql·mysql