本指南介绍使用 Helm 对 ClickStack 进行高级部署选项。有关基础安装,请参阅 Helm 部署基础指南。
ClickStack 的 Helm 图表支持多种部署配置:
- 全栈(默认) - 包含所有组件
- 外部 ClickHouse - 使用现有的 ClickHouse 集群
- 外部 OTel collector - 使用现有的 OTel 基础设施
- 最小部署 - 仅包含 HyperDX,依赖外部组件
外部 ClickHouse
如果你已经有一个现有的 ClickHouse 集群(包括 ClickHouse Cloud),可以禁用内置的 ClickHouse,并连接到你的外部实例。
选项 1:内联配置(开发/测试)
此方法适用于快速测试或非生产环境:
# values-external-clickhouse.yaml \{#values-external-clickhouseyaml}
clickhouse:
enabled: false # 禁用内置 ClickHouse
otel:
clickhouseEndpoint: "tcp://your-clickhouse-server:9000"
clickhousePrometheusEndpoint: "http://your-clickhouse-server:9363" # 可选
hyperdx:
defaultConnections: |
[
{
"name": "External ClickHouse",
"host": "http://your-clickhouse-server:8123",
"port": 8123,
"username": "your-username",
"password": "your-password"
}
]
使用如下配置进行安装:
helm install my-clickstack clickstack/clickstack -f values-external-clickhouse.yaml
选项 2:外部 Secret(推荐用于生产环境)
对于生产环境部署,如果希望将凭证与 Helm 配置分离:
使用 ClickHouse Cloud
专门针对 ClickHouse Cloud:
# values-clickhouse-cloud.yaml \{#values-clickhouse-cloudyaml}
clickhouse:
enabled: false
persistence:
enabled: false
otel:
clickhouseEndpoint: "tcp://your-cloud-instance.clickhouse.cloud:9440?secure=true"
hyperdx:
useExistingConfigSecret: true
existingConfigSecret: "clickhouse-cloud-config"
existingConfigConnectionsKey: "connections.json"
existingConfigSourcesKey: "sources.json"
有关连接 ClickHouse Cloud 的完整示例,请参阅《创建 ClickHouse Cloud 连接》。
外部 OTel collector
如果你已经有现成的 OTel collector 基础设施:
# values-external-otel.yaml \{#values-external-otelyaml}
otel:
enabled: false # 禁用内置的 OTel collector
hyperdx:
otelExporterEndpoint: "http://your-otel-collector:4318"
helm install my-clickstack clickstack/clickstack -f values-external-otel.yaml
有关如何通过入口暴露 OTel collector 端点的说明,请参阅 入口配置。
最小部署
对于已有基础设施的组织,只需部署 HyperDX 即可:
# values-minimal.yaml \{#values-minimalyaml}
clickhouse:
enabled: false
otel:
enabled: false
hyperdx:
otelExporterEndpoint: "http://your-otel-collector:4318"
# 选项 1:内联配置(用于测试)
defaultConnections: |
[
{
"name": "External ClickHouse",
"host": "http://your-clickhouse-server:8123",
"port": 8123,
"username": "your-username",
"password": "your-password"
}
]
# 选项 2:外部 Secret(生产环境)
# useExistingConfigSecret: true
# existingConfigSecret: "my-external-config"
# existingConfigConnectionsKey: "connections.json"
# existingConfigSourcesKey: "sources.json"
helm install my-clickstack clickstack/clickstack -f values-minimal.yaml
后续步骤