硬件配置指南
查看InfluxDB Enterprise的配置和硬件指南:
对于 InfluxDB OSS 实例,请参见 OSS 硬件规格指南。
免责声明: 您的数字可能与推荐的指导方针有所不同。指导方针为实施最具性能的系统提供了估算基准。
企业概览
InfluxDB Enterprise 支持以下内容:
InfluxDB企业版将您的数据的多个副本分布在集群中,提供高可用性和冗余,因此一个不可用的节点不会对集群产生重大影响。请 联系您 以获得调优系统的帮助。
如果您想要一个单节点的 InfluxDB 实例,完全开源,需要的写入、查询和独特系列少于上述列出的数量,并且不需要冗余,我们推荐 InfluxDB OSS。
注意: 在没有集群冗余的情况下,当服务器不可用时,写入和查询会立即失败。
查询指南
查询复杂性在系统影响上差异很大。对单个节点和集群的建议基于中等查询负载。
对于简单或复杂查询,我们建议根据需要测试和调整建议的要求。查询复杂性由以下标准定义:
| 查询复杂性 | 标准 |
|---|
| 简单 | 几乎没有功能或没有正则表达式 |
| 时间限制在几分钟、几小时或最多24小时内 |
| 通常在几毫秒到几十毫秒内执行 |
| 中等 | 有多个函数和一到两个正则表达式 |
| 还可以具有 GROUP BY 子句或对多个星期的时间范围进行取样 |
| 通常在几百毫秒或几千毫秒内执行 |
| 复杂 | 具有多个聚合或转换函数或多个正则表达式 |
| 可能会抽样非常长的时间范围,涵盖几个月或几年 |
| 通常需要几秒钟才能执行 |
InfluxDB 企业集群指南
设置具有奇数个元节点的集群─偶数个可能在某些配置中导致问题。
集群必须具有至少三个独立的元节点以实现数据冗余和可用性。一个拥有2n + 1个元节点的集群可以容忍n个元节点的丢失。
元节点不需要很高的计算能力。无论集群负载如何,我们建议对元节点遵循以下指南:
- vCPU或CPU: 1-2个核心
- 内存: 512 MB - 1 GB
- 输入/输出操作每秒: 50
数据节点
一个具有一个数据节点的集群是有效的,但没有数据冗余。冗余由数据写入的保留策略上的 复制因子 设置。这里 n 是复制因子,一个集群可以丢失 n - 1 个数据节点并返回完整的查询结果。
注意: 为了在集群内实现最佳数据分配,请使用偶数个数据节点。
指导方针因每个节点的每秒写入次数、每个节点的适度查询次数以及每个节点的唯一系列数量而异。
每个节点的指南
| 虚拟CPU或CPU | 内存 | 每秒输入/输出操作数(IOPS) | 每秒写入次数 | 每秒查询次数* | 唯一系列 |
|---|
| 2核 | 4-8 GB | 1000 | < 5,000 | < 5 | < 100,000 |
| 4-6 个核心 | 16-32 GB | 1000+ | < 100,000 | < 25 | < 1,000,000 |
| 8+ 核心 | 32+ GB | 1000+ | > 100,000 | > 25 | > 1,000,000 |
- 提供了适用于适度查询的指南。查询对系统的影响差异很大。对于简单或复杂的查询,我们建议根据需要测试和调整建议的要求。详细信息请参见 query guidelines。
我什么时候需要更多的RAM?
一般来说,更多的RAM有助于查询更快返回。您的RAM要求主要由 series cardinality 决定。更高的基数需要更多的RAM。无论RAM如何,基数为1000万或以上都会导致OOM(内存不足)故障。通常,您可以通过重新设计您的 schema 来解决OOM问题。
每个集群的指南
InfluxDB企业指南因每秒写入和查询、系列基数、复制因子和基础设施 - AWS EC2 R4实例或等效项而有所不同:
- R4.xlarge (4 个核心)
- R4.2xlarge (8 个核心)
- R4.4xlarge (16个核心)
- R4.8xlarge (32 个核心)
指导方针来自于一个DevOps监控用例:维护一组计算机并监控服务器指标(如CPU、内核、内存、磁盘空间、磁盘I/O、网络等)。
推荐的集群配置
集群配置指南按以下方式组织:
- 你数据集中的序列基数:10,000, 100,000, 1,000,000,或 10,000,000
- 数据节点数量
- 服务器核心数量
对于每个集群配置,您会找到以下指南:
- 每秒最大写入次数仅(没有仪表板查询正在运行)
- 每秒最大查询次数(没有数据被写入)
- 每秒最大并发查询和写入次数,合计
审核集群配置表
- 选择下面的系列基数标签,然后点击以扩展复制因子。
- 在 节点 x 核心 列中,找到您配置中的数据节点和服务器核心数量,然后查看推荐的 最大 指南。
选择以下复制因子之一,以查看10,000系列的推荐集群配置:
复制因子,1
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 1 x 4 | 188,000 | 5 | 4 + 99,000 |
| 1 x 8 | 405,000 | 9 | 8 + 207,000 |
| 1 x 16 | 673,000 | 15 | 14 + 375,000 |
| 1 x 32 | 1,056,000 | 24 | 22 + 650,000 |
| 2 x 4 | 384,000 | 14 | 14 + 184,000 |
| 2 x 8 | 746,000 | 22 | 22 + 334,000 |
| 2 x 16 | 1,511,000 | 56 | 40 + 878,000 |
| 2 x 32 | 2,426,000 | 96 | 68 + 1,746,000 |
副本因子,2
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 2 x 4 | 296,000 | 16 | 16 + 151,000 |
| 2 x 8 | 560,000 | 30 | 26 + 290,000 |
| 2 x 16 | 972,000 | 54 | 50 + 456,000 |
| 2 x 32 | 1,860,000 | 84 | 74 + 881,000 |
| 4 x 8 | 1,781,000 | 100 | 64 + 682,000 |
| 4 x 16 | 3,430,000 | 192 | 104 + 1,732,000 |
| 4 x 32 | 6,351,000 | 432 | 188 + 3,283,000 |
| 6 x 8 | 2,923,000 | 216 | 138 + 1,049,000 |
| 6 x 16 | 5,650,000 | 498 | 246 + 2,246,000 |
| 6 x 32 | 9,842,000 | 1248 | 528 + 5,229,000 |
| 8 x 8 | 3,987,000 | 632 | 336 + 1,722,000 |
| 8 x 16 | 7,798,000 | 1384 | 544 + 3,911,000 |
| 8 x 32 | 13,189,000 | 3648 | 1,152 + 7,891,000 |
复制因子,3
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 3 x 8 | 815,000 | 63 | 54 + 335,000 |
| 3 x 16 | 1,688,000 | 120 | 87 + 705,000 |
| 3 x 32 | 3,164,000 | 255 | 132 + 1,626,000 |
| 6 x 8 | 2,269,000 | 252 | 168 + 838,000 |
| 6 x 16 | 4,593,000 | 624 | 336 + 2,019,000 |
| 6 x 32 | 7,776,000 | 1340 | 576 + 3,624,000 |
选择以下复制因子之一,以查看100,000系列的推荐集群配置:
复制因子,1
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 1 x 4 | 143,000 | 5 | 4 + 77,000 |
| 1 x 8 | 322,000 | 9 | 8 + 167,000 |
| 1 x 16 | 624,000 | 17 | 12 + 337,000 |
| 1 x 32 | 1,114,000 | 26 | 18 + 657,000 |
| 2 x 4 | 265,000 | 14 | 12 + 115,000 |
| 2 x 8 | 573,000 | 30 | 22 + 269,000 |
| 2 x 16 | 1,261,000 | 52 | 38 + 679,000 |
| 2 x 32 | 2,335,000 | 90 | 66 + 1,510,000 |
副本因子,2
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 2 x 4 | 196,000 | 16 | 14 + 77,000 |
| 2 x 8 | 482,000 | 30 | 24 + 203,000 |
| 2 x 16 | 1,060,000 | 60 | 42 + 415,000 |
| 2 x 32 | 1,958,000 | 94 | 64 + 984,000 |
| 4 x 8 | 1,144,000 | 108 | 68 + 406,000 |
| 4 x 16 | 2,512,000 | 228 | 148 + 866,000 |
| 4 x 32 | 4,346,000 | 564 | 320 + 1,886,000 |
| 6 x 8 | 1,802,000 | 252 | 156 + 618,000 |
| 6 x 16 | 3,924,000 | 562 | 384 + 1,068,000 |
| 6 x 32 | 6,533,000 | 1340 | 912 + 2,083,000 |
| 8 x 8 | 2,516,000 | 712 | 360 + 1,020,000 |
| 8 x 16 | 5,478,000 | 1632 | 1,024 + 1,843,000 |
| 8 x 32 | 1,0527,000 | 3392 | 1,792 + 4,998,000 |
复制因子,3
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 3 x 8 | 616,000 | 72 | 51 + 218,000 |
| 3 x 16 | 1,268,000 | 117 | 84 + 438,000 |
| 3 x 32 | 2,260,000 | 189 | 114 + 984,000 |
| 6 x 8 | 1,393,000 | 294 | 192 + 421,000 |
| 6 x 16 | 3,056,000 | 726 | 456 + 893,000 |
| 6 x 32 | 5,017,000 | 1584 | 798 + 1,098,000 |
选择以下复制因子之一以查看推荐的集群配置,用于处理 1,000,000 个系列:
副本因子,2
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 2 x 4 | 104,000 | 18 | 12 + 54,000 |
| 2 x 8 | 195,000 | 36 | 24 + 99,000 |
| 2 x 16 | 498,000 | 70 | 44 + 145,000 |
| 2 x 32 | 1,195,000 | 102 | 84 + 232,000 |
| 4 x 8 | 488,000 | 120 | 56 + 222,000 |
| 4 x 16 | 1,023,000 | 244 | 112 + 428,000 |
| 4 x 32 | 2,686,000 | 468 | 208 + 729,000 |
| 6 x 8 | 845,000 | 270 | 126 + 356,000 |
| 6 x 16 | 1,780,000 | 606 | 288 + 663,000 |
| 6 x 32 | 430,000 | 1,488 | 624 + 1,209,000 |
| 8 x 8 | 1,831,000 | 808 | 296 + 778,000 |
| 8 x 16 | 4,167,000 | 1,856 | 640 + 2,031,000 |
| 8 x 32 | 7,813,000 | 3,201 | 896 + 4,897,000 |
复制因子,3
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 3 x 8 | 234,000 | 72 | 42 + 87,000 |
| 3 x 16 | 613,000 | 120 | 75 + 166,000 |
| 3 x 32 | 1,365,000 | 141 | 114 + 984,000 |
| 6 x 8 | 593,000 | 318 | 144 + 288,000 |
| 6 x 16 | 1,545,000 | 744 | 384 + 407,000 |
| 6 x 32 | 3,204,000 | 1632 | 912 + 505,000 |
请选择以下其中一个复制因子以查看10,000,000系列的推荐集群配置:
复制因子,1
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 2 x 4 | 122,000 | 16 | 12 + 81,000 |
| 2 x 8 | 259,000 | 36 | 24 + 143,000 |
| 2 x 16 | 501,000 | 66 | 44 + 290,000 |
| 2 x 32 | 646,000 | 142 | 54 + 400,000 |
副本因子,2
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 2 x 4 | 87,000 | 18 | 14 + 56,000 |
| 2 x 8 | 169,000 | 38 | 24 + 98,000 |
| 2 x 16 | 334,000 | 76 | 46 + 224,000 |
| 2 x 32 | 534,000 | 136 | 58 + 388,000 |
| 4 x 8 | 335,000 | 120 | 60 + 204,000 |
| 4 x 16 | 643,000 | 256 | 112 + 395,000 |
| 4 x 32 | 967,000 | 560 | 158 + 806,000 |
| 6 x 8 | 521,000 | 378 | 144 + 319,000 |
| 6 x 16 | 890,000 | 582 | 186 + 513,000 |
| 8 x 8 | 699,000 | 1,032 | 256 + 477,000 |
| 8 x 16 | 1,345,000 | 2,048 | 544 + 741,000 |
复制因子,3
| 节点 x 核心 | 每秒写入 | 每秒查询 | 每秒查询 + 写入 |
|---|
| 3 x 8 | 170,000 | 60 | 42 + 98,000 |
| 3 x 16 | 333,000 | 129 | 76 + 206,000 |
| 3 x 32 | 609,000 | 178 | 60 + 162,000 |
| 6 x 8 | 395,000 | 402 | 132 + 247,000 |
| 6 x 16 | 679,000 | 894 | 150 + 527,000 |
存储:类型、数量和配置
存储容量和IOPS
考虑您所需的存储类型和数量。InfluxDB 旨在运行在固态硬盘 (SSDs) 和内存优化的云实例上,例如 AWS EC2 R5 或 R4 实例。InfluxDB 未在硬盘驱动器 (HDDs) 上进行测试,我们不建议在生产中使用 HDDs。为了获得最佳效果,InfluxDB 服务器的存储必须至少具有 1000 IOPS,以确保恢复和可用性。我们建议在停机后快速恢复集群数据节点至少有 2000 IOPS。
请查看您的云服务提供商文档以获取关于存储卷的IOPS细节。
字节与压缩
数据库名称、measurements、tag keys、field keys和tag values仅存储一次,并且始终为字符串。Field values和timestamps为每个点存储。
非字符串值大约需要三个字节。字符串值需要可变空间,取决于字符串压缩。
分离 wal 和 data 目录
在生产环境中运行InfluxDB时,将wal目录和data目录存储在不同的存储设备上。这种优化显著减少了在高写入负载下的磁盘争用——如果写入负载变化很大,这是一个重要的考虑。如果写入负载变化不超过15%,则这种优化可能不是必要的。