Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Referencia de la API de ClickHouse Operator

Este documento ofrece una referencia detallada de la API de los recursos personalizados de ClickHouse Operator.

AdditionalPort

AdditionalPort define un puerto TCP adicional que se expondrá en el pod de Kubernetes de ClickHouse y en el Service headless público.

Campo Tipo Descripción Obligatorio Predeterminado
name string El nombre identifica de forma única el puerto dentro de la lista. Se utiliza tanto como nombre del puerto del contenedor como nombre del puerto del Service.
Debe ser una DNS_LABEL.
true
port integer El puerto es el número de puerto TCP que se va a exponer. true

Aparece en:

CABundleSelector

CABundleSelector selecciona una clave que contiene un paquete de certificados de CA de un secreto en el Espacio de nombres del clúster.

Campo Tipo Descripción Obligatorio Predeterminado
name string El nombre del secreto en el Espacio de nombres del clúster del que se seleccionará. true
key string La clave del secreto que se seleccionará. Debe ser una clave de secreto válida. false ca.crt

Aparece en:

ClickHouseCluster

ClickHouseCluster es el esquema de la API clickhouseclusters.

Versión de la API y tipo

apiVersion: clickhouse.com/v1alpha1
kind: ClickHouseCluster
Campo Tipo Descripción Obligatorio Predeterminado
spec ClickHouseClusterSpec true
status ClickHouseClusterStatus true

Aparece en:

ClickHouseClusterList

ClickHouseClusterList contiene una lista de ClickHouseCluster.

Versión de API y tipo

apiVersion: clickhouse.com/v1alpha1
kind: ClickHouseClusterList
Campo Tipo Descripción Obligatorio Predeterminado
items ClickHouseCluster array true

ClickHouseClusterSpec

ClickHouseClusterSpec define el estado deseado de ClickHouseCluster.

Field Type Description Required Default
replicas integer Número de réplicas en el shard único. false 3
shards integer Número de shards en el clúster. false 1
keeperClusterRef KeeperClusterReference Referencia al KeeperCluster que se utiliza para la coordinación de ClickHouse.
Cuando se omite el Espacio de nombres, se utiliza el Espacio de nombres de ClickHouseCluster.
true
podTemplate PodTemplateSpec Parámetros pasados a la especificación del pod de Kubernetes de ClickHouse. false
containerTemplate ContainerTemplateSpec Parámetros pasados a la especificación del contenedor de ClickHouse. false
dataVolumeClaimSpec PersistentVolumeClaimSpec Especificación del almacenamiento persistente para los datos de ClickHouse. false
additionalVolumeClaimTemplates PersistentVolumeClaimTemplate array Plantillas de PVC adicionales por pod de Kubernetes para almacenamiento JBOD / multidisco.
Cada entrada se propaga en el volumeClaimTemplate del StatefulSet, se monta en /var/lib/clickhouse/disks/<name> y
se añade a la política de almacenamiento JBOD generada.
El conjunto de discos queda fijo en el momento de la creación.
false
labels object (keys:string, values:string) Etiquetas adicionales que se añaden a los recursos. false
annotations object (keys:string, values:string) Anotaciones adicionales que se añaden a los recursos. false
podDisruptionBudget PodDisruptionBudgetSpec PodDisruptionBudget configura el PDB creado para cada shard.
Cuando no se establece, el operador usa por defecto maxUnavailable=1 para shards de réplica única
y minAvailable=1 para shards de múltiples réplicas.
false
networkPolicy ClickHouseNetworkPolicySpec NetworkPolicy configura la NetworkPolicy gestionada para el clúster. false
settings ClickHouseSettings Parámetros de configuración para el servidor ClickHouse. false { }
clusterDomain string ClusterDomain es el sufijo de dominio del clúster de Kubernetes utilizado para la resolución DNS. false cluster.local
upgradeChannel string UpgradeChannel especifica el canal de versiones para las comprobaciones de actualización de versión principal.
Cuando está vacío, solo se propondrán actualizaciones menores. Los valores permitidos son: stable, lts o una versión major.minor específica (p. ej. 25.8).
false
versionProbeTemplate VersionProbeTemplate Sobreescrituras de VersionProbeTemplate para el Job de detección de versión. false
externalSecret ExternalSecret ExternalSecret es una referencia opcional a un secreto gestionado externamente que contiene los secretos del clúster.
El secreto debe residir en el mismo Espacio de nombres que el clúster.
false
additionalPorts AdditionalPort array AdditionalPorts declara puertos TCP adicionales para exponer en el pod de Kubernetes de ClickHouse y el Service headless público.
El operador solo añade los puertos a los recursos de Kubernetes, no configura el servidor ClickHouse para que escuche en ellos.
false

