Saltar al contenido

cambiar el período de retención de kafka durante el tiempo de ejecución

Después de de esta extensa selección de datos pudimos resolver esta problema que pueden tener ciertos usuarios. Te brindamos la solución y deseamos serte de mucha ayuda.

log.retention.hours es una propiedad de un intermediario que se utiliza como valor predeterminado cuando se crea un tema. Cuando cambia las configuraciones del tema que se está ejecutando actualmente usando kafka-topics.shdebe especificar una propiedad a nivel de tema.

Una propiedad a nivel de tema para el tiempo de retención de registros es retention.ms.

De la configuración a nivel de tema en la documentación de Kafka 0.8.1:

  • Propiedad: retención.ms
  • Defecto: 7 días
  • Propiedad predeterminada del servidor: registro.retención.minutos
  • Descripción: esta configuración controla el tiempo máximo que retendremos un registro antes de descartar los segmentos de registro antiguos para liberar espacio si estamos utilizando la política de retención de “eliminación”. Esto representa un SLA sobre la rapidez con la que los consumidores deben leer sus datos.

Entonces el comando correcto depende de la versión. Hasta 0.8.2 (aunque los documentos aún muestran su uso hasta 0.10.1) use kafka-topics.sh --alter y después de 0.10.2 (o quizás desde 0.9.0 en adelante) use kafka-configs.sh --alter

$ bin/kafka-topics.sh --zookeeper zk.yoursite.com --alter --topic as-access --config retention.ms=86400000
 

Puede verificar si la configuración se aplica correctamente con el siguiente comando.

$ bin/kafka-topics.sh --describe --zookeeper zk.yoursite.com --topic as-access

Entonces verás algo como a continuación.

Topic:as-access  PartitionCount:3  ReplicationFactor:3  Configs:retention.ms=86400000

La siguiente es la forma correcta de modificar la configuración del tema a partir de Kafka 0.10.2.0:

bin/kafka-configs.sh --zookeeper  --alter --entity-type topics --entity-name test_topic --add-config retention.ms=86400000

Las operaciones de modificación de configuración de tema han quedado obsoletas para bin/kafka-topics.sh.

WARNING: Altering topic configuration from this script has been deprecated and may be removed in future releases.
     Going forward, please use kafka-configs.sh for this functionality`

La configuración correcta key es retention.ms

$ bin/kafka-topics.sh --zookeeper zk.prod.yoursite.com --alter --topic as-access --config retention.ms=86400000
Updated config for topic "my-topic".

valoraciones y reseñas

Si te ha resultado de ayuda este artículo, sería de mucha ayuda si lo compartieras con otros desarrolladores de esta manera contrubuyes a difundir este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags :

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *