假设有15台机器,是15台机器组成一个集群?还是每3台机器组成一个集群?哪种方案更优?
之前考虑过这个问题,3台一个集群隔离效果会更好。
当时搞过一套9台的大集群,天然的隔离不如小集群好,如果出集群级的故障影响范围更大。
推荐小集群,除非小集群解决不了,必须上大集群。
当然大集群共享效果会更好。
意思是说还得看使用场景,是吧
只考虑运维场景,肯定一个集群好运维啊。
其实可以换个角度考虑,按照能接受数据库故障等级划分,业务分类划分。
跑批类型的肯定占用资源比较多,可能独立会好一些;
实时联机类核心业务,不能接受资源抢占,保核心业务角度,肯定独立,并且监控管理上要做到更多;
其他小模块应用,管理类应用,oa类应用,不重要系统,也没啥大数据量,也没啥高并发,就大集群小租户,运维管理等方便,故障了也都能相互容忍一些。
至于重要系统集群到底多大,应该是数据量和并发等决定,而不是单纯考虑几个节点。
不重要的系统上的集群,那就默认为管理能力中上限,预留一点额外余量防止某个资源需求扩增就行。
根据需要吧
嗯,什么都不考虑,大小都行,推荐小集群。
如果不得已,是海量数据,大并发,必须用大集群了。
这种情况下,建议按应用场景进行设计。大集群有大集群的好处,小集群有小集群的优势。
学到了
分布式数据库就应该组成一个大集群,然后对外提供各种服务吧。小集群再搞分布式没意思,感觉还不如2台主备。至于集群级故障那就得打OB板子了
非常有道理![]()
挨打才能成长 ![]()
15台
服务器多了资源多
谢谢分享!
都用上,不要浪费
多搞几组.
在假设拥有15台机器的情况下,通常来说,并不是简单的将所有15台机器组成一个单一的大集群,也不是一定将它们每3台组成一个小集群,而是需要根据具体的业务需求、性能需求以及可靠性需求来决定。
从上述文档中提供的信息来看,OceanBase推荐的几种部署方案如下:
- 对于要求较高可用性和灾难恢复能力的应用场景,可以考虑采用三地五中心五副本的部署方式,即三个城市,每个城市有两个数据中心,总共有五个副本。这种方式能够确保任何IDC或城市的故障都不会影响服务,RPO=0。这种部署方式对于15台机器而言,可以考虑将每个城市中的两台机器用于承载主业务流量,而剩下的机器则用于构建冗余或者额外的服务层,如缓存、负载均衡等。
- 对于同城部署,可以采用三机房仲裁服务的方式,即在一个城市内的三个机房各部署一个或多个集群,其中一个机房仅部署仲裁服务。这种方式适合成本较为敏感且主要关注同城灾难恢复的场景。
- 对于性能测试等场景,无论是TPC-H、TPC-C还是Sysbench测试,都建议采用独立部署OBProxy的方式来避免资源争抢,并且强调磁盘IOPS应设置在10000以上,系统日志、事务日志、数据文件应配置为三块独立的磁盘,以优化性能。
综上所述,最优化的方案取决于您的具体需求。如果您的应用场景对高可用性和灾难恢复能力有较高要求,那么可以考虑将15台机器按照三地五中心五副本的方式部署;如果是针对性能测试,则可以根据测试类型灵活分配资源。当然,无论选择哪种方案,都应注意合理规划资源,确保系统的稳定性和高效性。
具体信息可参考以下文档:
- obd黑屏下和OCP怎么更改集群和节点IP
- OceanBase 集群高可用部署方案简介
- 进行 TPC-H 测试
- 进行 TPC-C 测试
- 进行 Sysbench 测试