Aparece en:

ClickHouseClusterStatus

ClickHouseClusterStatus define el estado observado de ClickHouseCluster.

Campo Tipo Descripción Obligatorio Predeterminado
conditions array de Condition false
readyReplicas integer ReadyReplicas Número total de réplicas listas para procesar solicitudes. false
configurationRevision string ConfigurationRevision indica la revisión de configuración de destino para cada réplica. true
statefulSetRevision string StatefulSetRevision indica la revisión de StatefulSet de destino para cada réplica. true
currentRevision string CurrentRevision indica la revisión de la especificación de ClickHouseCluster aplicada más recientemente. true
updateRevision string UpdateRevision indica la revisión de la especificación de ClickHouseCluster solicitada más recientemente. true
observedGeneration integer ObservedGeneration indica la generación más reciente observada por el controlador. true
version string Version indica la versión informada por la imagen del contenedor. false
versionProbeRevision string VersionProbeRevision es el hash de la imagen de la última sonda de versión correcta.
Cuando coincide con el hash de la imagen actual, la Version en caché se utiliza directamente.
false

Aparece en:

ClickHouseNetworkPolicySpec

ClickHouseNetworkPolicySpec configura la NetworkPolicy gestionada del clúster de ClickHouse. La política gestionada cubre el tráfico interno del clúster:

  • Conectividad entre réplicas
  • Acceso del operador al clúster Cualquier otro ingreso, incluidas las conexiones de clientes y el scraping de métricas, requiere NetworkPolicies definidas por el usuario.
Campo Tipo Descripción Obligatorio Predeterminado
policy NetworkPolicyPolicy La política controla si el operador administra una NetworkPolicy que restringe el ingreso a los pods del clúster.
El valor predeterminado es "Disabled" si no se especifica.
false Disabled

Aparece en:

ClickHouseSettings

ClickHouseSettings define las opciones de configuración del servidor ClickHouse.

Campo Tipo Descripción Obligatorio Predeterminado
defaultUserPassword DefaultPasswordSelector Especifica el origen y el tipo de la contraseña del usuario default de ClickHouse. false
logger LoggerConfig Configuración del registro del servidor ClickHouse. false
tls ClusterTLSSpec Configuración de TLS; permite configurar endpoints seguros y la verificación de certificados para el servidor ClickHouse. false
encryption EncryptionSettings El cifrado, cuando se configura, habilita el cifrado en reposo de los datos de las tablas mediante una política de almacenamiento dedicada.
Actívelo por tabla con SETTINGS storage_policy = '<policyName>'.
false
enableDatabaseSync boolean Habilita la sincronización de las bases de datos de ClickHouse con las réplicas recién creadas y la limpieza de réplicas desactualizadas
tras reducir la escala.
Solo es compatible con las bases de datos Replicated y de integración.
false true
extraConfig RawExtension Configuración adicional de ClickHouse que se combinará con la predeterminada. false
extraUsersConfig RawExtension Configuración adicional de usuarios de ClickHouse que se combinará con la predeterminada. false

Aparece en:

ClusterTLSSpec

ClusterTLSSpec define la configuración de TLS del clúster.

