架构
节点角色
| 角色 | 启动什么 | 状态 |
|---|---|---|
standalone | 同进程内 HTTP API + 所有 worker | — |
router | 反向代理 + 限流 | 无状态 |
ingester | gRPC 接入 + WAL + buffer + flush 到 Parquet | 本地 WAL(≤ flush 窗口) |
querier | Arrow Flight server + DataFusion 执行 | 无状态 |
compactor | 周期合并 Parquet + 清理过期数据 | 无状态 |
alert_manager | 规则评估 + 升级派发 | 无状态 |
[node].roles 配置(或 MS_NODE.ROLES)选择。只有 ingester 持有本地状态(flush 窗口内的
WAL),因此其余角色都能自由扩缩。
部署方式
- Docker Compose
- Kubernetes
仓库提供两个 profile:
依赖
- Postgres —— 元数据(
FileMeta、流、告警、身份)。 - 对象存储 ——
local、s3(及 S3 兼容:MinIO、R2、阿里云 OSS)、azure、gcs。
运维
- 单一二进制,所有角色同一镜像。
- Prometheus
/metrics,含丰富的 cache / object_store / ingester / compactor 指标。 - 健康探针 —— readiness 由 ingester WAL 回放加对象存储往返探测共同把关。
- TLS + ACME —— 经
[http.tls]可选自动证书(HTTP-01 challenge,Let’s Encrypt)。