teste longo inteligente - qual é o impacto no desempenho do servidor ocupado?

2

Eu tenho um servidor ocupado com uma configuração RAID 1. O aplicativo (executado em PHP) é muito intensivo em leitura / gravação no banco de dados (MariaDB).

Um cronjob executa o teste smartctl curto todos os dias e verifica a saída de smartctl -H e mdadm -D .

Eu gostaria de fazer um longo teste às vezes, mas estou preocupado com o impacto no desempenho dele. Eu li que pode levar várias horas para ser concluído. Se o desempenho do servidor se degradar durante a execução, meus usuários serão afetados por mais de cinco horas.

Então, algumas perguntas aqui:

1) Os testes longos e inteligentes geralmente afetam o desempenho que pode ser significativo para os usuários?

2) Como eu tenho RAID 1 e faço testes curtos, testes longos ainda são necessários?

3) Existe uma maneira de parar um teste longo se eu achar que está causando problemas no desempenho do servidor?

    
por Nuno 12.05.2017 / 22:32

1 resposta

1
  1. Depende. (muhahaha) Em que? Quanto seu aplicativo usa o disco e quanto cache seu aplicativo pode aproveitar. Não há mágica aqui - se a unidade está sendo testada, ela não pode servir na mesma velocidade máxima e baixa latência que quando não está. No entanto, se seus requisitos de latência mínima forem menores que o impacto dos testes, isso será uma lavagem em termos de impacto no aplicativo.
  2. Provavelmente não. As empresas de armazenamento Big Enterprise (EMC, IBM, NetApp, etc.) substituem as unidades com base em M (ean) T (ime) B (entre) F (euras), não apenas esperando o firmware da unidade relatar um problema. Os testes curtos testam tudo o que provavelmente falhará primeiro. Os testes longos fazem os mesmos testes que os testes curtos, exceto que eles não têm um limite de tempo. Basta supor que todas as unidades falharão, mas sua probabilidade é maior após o término da garantia.
  3. Sim, desde que a unidade ofereça suporte à coleta off-line (ou "suspensão").

Na página de manual 'smartctl (8)':

       -X, --abort
              Aborts  non-captive  SMART  Self  Tests.  Note that this command
              will abort the Offline Immediate Test routine only if your  disk
              has the "Abort Offline collection upon new command" capability.

(Eu acho que você também pode abortar se vir "Suspender coleção offline após novo comando"; acho que a página man precisa ser atualizada.) Você pode verificar essa capacidade por meio de:

smartctl -x <device>
    
por 23.05.2017 / 01:45