Field Type Description Required Default
enabled boolean Enabled indica si TLS está habilitado, lo que determina si deben abrirse puertos seguros. false false
required boolean Required especifica si TLS debe aplicarse a todas las conexiones. Deshabilita los puertos no seguros. false false
serverCertSecret LocalObjectReference ServerCertSecret es una referencia a un secreto de TLS que contiene el certificado del servidor.
Se espera que el secreto tenga la misma estructura que los certificados generados por cert-manager,
con el certificado y la clave privada almacenados en las claves "tls.crt" y "tls.key", respectivamente.
false
caBundle CABundleSelector CABundle es una referencia a una clave de secreto que contiene un paquete de certificados de CA usado para verificar certificados de pares.
Si está vacío, se usará el paquete de certificados de CA de confianza del sistema.
La clave toma por defecto el valor "ca.crt" si no se especifica.
false

Aparece en:

ConfigMapKeySelector

ConfigMapKeySelector selecciona una clave de un ConfigMap.

Campo Tipo Descripción Obligatorio Predeterminado
name string El nombre del ConfigMap en el espacio de nombres del clúster del que se va a seleccionar. true
key string La clave del ConfigMap que se va a seleccionar. Debe ser una clave válida. true

Aparece en:

ContainerImage

ContainerImage define una imagen de contenedor con un repositorio, un tag o un hash.

Campo Tipo Descripción Obligatorio Predeterminado
repository string Nombre del registro de la imagen del contenedor
Ejemplo: docker.io/clickhouse/clickhouse
false
tag string Tag de la imagen del contenedor, mutuamente excluyente con hash.
Ejemplo: 25.3
false
hash string Hash de la imagen del contenedor, mutuamente excluyente con tag. false

Aparece en:

ContainerTemplateSpec

ContainerTemplateSpec describe las anulaciones de la configuración de los contenedores del clúster.

Campo Tipo Descripción Obligatorio Predeterminado
image ContainerImage Image es la imagen de contenedor que se va a desplegar. true
imagePullPolicy PullPolicy ImagePullPolicy de la imagen; de forma predeterminada, es IfNotPresent. false
resources ResourceRequirements Resources son los requisitos de recursos del contenedor del servidor.
Se aplica en su conjunto: los valores predeterminados del operador solo se usan cuando todos los campos de recursos están vacíos.
false
volumeMounts VolumeMount array VolumeMounts es la lista de montajes de volumen del contenedor.
Se concatena con los montajes generados por el operador. Las entradas que comparten un mountPath con un montaje del operador
se combinan en un volumen proyectado.
false
env EnvVar array Env es la lista de variables de entorno que se establecerán en el contenedor.
Se combina con los valores predeterminados del operador por nombre.
false
securityContext SecurityContext SecurityContext define las opciones de seguridad con las que debe ejecutarse el contenedor.
Un SecurityContext no nulo reemplaza por completo los valores predeterminados del operador; el usuario es responsable de toda la
estructura. Cuando es nulo, se conservan los valores predeterminados del operador.
Más información: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
false
livenessProbe Probe LivenessProbe anula la sonda de actividad predeterminada del operador. false
readinessProbe Probe ReadinessProbe anula la readiness probe predeterminada del operador. false

Aparece en:

DefaultPasswordSelector

DefaultPasswordSelector selecciona el origen de la contraseña predeterminada del usuario.

Campo Tipo Descripción Obligatorio Predeterminado
passwordType string Tipo de la contraseña proporcionada. Consulte la documentación para conocer los valores posibles: https://clickhouse.com/docs/operations/settings/settings-users#user-namepassword true password
secret SecretKeySelector Selecciona el valor de la contraseña desde una clave de secreto false
configMap ConfigMapKeySelector Selecciona el valor de la contraseña desde una clave de ConfigMap false

Aparece en:

EncryptionSettings

EncryptionSettings habilita el cifrado en reposo de los datos de las tablas. Cuando está presente, el operator genera una política de almacenamiento cifrada de ClickHouse que envuelve cada disco de datos; las tablas la habilitan mediante SETTINGS storage_policy. El cifrado no se puede deshabilitar una vez activado.

Campo Tipo Descripción Obligatorio Predeterminado
policyName string PolicyName es el nombre de la política de almacenamiento cifrada generada. false encrypted

Aparece en:

ExternalSecret

ExternalSecret es una referencia a un secreto en el mismo espacio de nombres.

Campo Tipo Descripción Obligatorio Predeterminado
name string Nombre del secreto. true
policy ExternalSecretPolicy La política controla cómo se trata el contenido del secreto.
Observe (predeterminado): bloquea la reconciliación si falta alguna clave obligatoria.
Manage: genera en el secreto existente las claves obligatorias que faltan.
false Observe

Aparece en:

ExternalSecretPolicy

ExternalSecretPolicy controla cómo el operador gestiona el contenido del secreto externo.

Campo Descripción
Observe ExternalSecretPolicyObserve es la política predeterminada: el operador lee y valida el secreto;
la reconciliación se bloquea si falta alguna clave requerida.
Las claves requeridas ausentes y sus formatos esperados se notifican mediante la condición de estado ExternalSecretValid en tiempo de ejecución.
Manage ExternalSecretPolicyManage es la política en la que el operador completa cualquier clave requerida que falte generando
valores para ella. El secreto se actualiza, pero el operador nunca asume su propiedad ni lo elimina.

Aparece en:

KeeperCluster

KeeperCluster es el esquema de la API keeperclusters.

Versión de la API y tipo

apiVersion: clickhouse.com/v1alpha1
kind: KeeperCluster
Campo Tipo Descripción Obligatorio Predeterminado
spec KeeperClusterSpec true
status KeeperClusterStatus true

Aparece en:

KeeperClusterList

KeeperClusterList contiene una lista de KeeperCluster.

Versión de la API y tipo

apiVersion: clickhouse.com/v1alpha1
kind: KeeperClusterList
Campo Tipo Descripción Obligatorio Predeterminado
items Array de KeeperCluster true

KeeperClusterReference

KeeperClusterReference identifica el KeeperCluster que utiliza un ClickHouseCluster.

Campo Tipo Descripción Obligatorio Predeterminado
name string Nombre del recurso KeeperCluster. true
namespace string Espacio de nombres del recurso KeeperCluster.
Si se omite, se usa el espacio de nombres de ClickHouseCluster.
false

Aparece en:

KeeperClusterSpec

KeeperClusterSpec define el estado deseado de KeeperCluster.

Campo Tipo Descripción Obligatorio Predeterminado
replicas integer Número de réplicas en el clúster false 3
podTemplate PodTemplateSpec Parámetros que se pasan a la especificación del pod de Kubernetes de Keeper. false
containerTemplate ContainerTemplateSpec Parámetros que se pasan a la especificación del contenedor de Keeper. false
dataVolumeClaimSpec PersistentVolumeClaimSpec Especificación del almacenamiento persistente para los datos de ClickHouse Keeper. false
labels object (keys:string, values:string) Etiquetas adicionales que se añaden a los recursos. false
annotations object (keys:string, values:string) Anotaciones adicionales que se añaden a los recursos. false
podDisruptionBudget PodDisruptionBudgetSpec PodDisruptionBudget configura el PDB creado para el clúster de Keeper.
Si no se establece, el operador usa de forma predeterminada maxUnavailable=replicas/2
(para preservar el quorum en un clúster 2F+1); los clústeres con una sola réplica usan maxUnavailable=1.
false
networkPolicy KeeperNetworkPolicySpec NetworkPolicy configura la NetworkPolicy gestionada para el clúster de Keeper. false
settings KeeperSettings Parámetros de configuración del servidor de ClickHouse Keeper. false
clusterDomain string ClusterDomain es el sufijo de dominio del clúster de Kubernetes que se usa para la resolución DNS. false cluster.local
upgradeChannel string UpgradeChannel especifica el canal de versiones para las comprobaciones de actualización de versiones principales.
Si está vacío, solo se propondrán actualizaciones menores. Los valores permitidos son: stable, lts o una versión específica major.minor (por ejemplo, 25.8).
false
versionProbeTemplate VersionProbeTemplate Sobrescrituras de VersionProbeTemplate para el Job de detección de versión.
Deprecated: los Jobs de sonda de versión de Keeper no se utilizan; este campo se conserva por compatibilidad con versiones anteriores.
false

