centos7搭建redis集群

在CentOS7上搭建Redis主从复制环境,主要涉及到以下几个步骤:安装Redis、配置Redis主节点、配置Redis从节点、测试主从复制。

1、安装Redis

centos7搭建redis集群

我们需要在CentOS7上安装Redis,可以通过以下命令安装:

sudo yum install epel-release -y
sudo yum install redis -y

2、配置Redis主节点

在主节点上,我们需要修改Redis的配置文件,使其支持主从复制,打开Redis配置文件:

sudo vi /etc/redis.conf

找到bind这一行,注释掉它,以允许任何IP地址访问Redis:

bind 127.0.0.1

找到protected-mode这一行,将其设置为no,以禁用保护模式:

protected-mode no

接下来,找到slave-serve-stale-data这一行,将其设置为yes,以允许从节点加载过期数据:

centos7搭建redis集群

slave-serve-stale-data yes

找到repl-backlog-sizerepl-backlog-ttl这两行,分别设置主节点的复制缓冲区大小和过期时间:

repl-backlog-size 5mb
repl-backlog-ttl 3600

保存并退出配置文件,重启Redis服务以使更改生效:

sudo systemctl restart redis

3、配置Redis从节点

在从节点上,我们同样需要修改Redis的配置文件,打开Redis配置文件:

sudo vi /etc/redis.conf

找到bind这一行,注释掉它,以允许任何IP地址访问Redis:

bind 127.0.0.1

找到protected-mode这一行,将其设置为no,以禁用保护模式:

centos7搭建redis集群

protected-mode no

接下来,找到slaveof这一行,将其设置为主节点的IP地址和端口号,以将该从节点连接到主节点:

slaveof <master_ip> <master_port>

保存并退出配置文件,重启Redis服务以使更改生效:

sudo systemctl restart redis

4、测试主从复制

现在,我们可以测试主从复制是否正常工作,在主节点上执行以下命令:

redis-cli set testkey "Hello, World!" && redis-cli get testkey | grep "Hello, World!" && redis-cli info replication | grep role:master && redis-cli info replication | grep connected_slaves:1 && redis-cli info psync | grep master_sync_in_progress:0 && redis-cli info psync | grep master_last_io_seconds:0 && redis-cli info psync | grep master_sync_offset:0 && redis-cli info psync | grep repl_backlog_active:1 && redis-cli info psync | grep repl_backlog_size:1048576 && redis-cli info psync | grep repl_backlog_first_byte_offset:0 && redis-cli info psync | grep repl_backlog_histlen:0 && redis-cli info psync | grep sync_with_master:No && redis-cli info psync | grep sync_in_progress:0 && redis-cli info psync | grep num_slaves:0 && redis-cli info psync | grep min_slaves_max_lag:0 && redis-cli info psync | grep max_slaves_processes:10 && redis-cli info psync | grep filter_role_replication:0 && redis-cli info psync | grep active_replicas:0 && redis-cli info psync | grep replicas_slaves:0 && redis-cli info psync | grep num_other_sentinels:0 && redis-cli info psync | grep num_other_replicas:0 && redis-cli info psync | grep used_cpu_sys:999.999996826172 && redis-cli info psync | grep used_cpu_user:999.999996826172 && redis-cli info psync | grep used_cpu_sys_children:0.00000000000000 && redis-cli info psync | grep used_cpu_user_children:0.00000000000000 && redis-cli info psync | grep mem_fragmentation_ratio:1.33333333333333 && redis-cli info psync | grep mem_allocator:jemalloc-5.1.0 && redis-cli info psync | grep used_memory:48444444 && redis-cli info psync | grep used_memory_human:47.25M && redis-cli info psync | grep used_memory_rss:48444444 && redis-cli info psync | grep used_memory_peak:48444444 && redis-cli info psync | grep used_memory_peak_human:47.25M && redis-cli info psync | grep total_system_memory:8589934592 && redis-cli info psync | grep used_memory_lua:17288 && redis-cli info psync | grep maxmemory:0 && redis-cli info psync | grep maxmemory_human:0B && redis-cli info psync | grep maxmemory_policy:noeviction && redis-cli info psync | grep maxmemory_samples:5 && redis-cli info psync | grep lruclock:126676667 || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey || echo "Error" > /tmp/testkey

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/367649.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seo的头像K-seoSEO优化员
Previous 2024-03-17 19:12
Next 2024-03-17 19:20

相关推荐

  • redis做点赞

    在现代的Web应用中,点赞、浏览、收藏、评论等操作是非常常见的,这些操作通常需要记录用户的行为,以便进行统计和分析,为了实现这些功能,我们可以使用Spring Boot和Redis这两种技术,Spring Boot是一个开源的Java框架,可以简化Spring应用的初始搭建以及开发过程;而Redis则是一个开源的使用ANSI C编写、……

    2024-03-05
    0294
  • redis的事务有什么用

    Redis是一个开源的使用ANSI C编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API,它常被用作数据库、缓存和消息中间件。在Redis中,事务是一个单独的隔离操作序列,这些操作序列要么全部成功,要么全部失败,Redis事务的主要作用就是用于执行一系列命令,并保证原子性(A……

    2024-03-07
    0143
  • 怎么提供redis的命中率数据

    3、分析测试结果运行测试脚本后,观察输出的查询耗时,如果查询耗时较低,说明Redis的命中率较高;反之,则说明命中率较低,还可以通过查看Redis的统计信息来进一步分析性能瓶颈,1、Redis的命中率受哪些因素影响?

    2023-12-17
    0131
  • ruby脚本语言

    在现代的分布式系统中,Redis Cluster是一种非常有效的解决方案,它允许你将数据分布在多个节点上,从而提高了系统的可用性和扩展性,在Ruby环境中,我们可以使用redis-rb库来操作Redis Cluster,本文将详细介绍如何使用Ruby脚本部署Redis Cluster集群。1. 安装Redis和Ruby环境我们需要在服……

    2024-03-08
    0116
  • redis内容缓存方式有哪些类型

    Redis是一个开源的内存数据结构存储系统,它支持多种类型的数据结构,并且通常被用作数据库、缓存和消息中间件,在内容缓存方面,Redis提供了几种不同的方式以满足不同场景下的需求,以下是Redis内容缓存的一些常见方式:1、全量缓存全量缓存是指将所有的数据都存储到Redis中,这种方式适用于数据量不大,且需要频繁访问的场景,通过将所有……

    2024-02-12
    0139
  • Redis实现订单自动过期功能的示例代码

    在分布式系统中,为了提高系统的可用性和稳定性,通常会使用缓存来存储一些热点数据,Redis作为一款高性能的内存数据库,被广泛应用于缓存场景,缓存中的数据如果不加以控制,可能会导致数据的过期和不一致,实现订单自动过期功能是非常重要的,本文将介绍如何使用Redis实现订单自动过期功能的示例代码。技术介绍1、Redis简介Redis(Rem……

    2024-03-14
    0143

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入