Como amenizar o impacto do cpbackup no cpanel quando usa o Rsync

Standard

Das coisas que acho interessante no cpanel é a flexibilidade com que as coisas operam.
O Cpanel em si não é um problema, porém, vamos analisar um caso aonde o horário comercial começou e o nosso backup ainda está moendo, moendo e moendo… no momento em que o rsync começa a trabalhar uma coisa que arrebenta bastante é justamente quando ele inicia e chama as fg -rlptD, isso faz com que o I/O fique piradoooo.

Uma forma de cortar um pouco o peso desse i/o é indo no arquivo cpbackup (/usr/local/cpanel/scripts/cpbackup) e acrescentar o recurso de banda de i/o ao rsync, isso vai amenizar uns 50% do peso do backup.

Uma forma simples que aplico nos servidores que gerencio e roda de forma bem bacana é a seguinte:

Localizando a linha my $rsyncopts = ‘-rlptD’; acrescente e deixe assim:

my $rsyncopts = ‘-rlptD –bwlimit=7000’;

 

Isso vai fazer com que o rsync trafegue no disco um peso de 7mbps, apesar de um pouco lento, caso alguns sites necessitem de leitura e escrita de disco terão uma boa folga para trabalharem sob leveza.

O valor da flag bwlimit é medida em KBPS, se você quiser colocar mais ou menos é fácil, mas eu deixo esse valor baseado na resposta do hdparm (hdparm -tT /dev/sda ou sdX aonde X é a letra do seu disco), o hdparm além de confirmar se o motor do disco está bom ainda te dá uma resposta de potência de leitura e escrita.

ps: Algo que faço por minha conta e risco é chattr +ai /usr/local/cpanel/scripts/cpbackup para bloquear o arquivo, mas não é bom em detrimento de mudanças constantes do cpanel (isso é coisa minha, mas se não fizer, na update seguinte ele sobrescreverá este arquivo :'(  ).

Abração pessoALL ;).

Roundcube causando Overload no Cpanel, como resolver?

Standard

É bem verdade que o vilão da história não é o roundcube e sim o mysql que causam overload. Mysql tem uma regra padrão de cada query esperar a outra terminar, por isso, imagine 500 domínios acessando o roundcube e fazendo a festa?

É possível sanar sim e de maneira tranquila o overload.

O que fazer?

Entre como root no seu servidor whm/cpanel e rode:

/scripts/convert_roundcube_mysql2sqlite

 

Se por ventura rolar algum erro faça o procedimento forçando-o (update do roundcube):

 

/usr/local/cpanel/bin/update-roundcube-sqlite –force

 

Outra coisa MUITO importante:

FAÇA UM DUMP DA BASE DE DADOS DO ROUNDCUBE, isso vai garantir que você tenha qualquer BD para uma possível volta ao mysql (acho BEM difícil, lol)

Para saber se o SQLITE é padrão no mysql use:

grep roundcube_db /var/cpanel/cpanel.config

Abraços e espero ter ajudado.

 

 

/usr/sbin/repquota -auv highest load 100% cpu usage (load) How to solve (COMO RESOLVER)

Standard

Essa dica SANA o problema junto ao processo /usr/sbin/repquota -auv, o qual o cpanel o executa sozinho, do nada (e como quem quer nada), lol, e o pior, não adianta dar killall, kill -9, kill np que ele não encerra, isto é fato!!! Vamos parar de preencher a linguiça e sanar o negócio?

Bem, alguns passos podem ser seguidos para sanar, digamos que irei colocar do nível mais simples ao mais curioso de todos, ok?

Tente o seguinte [como root]:

rm /home/quota.group
rm /home/quota.user

/scripts/fixquotas

Se o processo ainda insistir em ficar como louco checa se seu disco está operando em ready only, uma forma de tentar isto é fazer assim:

touch /home/qualquercoisa e em seguida digitar stat /home/qualquercoisa, se mostrar somente leitura é hora de um reboot (e de preferência um fsck por parte do IDC).

Outro ponto extra é você executar o upcp –force e ver se o processo inicia, caso não, observe na hora (normalmente madrugada) se o processo executa e em seguida opera com o repquota, se isso ocorrer realmente é o versionamento ferrado, mude o estilo de update e faça upcp –force (normalmente release ou stable são os mais recomendados, troque um pelo outro e lembre-se de proteger com chattr os arquivos que lhe são importantes e o cpanel pode os sobrescrever (customizações, por exemplo, em temas do cpanel)).

Vamos finalizar com a dica mais extra?

lsattr /*.user

Se exibir proteções do tipo i–A, meu amigo, tira essa praga daí —-> chattr -iA /*.user

Com isso rode o comando na mão e veja que glorioso.

Se a glória não ocorrer você precisara aprofundar as coisas:

1. Identificar que partições estão usando sistema de quotas,
================
root@appunixlabs [~]# cat /etc/fstab | grep quota
LABEL=/ / ext3 defaults,usrquota 1 1
LABEL=/home /home ext3 defaults,usrquota 1 2
LABEL=/usr /usr ext3 defaults,usrquota 1 2
LABEL=/var /var ext3 defaults,usrquota 1 2
================

2. Reiniciar o Servidor e entrar em Single mode.

3. Rodar um fsck para cada partição (modo forçado)-> fsck -f /dev/sdX#

4. Recriar o sistema de journaling para cada partição. (tune2fs -O ^has_journal /dev/sdX#;tune2fs -O has_journal /dev/sdX#)

5. Rodar um fsck PADRÃO para cada partição.

6. rodar o comando /scripts/fixquotas

7. Reiniciar o sistema.

Fonte:
http://www.littleoak.com.br/2011/08/01/usrsbinrepquota-auv-consumindo-toda-cpu-100-overload-cpanel/ (meu velho blog)