Aparece en:

KeeperClusterStatus

KeeperClusterStatus define el estado observado de KeeperCluster.

Campo Tipo Descripción Obligatorio Predeterminado
conditions Condition array false
readyReplicas integer ReadyReplicas Número total de réplicas listas para atender solicitudes. false
configurationRevision string ConfigurationRevision indica la revisión de configuración de destino para cada réplica. true
statefulSetRevision string StatefulSetRevision indica la revisión de StatefulSet de destino para cada réplica. true
currentRevision string CurrentRevision indica la última revisión de la especificación de KeeperCluster aplicada. true
updateRevision string UpdateRevision indica la última revisión de la especificación de KeeperCluster solicitada. true
observedGeneration integer ObservedGeneration indica la última generación observada por el controlador. true
version string Version indica la versión informada por el Keeper server. false
versionProbeRevision string VersionProbeRevision es el hash de la imagen de la última sonda de versión correcta.
Obsoleto: los jobs de sonda de versión de Keeper no se usan; este campo se conserva para mantener la compatibilidad con versiones anteriores.
false

Aparece en:

KeeperNetworkPolicySpec

KeeperNetworkPolicySpec configura la NetworkPolicy gestionada para el clúster de Keeper. La política gestionada cubre el tráfico interno del clúster:

  • Conectividad entre réplicas
  • Acceso del operador al clúster
  • Acceso desde clústeres de ClickHouse que hacen referencia a este clúster de Keeper

Cualquier otro ingreso, incluido el scraping de métricas, requiere NetworkPolicies definidas por el usuario.

Campo Tipo Descripción Obligatorio Predeterminado
policy NetworkPolicyPolicy La política determina si el operador administra una NetworkPolicy que restringe el ingreso a los pods de Keeper.
De forma predeterminada, es "Disabled" si no se especifica.
false Disabled

Aparece en:

KeeperSettings

KeeperSettings define la configuración del servidor de ClickHouse Keeper.

Campo Tipo Descripción Obligatorio Predeterminado
logger LoggerConfig Configuración del logging del servidor de ClickHouse Keeper. false
tls ClusterTLSSpec Configuración de TLS; permite configurar endpoints seguros y la verificación de certificados para el servidor de ClickHouse Keeper. false
extraConfig RawExtension Configuración adicional de ClickHouse Keeper que se combinará con la configuración predeterminada. false

Aparece en:

LoggerConfig

LoggerConfig define la configuración de logs del servidor.

Campo Tipo Descripción Obligatorio Predeterminado
logToFile booleano Si es false, desactiva todo el registro en archivos. false true
jsonLogs booleano Si es true, registra en formato JSON. false false
level cadena Nivel de verbosidad del logger del servidor. false trace
size cadena Tamaño máximo del archivo de logs. false 1000M
count entero Número máximo de archivos de logs que se conservan. false 50

Aparece en:

NamedTemplateMeta

NamedTemplateMeta define la configuración de metadatos admitida para los objetos de plantilla que requieren un nombre.

Campo Tipo Descripción Obligatorio Por defecto
name string El nombre es el identificador del recurso. true
labels objeto (claves:string, valores:string) Las etiquetas se aplican a los objetos de plantilla. false
annotations objeto (claves:string, valores:string) Las anotaciones se aplican a los objetos de plantilla. false

Aparece en:

NetworkPolicyPolicy

NetworkPolicyPolicy controla si el operador administra una NetworkPolicy para el clúster.

