Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

340
Vistas
¿Cómo notificar a la aplicación sobre el archivo de configuración actualizado en kubernetes?

Al tener una actualización del mapa de configuración, ¿cómo activar automáticamente la recarga de parámetros por parte de la aplicación? La aplicación usa señales POSIX para eso.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Dependiendo de cómo esté consumiendo los valores del mapa de configuración, puede haber dos formas de volver a cargar las actualizaciones del mapa de configuración en un pod en ejecución.

  • Si está consumiendo las configuraciones como variables de entorno, puede escribir un controlador, que observa las actualizaciones en las configuraciones y reinicia sus pods con una nueva configuración cada vez que cambia la configuración.

  • Si está consumiendo el mapa de configuración a través de volúmenes, puede observar los cambios en los archivos y notificarlos a su proceso en el contenedor y manejar la actualización en la aplicación. Consulte https://github.com/jimmidyson/configmap-reload por ejemplo.

over 4 years ago · Santiago Trujillo Denunciar

0

Hay buenas soluciones mencionadas aquí, pero traté de encontrar una solución que se pudiera hacer sin modificar las canalizaciones de implementación existentes, etc. Aquí hay un ejemplo de un Filebeat Daemonset de un gráfico de Helm que se recarga cuando cambia la configuración de filebeat. El enfoque no es nuevo: use la sonda de vida para activar una recarga del pod desde dentro del propio pod . postStart calcula una suma md5 del directorio configmap; la sonda de actividad lo comprueba. Eso es todo.

Los '...' son solo para cortar la cruft. Puede ver que el archivo filebeat.yml se monta directamente en /etc y lo utiliza el mismo filebeat. El mapa de configuración se vuelve a montar, específicamente con el fin de observar los cambios en el contenido del mapa de configuración.

Una vez que se edita el mapa de configuración (o se modifica de otro modo), toma algún tiempo antes de que el módulo se reinicie realmente. Puedes ajustar todo eso por separado.

 #apiVersion: apps/v1 apiVersion: extensions/v1beta1 kind: DaemonSet metadata: name: ...-filebeat ... containers: - name: ...-filebeat image: "{{ .Values.filebeat.image.url }}:{{ .Values.filebeat.image.version }}" imagePullPolicy: "{{ .Values.filebeat.image.pullPolicy }}" command: [ "filebeat" ] args: [ "-c", "/etc/filebeat-config/filebeat.yml", "-e" ] env: ... resources: ... lifecycle: postStart: exec: command: ["sh", "-c", "ls -LRih /etc/filebeat-config | md5sum >> /tmp/filebeat-config-md5.txt"] livenessProbe: exec: # Further commands can be strung to the statement eg calls with curl command: - sh - -c - > x=$(cat /tmp/filebeat-config-md5.txt); y=$(ls -LRih /etc/filebeat-config | md5sum); if [ "$x" != "$y" ]; then exit 1; fi initialDelaySeconds: 60 periodSeconds: 60 volumeMounts: - name: filebeat-config mountPath: /etc/filebeat-config readOnly: true ....
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda