Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

投入生产环境

在生产环境中部署 ClickStack 时,还需额外考虑一些事项,以确保安全性、稳定性以及配置无误。具体考虑因素会因所使用的版本——开源版或托管版——而有所不同。

对于生产部署,建议使用托管 ClickStack。它默认采用符合行业标准的安全实践,包括增强的加密、身份验证与连接能力,以及托管访问控制;此外还提供以下优势:

  • 计算资源可独立于存储自动扩缩容
  • 基于对象存储的低成本、近乎无限的数据保留能力
  • 能够借助仓库独立隔离读写工作负载
  • 集成式身份验证
  • 自动化备份
  • 无缝升级

使用托管 ClickStack 时,请遵循 ClickHouse Cloud 的这些最佳实践

保护摄取

默认情况下,在开源发行版之外部署 ClickStack OpenTelemetry Collector 时,它并未启用安全保护,且其 OTLP 端口无需身份验证。

要保护摄取,请在部署 collector 时通过 OTLP_AUTH_TOKEN 环境变量指定身份验证令牌。更多详情,请参阅"保护 collector"

创建摄取用户

建议为 OTel collector 创建一个专用用户,用于向托管 ClickHouse 摄取数据,并确保摄取数据发送到特定数据库,例如 otel。更多详情,请参阅"创建摄取用户"

配置生存时间 (TTL)

请确保已为你的托管 ClickStack 部署正确配置生存时间 (TTL)。它决定数据的保留时长——默认的 3 天通常需要调整。

估算资源

以下内容提供了一个模型,用于根据您预期的摄取量估算 ClickStack 部署所需的计算和存储资源。得出的数值仅为估算值,应作为初始基线参考——并非固定不变的标准答案。实际需求取决于查询复杂度、并发度、保留策略以及摄取吞吐量的波动情况。请始终监控资源使用情况,并根据需要进行扩缩容。

部署 ClickStack 时,需要为两类相互独立的工作负载预配计算资源:摄取查询

Workload Estimated resources
Ingest 持续摄取吞吐量每 10 MB/s 需要 1 vCPU
Query 每 1 QPS 以及每 10 MB/s 的持续摄取吞吐量需要 1 vCPU
假设
  • 存储采用 10x 压缩率——对于日志和链路追踪来说,这通常是一个较为保守的估计。
  • 查询 SLA 假设为 P50 1.5 秒、P99 5 秒。
  • 我们假设大多数查询都针对近期数据,遵循一种在约 1 小时处达到峰值、并延伸至约 6 小时的对数正态分布。对于较旧数据的查询,用户可能希望预配专用计算资源。在 ClickHouse Cloud 中,这部分计算资源在不使用时可以处于闲置状态 (因此不会产生费用) 。
  • 虽然查询计算资源可以独立于摄取计算资源进行扩缩容,但它在本质上仍与摄取量相关。我们假设随着摄取量增加,数据密度也会提高,从而导致查询时扫描的数据量更大,因此需要更多查询计算资源。

下表给出了示例规格,基于以每秒 MB 为单位递增的摄取吞吐量,以及对应的每月 TB 数据量。这里假设 ClickStack 在所有查询类型 (搜索、仪表盘、告警) 上的持续平均值为 1 QPS

MB/s TB/month Ingest CPUs Query CPUs Total CPUs Total Storage (per month) (GB)
10 25.92 1 3 4 2,592
20 51.84 2 6 8 5,184
50 129.6 5 15 20 12,960
100 259.2 10 30 40 25,920
200 518.4 20 60 80 51,840
500 1,296 50 150 200 129,600
1000 2,592 100 300 400 259,200

有关如何针对你的环境进一步优化容量估算假设的更多详情,请参阅"针对你的环境细化容量假设"

隔离可观测性工作负载

如果你要将 ClickStack 添加到一个现有的 ClickHouse Cloud 服务中,而该服务已经承载了其他工作负载 (例如实时应用分析) ,则强烈建议隔离可观测性流量。

使用 托管仓库 创建一个专用于 ClickStack 的子服务。这样你就可以:

  • 将摄取和查询负载与现有应用隔离
  • 独立扩缩容可观测性工作负载
  • 防止可观测性查询影响生产分析
  • 在需要时跨服务共享相同的底层数据

这种方法可确保现有工作负载不受影响,同时让 ClickStack 能随着可观测性数据的增长独立扩展。

对于更大规模的部署或需要自定义容量建议的场景,请联系支持团队以获得更精确的估算。

Navigation