Categoria: Uncategorised

Live-restore do dockerd

Apesar de administrar ambiente docker há quase uma década, apenas recentemente descobri que dá pra manter os containers rodando durante um restart do docker daemon, que normalmente acontece após um upgrade por exemplo.

O nome desse recurso é live-restore. Inclusive ele restaura regras de firewall necessárias para acesso à rede do container.

Para ativar é assim:

cat >> /etc/docker/daemon.json <<EOF
{
"live-restore": true
}
EOF
systemctl reload docker

Ou então enviar um sinal SIGHUP (kill -1) ao processo do dockerd.

Mão na roda pra quando faz upgrade dos pacotes, e o docker reinicia o daemon pós-upgrade.
Antes fazia shutdown de todos os containers, mesmo os declarados com restart: always 🤦🏻‍♂️.
Agora não mais, melhorando assim a disponibilidade do serviço.

Por: Hudson Murilo dos Santos
Referências: https://docs.docker.com/config/containers/live-restore/

Monitorar silêncio ou atividade na janela do screen

Outra dica quente pra quem gosta do GNU screen. Pessoal que prefere tmux deve ter recurso similar também.

Às vezes estamos fazendo algum processo temporário mas que não pode parar. Por exemplo, durante esse período, algo vai ficar processando e gerando algum tipo de output de 10 em 10 segundos em algum /var/log/logfile.

Mas se ficar 30 segundos sem gerar output no log é problema e você gostaria de ser notificado a respeito disso.

É bem fácil de sinalizar isso com o GNU screen usando o monitoramento por silêncio na janela.

O atalho para ativá-lo é: C-a _ (ctrl+a+underline)

Esse monitoramento por silêncio vai avisar quando a janela ficou em silêncio por 30 segundos.

Daí um ‘tail -F’ no log desejado vai ficar recebendo os outputs de 10 em 10 segundos.. então o monitoramento não será acusado, mas se ficar 30 segundos em silêncio, ele acusa visualmente na janela na barra de status do screen.

👆🏼Fica com negrito e tarja preta como neste exemplo, janela 4

Existe também o monitoramento normal: C-a M
Este serve pra monitorar por atividade na janela que deveria estar silenciosa.

Enfim, as possibilidades de uso desses recursos são muitas. Depende da criatividade de cada sysadmin.

Por: Hudson Murilo dos Santos

Referências: https://wiki.archlinux.org/title/GNU_Screen
https://www.gnu.org/software/screen/manual/screen.html
https://wiki.archlinux.org/title/tmux

Costuma monitorar logs com tail?

Outra dica quente pro dia-a-dia de quem vive a linha de comando é sobre quando usar tail com parâmetro -F maiúsculo ao invés de -f minúsculo.

O maiúsculo é muito útil nos casos em que é necessário deixar um terminal aberto monitorando manualmente algum log aleatório por vários dias (após alguma mudança importante por exemplo), e esse log costuma ser rotacionado (logrotate.d) fazendo o tail perder acesso ao file descriptor desejado.

Daí o -F faz o mesmo que o -f mas tem o --retry junto pra orientar o tail a seguir tentando abrir aquele arquivo novamente se estiver inacessível.

Se o seu comando perdia acesso ao arquivo, agora não vai perder mais… 😊

#ficaadica