Campo Descripción
Enabled NetworkPolicyEnabled hace que el operador administre una NetworkPolicy que restringe el ingreso a los pods del clúster.
Disabled NetworkPolicyDisabled deshabilita la NetworkPolicy gestionada; el operador la elimina si existe.

Aparece en:

PDBPolicy

PDBPolicy controla si se crean PodDisruptionBudgets.

Campo Descripción
Enabled PDBPolicyEnabled habilita la creación de PodDisruptionBudgets por parte del operador.
Disabled PDBPolicyDisabled deshabilita los PodDisruptionBudgets; el operador eliminará el recurso con las etiquetas correspondientes.
Ignored PDBPolicyIgnored ignora los PodDisruptionBudgets; el operador no creará ni eliminará ningún PDB, y los PDB existentes no se modificarán.

Aparece en:

PersistentVolumeClaimTemplate

PersistentVolumeClaimTemplate es una plantilla con nombre para un PersistentVolumeClaim por réplica.

Campo Tipo Descripción Obligatorio Predeterminado
metadata NamedTemplateMeta Consulta la documentación de la API de Kubernetes para conocer los campos de metadata. true
spec PersistentVolumeClaimSpec Spec define las características deseadas de un volumen solicitado para un pod de Kubernetes.
Más información: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
true

Aparece en:

PodDisruptionBudgetSpec

PodDisruptionBudgetSpec configura el PDB creado para el clúster. Solo se puede establecer uno de estos valores: MinAvailable o MaxUnavailable. Si no se establece ninguno, el operador elige un valor predeterminado seguro en función del número de réplicas.

Campo Tipo Descripción Obligatorio Predeterminado
policy PDBPolicy Policy controla si el operador crea PodDisruptionBudgets.
De forma predeterminada, es "Enabled" cuando no se establece. Establézcalo en "Disabled" para omitir la creación de PDB (p. ej., en entornos de desarrollo).
false Enabled
minAvailable IntOrString MinAvailable es la cantidad mínima de pods que deben permanecer disponibles durante una interrupción. false
maxUnavailable IntOrString MaxUnavailable es la cantidad máxima de pods que pueden no estar disponibles durante una interrupción. false
unhealthyPodEvictionPolicy UnhealthyPodEvictionPolicyType UnhealthyPodEvictionPolicy define los criterios para determinar cuándo los pods no saludables
deben considerarse para su desalojo.
Los valores válidos son "IfReady" y "AlwaysAllow".
false

Aparece en:

PodTemplateSpec

PodTemplateSpec describe las sobrescrituras de configuración del pod de Kubernetes para los pods del clúster.

