hubble数据库,可以很好的部署和运行在Intel、ARM构架的服务器之上,支持主流的Linux操作系统环境。 如有国产化系统版本建议要求的,请与天云公司hubble售后部门确认继续情况
操作系统平台 | 版本 |
---|---|
CentOS | 7.6 及以上的 7.x 版本 |
Red Hat Enterprise Linux | 7.6 及以上的 7.x 版本 |
注意:
目前支持 Red Hat Enterprise Linux 8.2 ,其他 8.x 版本未测试
目前支持 CentOS Linux 8.2 ,其他 8.x 版本未测试
名称 | 要求 |
---|---|
机器数量 | 3+ |
单台CPU | 2路主频2.4GHz每路16核 |
单台内存 | 32GB*2 |
单台磁盘 | 480GB*2 SSD + 960GB*2 SSD |
网络 | 千兆网卡 |
NFS网盘 | 2T SSD |
名称 | 要求 |
---|---|
机器数量 | 6+ |
单台CPU | 2路主频2.9GHz,每路至少16核 |
单台内存 | 32GB*8 |
单台磁盘 | 480GB*2 SSD + 960GB*6 SSD |
网络 | 2块万兆网卡 |
NFS网盘 | 2T SSD |
接下来所提到的cpu资源,指的是vcore,也就是常说的超线程(hyperthreads)
硬件方面指导是平台无关的。可以是物理机、虚拟机、容器化的。
在正式部署环境前,对应用程序的工作负载模式进行测试,以及调优硬件设置是非常重要的一个环节。例如读多和写多的工作负载将对cpu,内存,存储,IO和网络的测试是有很大差异的。
指标项 | 建议 |
---|---|
内存 /vcore | 4GiB |
存储 /vcore | 150GiB |
IOPS /vcore | 500 |
MB/s /vcore | 30 |
每个节点至少需要有4个vcores。为了能有更好的性能,我们建议至少给每个节点提供16个vcores,并给每个vcore提供4GiB的内存。
如果想获得更大的吞吐量,可以给每个节点配置更多的vcore,最大建议为32vcores。如还要进一步提高吞吐量,我们建议增加节点,而不是继续增加节点的物理硬件配置。
为了使得集群能有更好的弹性,我们建议使用更多的小节点,而不是使用更少的较大的节点。因为当数据分布在更多的小节点上时,故障节点的数据恢复的效率是更快的。
如果有大量的表,则需要更多的内存,由于元信息会在在每个节点的内存中,用于查询提速,当有巨量的表信息,无疑对内存的使用也将提升。
请避免使用超频或共享核心的虚拟机,这会限制cpu资源的负载。为了确保一致的性能,请确保所有节点具有统一的配置。
请关闭linux的swap功能,hubble有自己的内存与缓存的管理器。这是不依赖操作系统的缓存机制的。同时需要注意,当需要将页面读入内存时,在服务上过度分配内存可能会导致意料之外的性能问题。
hubble对于硬盘要求比较高,强烈推荐SSD类型,建议每块磁盘960G 磁盘格式建议使用 EXT4类型文件系统,xfs能提供一定程度上的性能提升,但在长期的崩溃测试中,有出现过数据丢失的情况
我们建议给每个vcore提供对应150GiB的存储空间,如果您的工作负载对容量并没有很大的要求,那么每个vcore对应更少的存储空间,也是没问题的。无论这个节点的vcore是多少,最大的存储都不能超过2.5TiB。
store建议使用单独的卷,避免store的卷与其他io活跃的服务共用。建议将log路径与store区分开,这样可以避免相互影响。
- 单台节点 数据盘6块,每块960GB
- 其中 /data1 RAID10模式共占用4块硬盘 用于存储数据文件
- 其中 /data2 作为RAID1模式共占用2块硬盘 用于存放日志和数据备份文件
磁盘必须能达到 500iops 和 30MB/s 对应每个vcore。可以使用sysbench工具计算IOPS,如果iops减少,建议增加节点,这样可以增加集群整体的IOPS。
默认端口 | 说明 |
---|---|
48080 | 页面监听端口 |
15432 | 集群间通信端口 |
hubble数据库支持常用的IE、Google Chrome、Mozilla Firefox等较新版本访问