evita processos zumbis ao usar em

1

Estou usando o para agendar um script em um contêiner Docker baseado em Centos.

por exemplo. echo "bash /path/to/script.sh" | at now + 1 minute

Funciona principalmente como esperado, com a exceção de que resulta em um processo zumbi a cada minuto. Eu estou supondo que o comportamento está relacionado a esta linha nos documentos:

  1. O job at-job é executado em uma chamada separada do shell, executando em um grupo de processos separado sem terminal de controle, exceto que as variáveis de ambiente, diretório de trabalho atual, máscara de criação de arquivo (consulte umask (1)) e limites de recursos do sistema.

Eu vi e testei sugestões de Remover um processo de zumbi de a tabela de processos sem sucesso.

Posso fazer o zumbi ps ir embora ou existe uma maneira alternativa de fazer isso que não acabaria com o mesmo resultado zumbi ps?

EDIT: conteúdo de um dos scripts:

#!/bin/bash
exec 1> >(logger -s -t $(basename $0)) 2>&1 
#probe the seed node if this isn't the seed node
# set -ex
[[ 'hostname' =~ -([0-9]+)$ ]] || exit 1
ordinal=${BASH_REMATCH[1]}
#if this is the first node then attempt to probe second until successful
if [[ $ordinal -eq 0 ]]; then
  while ! gluster peer probe {{gluster.service_name}}-1.{{gluster.service_name}}.default.svc.cluster.local; do sleep 2; done
fi
#if this is the second node then probe the first to create the trusted pool
if [[ $ordinal -eq 1 ]]; then
  while ! gluster peer probe {{gluster.service_name}}-0.{{gluster.service_name}}.default.svc.cluster.local; do sleep 2; done
fi
    
por zcourts 03.09.2017 / 01:04

1 resposta

0

Eu esqueci de postar de volta que eu trabalhei com isso apenas usando o cron.

(crontab -l 2>/dev/null; echo "*/1 * * * * /path/to/job -with args") | crontab -

Veja o link

Note que, se você estiver executando no Docker, precisará iniciar o crond.

    
por 20.11.2017 / 09:21

Tags