Campo Tipo Descripción Obligatorio Predeterminado
terminationGracePeriodSeconds entero Duración opcional en segundos que el pod de Kubernetes necesita para finalizar correctamente. Puede reducirse en la solicitud de eliminación.
El valor debe ser un entero no negativo. El valor cero indica que se detiene inmediatamente mediante
la señal kill (sin posibilidad de apagarse).
Si este valor es nil, se usará en su lugar el período de gracia predeterminado.
El período de gracia es la duración en segundos entre el momento en que se envía
una señal de terminación a los procesos en ejecución en el pod de Kubernetes y el momento en que dichos procesos se detienen por la fuerza con una señal kill.
Establezca este valor por encima del tiempo de limpieza previsto para su proceso.
El valor predeterminado es de 30 segundos.
false
topologySpreadConstraints TopologySpreadConstraint array TopologySpreadConstraints describe cómo un grupo de pods debe distribuirse entre dominios
de topología. El scheduler programará los pods de una forma que respete las restricciones.
Todos los topologySpreadConstraints se combinan mediante AND.
Se combina con los valores predeterminados del operador por topologyKey.
false
imagePullSecrets LocalObjectReference array ImagePullSecrets es una lista opcional de referencias a secretos del mismo espacio de nombres que se usan para descargar cualquiera de las imágenes utilizadas por este PodSpec.
Si se especifican, estos secretos se pasarán a las implementaciones individuales encargadas de la descarga para su uso.
Más información: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
Se combina con los valores predeterminados del operador por nombre.
false
nodeSelector objeto (claves:string, valores:string) NodeSelector es un selector que debe cumplirse para que el pod de Kubernetes pueda asignarse a un nodo.
Selector que debe coincidir con las etiquetas de un nodo para que el pod de Kubernetes se programe en ese nodo.
Más información: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
false
affinity Afinidad Si se especifica, las restricciones de planificación del pod de Kubernetes.
Se agrega a los valores predeterminados del operador: las listas de términos de planificación se concatenan.
false
tolerations Toleration array Si se especifica, las toleraciones del pod de Kubernetes. false
schedulerName string Si se especifica, el pod de Kubernetes será programado por el scheduler especificado.
Si no se especifica, el pod de Kubernetes será programado por el scheduler predeterminado.
false
serviceAccountName string ServiceAccountName es el nombre de la cuenta de servicio que se usará para ejecutar este pod de Kubernetes.
Más información: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
false
priorityClassName string PriorityClassName es el nombre de la PriorityClass que se usará para el pod de Kubernetes. false
runtimeClassName string RuntimeClassName es el nombre de la RuntimeClass que se usará para el pod de Kubernetes. false
volumes Volume array Volumes define la lista de volúmenes que pueden montar los contenedores del pod de Kubernetes.
Más información: https://kubernetes.io/docs/concepts/storage/volumes
Se fusiona con los valores predeterminados del operador por nombre; un volumen de usuario reemplaza cualquier volumen del operador con el mismo nombre.
false
securityContext PodSecurityContext SecurityContext define atributos de seguridad a nivel de pod de Kubernetes y opciones de configuración comunes de los contenedores.
Un SecurityContext distinto de nil reemplaza por completo los valores predeterminados del operador; el usuario es responsable de la
estructura completa. Cuando es nil, se conservan los valores predeterminados del operador.
false
topologyZoneKey string TopologyZoneKey es la clave de las etiquetas de los nodos.
Los nodos que tienen una etiqueta con esta clave y valores idénticos se consideran dentro del mismo dominio de topología,
por ejemplo, la misma zona de disponibilidad para "topology.kubernetes.io/zone" o el mismo nodo para "kubernetes.io/hostname".
Establézcalo para equilibrar los pods que contienen los mismos datos (réplicas de un segmento para ClickHouse, todas las réplicas para Keeper)
entre dominios: un TopologySpreadConstraint obligatorio (maxSkew 1, DoNotSchedule) más una regla preferida de PodAntiAffinity.
Los pods de distintos segmentos pueden compartir un dominio, por lo que se permiten varios pods por dominio.
Con menos dominios que réplicas, varias réplicas comparten un dominio, pero siguen distribuyéndose de forma uniforme.
Además, los pods de ClickHouse prefieren los dominios que alojan los pods de Keeper que utilizan.
Se recomienda establecerlo en "topology.kubernetes.io/zone".
false
nodeHostnameKey string NodeHostnameKey es la clave de las etiquetas de los nodos.
Los nodos que tienen una etiqueta con esta clave y valores idénticos se consideran pertenecientes al mismo nodo.
Establézcala para forzar la ocupación exclusiva de nodos: una regla obligatoria de PodAntiAffinity en todos los pods del clúster,
como máximo un pod por nodo independientemente del segmento. Requiere al menos tantos nodos como pods;
si hay menos nodos, los pods excedentes permanecerán en estado Pending.
Para distribuir las réplicas del mismo segmento entre nodos mientras se empaquetan varios pods por nodo,
establezca TopologyZoneKey en "kubernetes.io/hostname" en su lugar.
Se recomienda establecerla en "kubernetes.io/hostname".
false
initContainers Container array InitContainers es la lista de contenedores de inicialización que se ejecutan antes de que se inicie el contenedor principal del servidor.
Se combina con los valores predeterminados del operador por nombre.
si tienen el mismo nombre.
false

