> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-fbfa8bee.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Opciones de implementación con Helm (v1.x)

> Configuraciones avanzadas de implementación para el gráfico de Helm de ClickStack v1.x

<Warning>
  **Obsoleto — gráfico v1.x**

  Esta página documenta las opciones de implementación del gráfico de Helm **v1.x** con plantillas en línea, que se encuentra en modo de mantenimiento. Para el gráfico v2.x, consulta [Opciones de implementación con Helm](/es/clickstack/deployment/helm-deployment-options). Para migrar, consulta la [guía de actualización](/es/clickstack/deployment/helm-upgrade).
</Warning>

Esta guía cubre las opciones avanzadas de implementación de ClickStack con Helm. Para una instalación básica, consulta la [guía principal de implementación con Helm](/es/clickstack/deployment/helm-v1).

<div id="overview">
  ## Descripción general
</div>

El gráfico de Helm de ClickStack admite varias configuraciones de implementación:

* **Stack completo** (predeterminado): todos los componentes incluidos
* **ClickHouse externo**: usar un clúster de ClickHouse existente
* **OTel collector externo**: usar infraestructura de OTel existente
* **Implementación mínima**: solo HyperDX y dependencias externas

<div id="external-clickhouse">
  ## ClickHouse externo
</div>

Si ya tienes un clúster de ClickHouse (incluido ClickHouse Cloud), puedes desactivar el ClickHouse integrado y conectarte a tu instancia externa.

<div id="external-clickhouse-inline">
  ### Opción 1: Configuración inline (desarrollo/pruebas)
</div>

Usa este enfoque para pruebas rápidas o entornos no productivos:

```yaml theme={null}
# values-external-clickhouse.yaml
clickhouse:
  enabled: false  # Deshabilitar el ClickHouse integrado

otel:
  clickhouseEndpoint: "tcp://your-clickhouse-server:9000"
  clickhousePrometheusEndpoint: "http://your-clickhouse-server:9363"  # Opcional

hyperdx:
  defaultConnections: |
    [
      {
        "name": "External ClickHouse",
        "host": "http://your-clickhouse-server:8123",
        "port": 8123,
        "username": "your-username",
        "password": "your-password"
      }
    ]
```

Instala con esta configuración:

```shell theme={null}
helm install my-clickstack clickstack/clickstack -f values-external-clickhouse.yaml
```

<div id="external-clickhouse-secret">
  ### Opción 2: Secret externo (recomendado para entornos de producción)
</div>

Para implementaciones en producción en las que quieras mantener las credenciales separadas de la configuración de Helm:

<div id="create-configuration">
  #### Cree los archivos de configuración
</div>

```bash theme={null}
# Crear connections.json
cat <<EOF > connections.json
[
  {
    "name": "Production ClickHouse",
    "host": "https://your-production-clickhouse.com",
    "port": 8123,
    "username": "hyperdx_user",
    "password": "your-secure-password"
  }
]
EOF

# Crear sources.json
cat <<EOF > sources.json
[
  {
    "from": {
      "databaseName": "default",
      "tableName": "otel_logs"
    },
    "kind": "log",
    "name": "Logs",
    "connection": "Production ClickHouse",
    "timestampValueExpression": "TimestampTime",
    "displayedTimestampValueExpression": "Timestamp",
    "implicitColumnExpression": "Body",
    "serviceNameExpression": "ServiceName",
    "bodyExpression": "Body",
    "eventAttributesExpression": "LogAttributes",
    "resourceAttributesExpression": "ResourceAttributes",
    "severityTextExpression": "SeverityText",
    "traceIdExpression": "TraceId",
    "spanIdExpression": "SpanId"
  },
  {
    "from": {
      "databaseName": "default",
      "tableName": "otel_traces"
    },
    "kind": "trace",
    "name": "Traces",
    "connection": "Production ClickHouse",
    "timestampValueExpression": "Timestamp",
    "displayedTimestampValueExpression": "Timestamp",
    "implicitColumnExpression": "SpanName",
    "serviceNameExpression": "ServiceName",
    "traceIdExpression": "TraceId",
    "spanIdExpression": "SpanId",
    "durationExpression": "Duration"
  }
]
EOF
```

