Backups noturnos e desempenho do servidor

1

Em um determinado momento, executamos alguns scripts de backup para backup:

  • código / arquivos
  • bancos de dados
  • outros arquivos importantes no servidor

Durante esse tempo, os sites no servidor trabalham com tempos limites e problemas de conexão com o banco de dados.

Então, eu imagino que estou fazendo isso errado. Qual é a maneira de fazer backups noturnos sem afetar o desempenho dos sites no servidor?

OS: Centos aplicações: MySQL, Rsync

Os backups são para um servidor remoto.

    
por David 11.01.2012 / 12:21

2 respostas

2

Por causa da operação de backup, há disputa por disco e CPU também, talvez por recursos de rede, portanto, seu site não é responsivo. Para evitar isso, você terá que reduzir as prioridades do io e cpu das operações de backup para que seu site possa funcionar normalmente.

Você pode usar isso antes de invocar seu script de backup.

root@x:~# bash
root@x:~# echo $BASHPID
6576

A variável BASHID é o PID da sessão bash atual

root@x:~# ionice -c 2 -n 7 -p $BASHPID

Isso reduzirá a prioridade do disco do seu shell atual

-c = classe (0 nenhum, 1 tempo real, 2 melhor esforço, 3 ocioso)

-n = prioridade (0-7, 0 é a prioridade mais alta)

root@x:~# renice  +10 -p  $BASHPID

Isso reduzirá a prioridade de agendamento de cpu do seu shell atual (-19 é a prioridade máxima e 20 é a prioridade mínima)

root@x:~# ./backup-script

Agora, a partir daqui, você pode invocar seu script de backup. Como os processos filhos herdam as prioridades de cpu e io do pai, o (s) seu (s) processo (s) de script de backup será (ão) executado (s) com prioridades inferiores de io, cpu e, portanto, seus processos de servidor terão precedência sobre o backup.

Caso você esteja usando um cron job, você pode colocar todos os comandos acima em um arquivo, chmod para permissões x e adicionar esse arquivo ao cron.

Caso a rede seja um gargalo, talvez seja necessário usar "tc" para classificar o tráfego de backup e limitar a taxa. Você pode ler sobre limitação de taxa aqui. link

    
por 11.01.2012 / 13:00
1

É difícil responder sem saber qual sistema operacional, aplicativos, sistemas de arquivos e mídia de backup estão envolvidos.

Sem nada disso disponível, minha resposta é: rsync

    
por 11.01.2012 / 12:26