Aparece en:

SecretKeySelector

SecretKeySelector selecciona una clave de un secreto.

Campo Tipo Descripción Obligatorio Predeterminado
name string El nombre del secreto en el Espacio de nombres del clúster del que se seleccionará. true
key string La clave del secreto que se seleccionará. Debe ser una clave de secreto válida. true

Aparece en:

TemplateMeta

TemplateMeta define la configuración de metadatos admitida para los objetos de plantilla.

Campo Tipo Descripción Obligatorio Por defecto
labels objeto (claves:string, valores:string) Las etiquetas se aplican a los objetos de plantilla. false
annotations objeto (claves:string, valores:string) Las anotaciones se aplican a los objetos de plantilla. false

Aparece en:

VersionProbeContainer

VersionProbeContainer define anulaciones a nivel de contenedor para la sonda de versión. Los nombres de los campos y las etiquetas JSON coinciden con corev1.Container para que SMP haga la fusión por nombre.

Campo Tipo Descripción Obligatorio Predeterminado
name string Nombre del contenedor. Si está vacío, el operador lo establece con el nombre del contenedor de la sonda de versión. true version-probe
resources ResourceRequirements Los recursos son los requisitos de recursos de cómputo para el contenedor de la sonda de versión.
Se fusionan en profundidad con los valores predeterminados del operador mediante SMP.
false
securityContext SecurityContext SecurityContext define las opciones de seguridad para el contenedor de la sonda de versión.
Se fusiona en profundidad con los valores predeterminados del operador mediante SMP.
false

Aparece en:

VersionProbeJobSpec

VersionProbeJobSpec define las sobrescrituras a nivel de Job para la sonda de versión.

Campo Tipo Descripción Obligatorio Predeterminado
ttlSecondsAfterFinished integer TTLSecondsAfterFinished limita la vida útil de un Job completado. false
template VersionProbePodTemplate Template describe el pod de Kubernetes que se creará para el Job de la sonda de versión. false

Aparece en:

VersionProbePodSpec

VersionProbePodSpec define anulaciones a nivel de pod para la sonda de versión. Los nombres de los campos y las etiquetas JSON coinciden con corev1.PodSpec para mantener la compatibilidad con strategic merge patch.

Field Type Description Required Default
nodeSelector object (keys:string, values:string) NodeSelector restringe el pod de Kubernetes de la sonda de versión a nodos con etiquetas coincidentes. false
tolerations Toleration array Tolerations para el pod de Kubernetes de la sonda de versión. false
securityContext PodSecurityContext SecurityContext contiene atributos de seguridad a nivel de pod para el pod de Kubernetes de la sonda de versión. false
containers VersionProbeContainer array Anulaciones de contenedores para el pod de Kubernetes de la sonda de versión.
El campo name es opcional; el operador lo completa con el contenedor predeterminado.
Se puede especificar un contenedor adicional con un nombre distinto.
false

Aparece en:

VersionProbePodTemplate

VersionProbePodTemplate describe las personalizaciones del pod de Kubernetes de sonda de versión.

Campo Tipo Descripción Obligatorio Predeterminado
metadata TemplateMeta Consulte la documentación de la API de Kubernetes para conocer los campos de metadata. false
spec VersionProbePodSpec Especificación del comportamiento deseado del pod de Kubernetes de sonda de versión. false

Aparece en:

VersionProbeTemplate

VersionProbeTemplate define sobreescrituras para el Job de detección de versión. La estructura sigue la de batchv1.JobTemplateSpec y expone solo los campos admitidos.

Campo Tipo Descripción Requerido Predeterminado
metadata TemplateMeta Consulta la documentación de la API de Kubernetes para conocer los campos de metadata. false
spec VersionProbeJobSpec Especificación del comportamiento deseado del Job de la sonda de versión. false

Aparece en:

Navigation