热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Rediscluster集群需要至少多少个redis节点

这篇文章主要介绍“Rediscluster集群需要至少多少个redis节点”,在日常操作中,相信很多人在Rediscluster集群需要至少多少个redis节点问题上存

这篇文章主要介绍“Redis cluster集群需要至少多少个redis节点”,在日常操作中,相信很多人在Redis cluster集群需要至少多少个redis节点问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Redis cluster集群需要至少多少个redis节点”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

##配置redis集群需要至少6个redis节点

集群至少3主3从才可以搭建,防止错乱我们在redis 下建立一个文件夹cluster,里面复制6份配置文件,改名为redis1-redis6.conf

把每个配置文件都修改以下共同点:

bind 10.233.19.36 (根据实际情况配置)

port 7001 (7001-7006)

daemonize yes(以守护进程运行)

pidfile /var/run/redis.pid (守护进程生成的文件,以实际情况配置)

appendonly yes (开启AOF日志记录Redis操作的持久化)

appendfilename "appendonly-7001.aof" (AOF文件名,配置端口为文件名便于查看)

cluster-enabled yes (开启集群)

cluster-config-file nodes-7001.conf (节点信息,已节点命名便于查看)

cluster-node-timeout 15000 (节点响应超时时间)

以上为共同点每个节点不论主从都需要配置。

此外还需要注意,不要再为各个节点主动配置主从关系,否则启动时会报错。

因为主从关系要给redis集群自己调节。

##启动redis集群

上面的配置完成之后,分别启动6个redis实例。配置正确的情况下,都可以启动成功。然后运行如下命令创建集群:

注意,这里使用的是ip:port   

replicas 1 表示我们希望为集群中的每个主节点创建一个从节点

因为配置文件中设置了密码所以创建集群也需要加密码参数 -a

[ERR] Node 10.233.19.36:6380 NOAUTH Authentication required.

[redis@weblogic-test bin]$ ./redis-cli --cluster create 10.233.19.36:6380 10.233.19.36:6381 10.233.19.36:6382 10.233.19.36:6383 10.233.19.36:6384 10.233.19.36:6385 --cluster-replicas 1 -a beijing

Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.

>>> Performing hash slots allocation on 6 nodes...

Master[0] -> Slots 0 - 5460

Master[1] -> Slots 5461 - 10922

Master[2] -> Slots 10923 - 16383

Adding replica 10.233.19.36:6383 to 10.233.19.36:6380

Adding replica 10.233.19.36:6384 to 10.233.19.36:6381

Adding replica 10.233.19.36:6385 to 10.233.19.36:6382

>>> Trying to optimize slaves allocation for anti-affinity

[WARNING] Some slaves are in the same host as their master

M: 369151e4f1bed1e3fcaf474025853bc72056542e 10.233.19.36:6380

   slots:[0-5460] (5461 slots) master

M: 1f9314f13a22c2c68c609e98247bfe6d0714c75b 10.233.19.36:6381

   slots:[5461-10922] (5462 slots) master

M: 41840a493fceef875b1a521d951090f9c99c7040 10.233.19.36:6382

   slots:[10923-16383] (5461 slots) master

S: 438c5ecaf7501da25bfc0d2055445c036907ba61 10.233.19.36:6383

   replicates 1f9314f13a22c2c68c609e98247bfe6d0714c75b

S: 9598769e90155aeb130a33980ac1a1c27b1609cc 10.233.19.36:6384

   replicates 41840a493fceef875b1a521d951090f9c99c7040

S: b0d325e936ee5055648561302560d055d0bdb365 10.233.19.36:6385

   replicates 369151e4f1bed1e3fcaf474025853bc72056542e

Can I set the above configuration? (type 'yes' to accept): yes

>>> Nodes configuration updated

>>> Assign a different config epoch to each node

>>> Sending CLUSTER MEET messages to join the cluster

Waiting for the cluster to join

..

>>> Performing Cluster Check (using node 10.233.19.36:6380)

M: 369151e4f1bed1e3fcaf474025853bc72056542e 10.233.19.36:6380

   slots:[0-5460] (5461 slots) master

   1 additional replica(s)

M: 1f9314f13a22c2c68c609e98247bfe6d0714c75b 10.233.19.36:6381

   slots:[5461-10922] (5462 slots) master

   1 additional replica(s)

S: 9598769e90155aeb130a33980ac1a1c27b1609cc 10.233.19.36:6384

   slots: (0 slots) slave

   replicates 41840a493fceef875b1a521d951090f9c99c7040

M: 41840a493fceef875b1a521d951090f9c99c7040 10.233.19.36:6382

   slots:[10923-16383] (5461 slots) master

   1 additional replica(s)

