redis集群搭建

哨兵模式

以前使用的主从模式

在这里插入图片描述

一旦主节点挂了,那么就需要手动切换到从节点,这个过程需要人为的监控

redis3.0之前使用了哨兵模式

而哨兵默认则使用机器代替了人工

在这里插入图片描述

在连接的时候连接的哨兵节点,哨兵会帮我们去连接redis,哨兵还有选举主节点,主从复制等功能

具体参考http://www.redis.cn/topics/sentinel.html

这种模式的缺陷

  • 读写都只针对master节点,并发不高
  • 数据量特别大的时候,占用成倍的空间

集群模式

redis3.0后使用的模式

具体参考http://www.redis.cn/topics/cluster-tutorial.html

在这里插入图片描述

redis单机模式安装

服务器环境: Centos8

# 安装gcc
yum install gcc

# 创建一个文件夹,下载redis 版本自己改
wget https://download.redis.io/releases/redis-6.2.6.tar.gz
tar zxvf redis-6.2.6.tar.gz

# 加入到解压目录编译与安装
cd redis-6.2.6
make & make install

# 启动并指定配置文件 如果需要后台启动,修改配置文件中的daemonize该为yes
src/redis-server redis.conf

# 设置密码 修改配置 不设置密码会连接不了
requirepass 111111 # 设置reids访问密码

# 如果要在外网访问到 注释掉下面这段 线上可以再打开
bind 127.0.0.1 

# 验证是否启动成功
ps -ef | grep redis

# 进入redis客户端
/usr/local/redis/bin/redis-cli

# 退出客户端
quit

# 退出redis服务
1. pkill redis-server
2. kill 进程号
3. src/redis-cli shutdown

redis集群模式安装步骤

服务器环境: Centos8

redis集群需要至少要三个master节点,我们这里搭建三个master节点,并且给每个master再搭建一个slave节点,总共6个redis节点,这里用一台机器部署6个redis实例,一共三组一主一从集群

# 安装gcc
yum install gcc

# 创建一个cluster文件夹,再在其下创建8001文件夹
mkdir -p cluster/8001

# 下载redis到cluster文件夹 版本自己改
wget https://download.redis.io/releases/redis-6.2.6.tar.gz
tar zxvf redis-6.2.6.tar.gz

# 加入到解压目录编译与安装
cd redis-6.2.6
make & make install

# 将解压后目录里的redis.conf复制到8001文件夹中,修改以下内容 (搜索命令 /搜索的内容)
1. daemonize yes
2. port 8001 # 分别对每个机器的端口进行设置
3. dir /root/redis/cluster/8001/ # 指定数据文件存放的位置,必须指定不同的目录位置,不然会丢失数据
4. cluster-enabled yes # 启动集群模式
5. cluster-config-file nodes-8001.conf # 集群节点信息文件,这里的800x最好与port对应上,注意这里不是用户可编辑文件,而是redis集群节点每次发生更改时自动保留集群配置
5. cluster-node-timeout 5000 # 超时时间
7. # bind 127.0.0.1 # 注释掉bind绑定访问ip信息
8. protected-mode no # 关闭保护模式
9. appendonly yes # 开启数据同步
设置密码
10. requirepass 111111 # 设置reids访问密码
11. masterauth  111111 # 设置集群节点间访问密码,跟上面一致


# 将配置好的文件夹8001复制五份8002-8006
略

# 修改复制后每个配置文件的redis.conf的2,3,5项,可以使用批量替换命令 :%s/源字符串/目标字符串/g
略(:%s/8001/8002/g)

# 分别将六个redis启动,然后检查是否启动成功
/root/redis/cluster/src/redis-server /root/redis/cluster/800*/redis.conf

# 查看是否启动成功
ps -ef | grep redis

# 用redis-cli创建整个redis集群 redis5以前的版本时依靠ruby脚本redis-trib.rb实现
/root/redis/cluster/src/redis-cli -a 111111 --cluster create --cluster-replicas 1
127.0.0.1:8001 127.0.0.1:8002 127.0.0.1:8003 127.0.0.1:8004 127.0.0.1:8005 127.0.0.1:8006

代表为每个创建的主服务器节点创建一个从服务节点(-- replicas 1 1代表的时副本的个数)


# 验证集群
1.任意连接一个客户端即可
./redis-cli -a -c -h -p (-a 访问服务端密码 -c表示集群模式 -h -p 指定IP地址和端口号)
如 /root/redis/cluster/src/redis-cli -a 111111 -c -h 192.168.6.154 -p 8001
2. 进行验证
cluster info # 查看集群信息
cluster nodes # 查看节点列表
3. 进行数据操作验证
4. 关闭集群则需要逐个关闭 使用命令
/root/redis/cluster/src/redis-cli -a 111111 -c -h 192.168.6.154 -p 800* shutdown

忘记了命令可以用redis-cli --cluster help 查看

. 关闭集群则需要逐个关闭 使用命令
/root/redis/cluster/src/redis-cli -a 111111 -c -h 192.168.6.154 -p 800* shutdown

忘记了命令可以用redis-cli --cluster help 查看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值