Dovecot disco alto io

1

Estamos tendo alguns problemas importantes com o nosso servidor de e-mail, normalmente após uma reinicialização (mas nem sempre), onde o disco io dispara de uma média de 50-100mbps para 200-300mbps.

Eu o reduzi ao dovecot, matando o pombal que traz o uso do disco para o normal imediatamente. Eu diria que talvez seja apenas um dovecot processando um backlog após uma interrupção, já que tivemos uma interrupção por algumas horas ontem, mas isso se resolveu ontem à noite, então voltamos a subir novamente hoje.

Usando o topo, encontrei contas imap específicas que estão causando os problemas. Entrei em contato com os clientes e descobri que todos os clientes io mais altos estão excluindo grandes quantidades de e-mails de suas caixas de entrada.

Obviamente, não podemos impedi-los de fazer isso, mas o aumento do disco io faz com que muitos io wait e os serviços parem de responder, então precisamos de uma maneira de reduzir a pegada io do dovecot. Eu sei que você pode algo agradável para reduzir sua prioridade cpu, existe algo semelhante para a prioridade de disco?

Nossa equipe de gerenciamento de servidores diz que ela é tão boa quanto possível, e precisamos alocar mais recursos para o dovecot, mas eu preferiria descartar a possibilidade de configuração incorreta antes de lançarmos outro servidor nela, apenas para os problemas nos seguem. 300mbps de algumas pessoas excluindo seu e-mail soa um pouco excessivo IMHO.

Abaixo está uma saída da nossa configuração dovecot de dovecot -n . Qualquer ajuda que alguém possa fornecer seria muito apreciada.

Você verá que eu já tentei desativar o fsync de acordo com este artigo: link . Não notei nenhuma melhora considerável. Qualquer sugestão que alguém pudesse fornecer seria muito apreciada.

Edit: Temos um arquivo por usuário, armazenado em / var / spool / mail, então acredito que seja o formato mbox.

# 1.0.7: /etc/dovecot.conf
log_timestamp: %Y-%m-%d %H:%M:%S 
protocols: imap imaps pop3
login_dir: /var/run/dovecot/login
login_executable(default): /usr/libexec/dovecot/imap-login
login_executable(imap): /usr/libexec/dovecot/imap-login
login_executable(pop3): /usr/libexec/dovecot/pop3-login
verbose_proctitle: yes
mail_privileged_group: mail
fsync_disable: yes
mail_executable(default): /usr/libexec/dovecot/imap
mail_executable(imap): /usr/libexec/dovecot/imap
mail_executable(pop3): /usr/libexec/dovecot/pop3
mail_plugin_dir(default): /usr/lib64/dovecot/imap
mail_plugin_dir(imap): /usr/lib64/dovecot/imap
mail_plugin_dir(pop3): /usr/lib64/dovecot/pop3
auth default:
  mechanisms: plain login
  passdb:
    driver: pam
  userdb:
    driver: passwd
  socket:
    type: listen
    client:
      path: /var/spool/postfix/private/auth
      mode: 432
      user: postfix
      group: postfix
    master:
      path: /var/run/dovecot/auth-master
      mode: 384
      user: root
    
por Tom McQuarrie 14.08.2012 / 05:55

1 resposta

1

Você não diz qual formato de caixa de correio está usando.

O Dovecot é legal porque suporta o formato mbox padrão. É simples configurar dessa maneira.

O problema é que o formato mbox padrão é apenas um arquivo grande; uma operação em uma mensagem no meio do arquivo pode causar uma reescrita de todo o segundo semestre.

O Dovecot também suporta o formato Maildir. Isso armazena mensagens uma por arquivo. Isso pode ter problemas também - mas quando você tem usuários com enormes cotas de e-mail é provável que o mal menor.

Pode haver plug-ins dovecot para outros formatos, mas pelo que posso dizer, não há outros formatos de caixa de correio suportados diretamente.

    
por 14.08.2012 / 06:30