S: b0d325e936ee5055648561302560d055d0bdb365 10.233.19.36:6385

   slots: (0 slots) slave

   replicates 369151e4f1bed1e3fcaf474025853bc72056542e

S: 438c5ecaf7501da25bfc0d2055445c036907ba61 10.233.19.36:6383

   slots: (0 slots) slave

   replicates 1f9314f13a22c2c68c609e98247bfe6d0714c75b

[OK] All nodes agree about slots configuration.

>>> Check for open slots...

>>> Check slots coverage...

[OK] All 16384 slots covered.

执行成功之后,连接一台redis,执行 cluster info 会看到类似如下信息:

127.0.0.1:6380> cluster info

cluster_state:ok

cluster_slots_assigned:16384

cluster_slots_ok:16384

cluster_slots_pfail:0

cluster_slots_fail:0

cluster_known_nodes:6

cluster_size:3

cluster_current_epoch:6

cluster_my_epoch:1

cluster_stats_messages_ping_sent:190

cluster_stats_messages_pong_sent:181

cluster_stats_messages_sent:371

cluster_stats_messages_ping_received:176

cluster_stats_messages_pong_received:190

cluster_stats_messages_meet_received:5

cluster_stats_messages_received:371

我们可以看到cluster_state:ok,cluster_slots_ok:16384,cluster_size:3。

到此,关于“Redis cluster集群需要至少多少个redis节点”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程笔记网站,小编会继续努力为大家带来更多实用的文章!


推荐阅读
  • 本文记录了在vue cli 3.x中移除console的一些采坑经验,通过使用uglifyjs-webpack-plugin插件,在vue.config.js中进行相关配置,包括设置minimizer、UglifyJsPlugin和compress等参数,最终成功移除了console。同时,还包括了一些可能出现的报错情况和解决方法。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • Whatsthedifferencebetweento_aandto_ary?to_a和to_ary有什么区别? ... [详细]
  • 本文介绍了一个适用于PHP应用快速接入TRX和TRC20数字资产的开发包,该开发包支持使用自有Tron区块链节点的应用场景,也支持基于Tron官方公共API服务的轻量级部署场景。提供的功能包括生成地址、验证地址、查询余额、交易转账、查询最新区块和查询交易信息等。详细信息可参考tron-php的Github地址:https://github.com/Fenguoz/tron-php。 ... [详细]
  • GreenDAO快速入门
    前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ... [详细]
  • 本文讨论了微软的STL容器类是否线程安全。根据MSDN的回答,STL容器类包括vector、deque、list、queue、stack、priority_queue、valarray、map、hash_map、multimap、hash_multimap、set、hash_set、multiset、hash_multiset、basic_string和bitset。对于单个对象来说,多个线程同时读取是安全的。但如果一个线程正在写入一个对象,那么所有的读写操作都需要进行同步。 ... [详细]
  • 本文介绍了如何在Azure应用服务实例上获取.NetCore 3.0+的支持。作者分享了自己在将代码升级为使用.NET Core 3.0时遇到的问题,并提供了解决方法。文章还介绍了在部署过程中使用Kudu构建的方法,并指出了可能出现的错误。此外,还介绍了开发者应用服务计划和免费产品应用服务计划在不同地区的运行情况。最后,文章指出了当前的.NET SDK不支持目标为.NET Core 3.0的问题,并提供了解决方案。 ... [详细]
  • Ihaveaworkfolderdirectory.我有一个工作文件夹目录。holderDir.glob(*)>holder[ProjectOne, ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • 本文介绍了如何在Mac上使用Pillow库加载不同于默认字体和大小的字体,并提供了一个简单的示例代码。通过该示例,读者可以了解如何在Python中使用Pillow库来写入不同字体的文本。同时,本文也解决了在Mac上使用Pillow库加载字体时可能遇到的问题。读者可以根据本文提供的示例代码,轻松实现在Mac上使用Pillow库加载不同字体的功能。 ... [详细]
  • Centos7搭建ELK(Elasticsearch、Logstash、Kibana)教程及注意事项
    本文介绍了在Centos7上搭建ELK(Elasticsearch、Logstash、Kibana)的详细步骤,包括下载安装包、安装Elasticsearch、创建用户、修改配置文件等。同时提供了使用华为镜像站下载安装包的方法,并强调了保证版本一致的重要性。 ... [详细]
  • 在IDEA中运行CAS服务器的配置方法
    本文介绍了在IDEA中运行CAS服务器的配置方法,包括下载CAS模板Overlay Template、解压并添加项目、配置tomcat、运行CAS服务器等步骤。通过本文的指导,读者可以轻松在IDEA中进行CAS服务器的运行和配置。 ... [详细]
author-avatar
逃学书生
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有