Redis(二主二从)搭建(配置安装)

在这里插入图片描述
一、什么是Redis?

Redis(全称:Remote Dictionary Server 远程字典服务)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

redis是一个key-value存储系统。redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。存盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。

二、centos7配置Redis(二主二从)

配置环境:
两台虚拟机,必须连同一个网,同一个网段,同一个端口
1.关闭防火墙和沙盒
systemctl stop firewalld
setenforce 0

2.在两台虚拟机上面,下载配置redis
cd /usr/local/src
wget http://download.redis.io/releases/redis-3.2.4.tar.gz

3.tar -zxvf redis-3.2.4.tar.gz
cd redis-3.2.4.tar.gz
然后进入redis-3.2.4目录中,编译安装:
make && make install

4.主机配置Redis文件
vim redis.conf
bind + 主机IP
port 6379
daemonize no # 这个为后台运行程序 改成yes
logfile # 前面加注释 给注释掉
slave-priority 25 #优先级设为设为25
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.配置主机(2)(从机3)
bind + 第二台主机IP
port 6379
daemonize no # 这个为后台运行程序 改成yes
logfile # 前面加注释 给注释掉
slave-priority 25 #设为25(优先级)
slaveof 192.168.124.48 6379(主机1IP加端口)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

从机配置Redis文件
vim redis.conf
bind 192.168.124.47 (本机IP)
protected-mode yes
port 6379 (端口)
daemonize no
slave-priority 100 (设置优先级,数字小的优先)
logfile # 前面加注释 给注释掉
slaveof 192.168.124.48 6379 (主机1IP加端口)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置主机2哨兵文件:
port 26379 (默认端口为26379)
daemonize no
sentinel monitor mymaster 192.168.124.48 6379 2 (“2”代表如果有两个哨兵认为这台机器是主机的时候,这台机器就是主机)
在这里插入图片描述
在这里插入图片描述

配置从机哨兵:
vim sentinel.conf
daemonize yes
port 26379 (默认端口为26379)
slaveof 192.168.124.48 6379 2 (“2”代表如果有两个哨兵认为这台机器是主机的时候,这台机器就是主机)
protected-mode no

在这里插入图片描述
在这里插入图片描述

启动Redis和哨兵:(一台主机和两台从机启动哨兵,两台主机和两台从机启动redis)

redis-server /usr/local/src/redis-3.2.4/redis.conf
redis-sentinel /usr/local/src/redis-3.2.4/sentinel.conf

查看是否启动成功:
ps aux | grep redis
在这里插入图片描述

实现两主两从
1.主从连接成功
redis-cli -h 192.168.124.48(主机1)
redis-cli -h 192.168.124.104
redis-cli -h 192.168.124.65
redis-clii -h 192.168.124.47

info replication
主机显示自己角色为master
连接成功的从机有3个。
在这里插入图片描述
从机显示自己角色为slave
在这里插入图片描述

如果主机down掉之后,哨兵会按优先值来推荐其他从机为主。
实现数据同步:
redis-cli -h 192.168.124.48(主机1)
redis-cli -h 192.168.124.104
redis-cli -h 192.168.124.65
redis-cli -h 192.168.124.47
进入redis交互式环境
set ‘qqq’ ‘zzz’
当前状态谁是主机,谁就有写的权限
在这里插入图片描述
其余三台从机,只有读的权限,没有写的权限
在这里插入图片描述
key *
(在从机上应该都会显示主机刚刚创建的键值对 [qqq:zzz])
主机上已经创建了qqq这个键
在这里插入图片描述
判断是否为二主
宕掉主机 (kill掉主机进程)
哨兵会根据算法推选主机2 为主
redis-cli -h 192.168.124.104
在这里插入图片描述
redis-cli -h 192.168.124.65
info replication
在这里插入图片描述
将主机1启动
在这里插入图片描述
此时 主机1为从 它的主为主机2
在这里插入图片描述
主机2宕机
在这里插入图片描述
哨兵会推选主机1为主
在这里插入图片描述
在这里插入图片描述
实现高可用
只要192.168.124.48和192.168.124.104任意一台启动着,两个从机就永远不可能成为主机,只有当两台主机全都宕机,才会在两台从机中任意选举一个作为主机
两台主机全部宕机
哨兵会通过算法随机推选两个从机任意一个为主
从机2成为主
在这里插入图片描述
从机1为从 显示它的主为从机1
在这里插入图片描述
即使两台主机全部宕掉,业务也不会中断,哨兵会随机推选一个从作为主

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
搭建 Redis 集群,你可以按照以下步骤进行: 1. 下载和安装 Redis:你可以从 Redis 官方网站下载并安装 Redis。确保在每个节点上都正确安装Redis。 2. 配置主节点:找到你想要作为主节点的 Redis 实例的配置文件(redis.conf),打开该文件并进行如下配置: - 设置 `port` 参数为主节点的端口号,默认为 6379。 - 设置 `bind` 参数为主节点的 IP 地址,如果希望所有 IP 地址都可以访问,可以设置为 `0.0.0.0`。 - 设置 `cluster-enabled` 参数为 `yes`,启用集群模式。 - 设置 `cluster-config-file` 参数为一个文件路径,用于保存集群的配置信息。 - 设置 `cluster-node-timeout` 参数为一个适当的数值,表示节点之间通信超时时间。 3. 启动主节点:在主节点上启动 Redis 服务,使用以下命令: ``` redis-server /path/to/redis.conf ``` 4. 配置从节点:对于每个从节点,复制主节点的配置文件(redis.conf)为一个新的文件,并进行如下配置: - 设置 `port` 参数为从节点的端口号,默认为 6379。 - 设置 `bind` 参数为从节点的 IP 地址。 - 设置 `cluster-enabled` 参数为 `yes`,启用集群模式。 - 设置 `cluster-config-file` 参数为一个文件路径,用于保存集群的配置信息。 - 设置 `cluster-node-timeout` 参数为一个适当的数值,表示节点之间通信超时时间。 - 设置 `slaveof` 参数为主节点的 IP 地址和端口号,指示从节点复制主节点。 5. 启动从节点:在每个从节点上启动 Redis 服务,使用以下命令: ``` redis-server /path/to/redis.conf ``` 6. 创建 Redis 集群:使用 Redis 提供的 `redis-cli` 命令行工具创建 Redis 集群。在任意一个节点上执行以下命令: ``` redis-cli --cluster create <node1>:<port1> <node2>:<port2> ... <nodeN>:<portN> --cluster-replicas 1 ``` 这里 `<node1>`、`<port1>` 是主节点的 IP 地址和端口号,`<node2>`、`<port2>` 等是从节点的 IP 地址和端口号。`--cluster-replicas 1` 表示为每个主节点创建一个从节点。 7. 验证集群状态:使用 `redis-cli` 连接到任意一个节点,并执行以下命令验证集群状态: ``` redis-cli -c cluster nodes ``` 以上步骤完成后,你就成功搭建了一个 Redis 集群,其中包含一个主节点和个从节点。你可以根据需要添加更多的从节点来扩展集群。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值