<div id="create-kubernetes-secret">
  #### Crear el secret de Kubernetes
</div>

```bash theme={null}
kubectl create secret generic hyperdx-external-config \
  --from-file=connections.json=connections.json \
  --from-file=sources.json=sources.json

# Eliminar archivos locales
rm connections.json sources.json
```

<div id="configure-helm-secret">
  #### Configura Helm para que use el secret
</div>

```yaml theme={null}
# values-external-clickhouse-secret.yaml
clickhouse:
  enabled: false

otel:
  clickhouseEndpoint: "tcp://your-clickhouse-server:9000"
  clickhousePrometheusEndpoint: "http://your-clickhouse-server:9363"

hyperdx:
  useExistingConfigSecret: true
  existingConfigSecret: "hyperdx-external-config"
  existingConfigConnectionsKey: "connections.json"
  existingConfigSourcesKey: "sources.json"
```

```shell theme={null}
helm install my-clickstack clickstack/clickstack -f values-external-clickhouse-secret.yaml
```

<div id="using-clickhouse-cloud">
  ### Uso de ClickHouse Cloud
</div>

En el caso específico de ClickHouse Cloud:

```yaml theme={null}
# values-clickhouse-cloud.yaml
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"
```

<div id="external-otel-collector">
  ## OTel collector externo
</div>

Si ya cuenta con una infraestructura de OTel collector:

```yaml theme={null}
# values-external-otel.yaml
otel:
  enabled: false  # Deshabilitar el OTel collector integrado

hyperdx:
  otelExporterEndpoint: "http://your-otel-collector:4318"
```

```shell theme={null}
helm install my-clickstack clickstack/clickstack -f values-external-otel.yaml
```

Para ver instrucciones sobre cómo exponer los endpoints del OTel collector a través de un Ingreso, consulta [Configuración de Ingreso](/es/clickstack/deployment/helm-configuration-v1#otel-collector-ingress).

<div id="minimal-deployment">
  ## Implementación mínima
</div>

Para las organizaciones que ya cuentan con infraestructura existente, implemente solo HyperDX:

```yaml theme={null}
# values-minimal.yaml
clickhouse:
  enabled: false

otel:
  enabled: false

hyperdx:
  otelExporterEndpoint: "http://your-otel-collector:4318"

  # Opción 1: Inline (para pruebas)
  defaultConnections: |
    [
      {
        "name": "External ClickHouse",
        "host": "http://your-clickhouse-server:8123",
        "port": 8123,
        "username": "your-username",
        "password": "your-password"
      }
    ]

  # Opción 2: Secret externo (producción)
  # useExistingConfigSecret: true
  # existingConfigSecret: "my-external-config"
  # existingConfigConnectionsKey: "connections.json"
  # existingConfigSourcesKey: "sources.json"
```

```shell theme={null}
helm install my-clickstack clickstack/clickstack -f values-minimal.yaml
```

<div id="next-steps">
  ## Siguientes pasos
</div>

* [Guía de configuración (v1.x)](/es/clickstack/deployment/helm-configuration-v1) - Configuración de claves de API, secretos e ingreso
* [Implementaciones en Cloud (v1.x)](/es/clickstack/deployment/helm-cloud-v1) - Configuraciones específicas de GKE, EKS y AKS
* [Guía principal de Helm (v1.x)](/es/clickstack/deployment/helm-v1) - Instalación básica
* [Opciones de implementación (v2.x)](/es/clickstack/deployment/helm-deployment-options) - Opciones de implementación de v2.x
* [Guía de actualización](/es/clickstack/deployment/helm-upgrade) - Migración de v1.x a v2.x
