Ao usar mais de um servidor para o Mailman, todos os servidores precisam ter acesso aos diretórios de filas no armazenamento compartilhado. É isso.
Entendendo para onde as mensagens moderadas são
- Se uma mensagem for retida para moderação, ela será movida para $ DATA_DIR e o ID da mensagem será anexado a $ LIST_DATA_DIR / listname / pending.pck.
- A interface da web do Mailman procura no pending.pck para localizar mensagens mantidas para moderação. Quando um moderador aprova a mensagem retida, ela é movida para a pasta $ INQUEUE_DIR.
Quais dados precisam ser compartilhados?
Isso é o que eu recomendo se você tiver um servidor separado que manipule a interface web do Mailman.
DEVE estar em armazenamento compartilhado
-
queue_dir,inqueue_dir,outqueue_dir,cmdqueue_dir,bouncequeue_dir,newsqueue_dir,archqueue_dir,shuntqueue_dir,virginqueue_dir,badqueue_dir,retryqueue_dir,maildir_dirSeus arquivos de filas precisam estar acessíveis por qualquer servidor que execute tarefas do Mailman, incluindo o servidor da Web frontend. -
DATA_DIR,LIST_DATA_DIRAlém das filas de e-mail, você também precisa compartilhar todos os arquivos de configuração de lista e arquivos de mensagens retidos. -
PUBLIC_ARCHIVE_FILE_DIR,PRIVATE_ARCHIVE_FILE_DIRSe você estiver usando arquivos de lista, também precisará compartilhar os diretórios de arquivo.
DEVE estar no armazenamento compartilhado
-
LOCK_DIR,PID_DIR,PIDFILENão tenho certeza, mas parece que os bloqueios e pidfiles devem estar localizados no armazenamento compartilhado para que, caso algo ruim aconteça com o servidor qrunner, será evidente que os processos terminaram anormalmente. -
SITE_PW_FILE,LISTCREATOR_PW_FILEVocê provavelmente deseja que seus arquivos de senha estejam no armazenamento compartilhado para que você possa ter certeza de que a senha da sua lista mestra funciona, independentemente do servidor em que estiver. -
CONFIG_DIRSe você estiver usandoMTA=Postfix, o Mailman criará automaticamente o arquivo de aliases em CONFIG_DIR. Como qualquer máquina com o Mailman pode ser usada para criar ou excluir listas, cada máquina também deve poder atualizar um arquivo aliases compartilhado corretamente. (Caveat Emptor: Às vezes você quer configurar o Mailman de maneira um pouco diferente em cada máquina, o que pode ser difícil com um CONFIG_DIR compartilhado).
PODE estar no armazenamento compartilhado
-
LOG_DIRDependendo de suas preferências, você pode manter esses diretórios locais ou colocá-los no armazenamento compartilhado. Eu gosto de ter todos os meus logs em um local central que está sendo submetido a backup, para que eu ainda tenha logs antigos disponíveis após a migração dos processos para um novo servidor. -
TEMPLATE_DIRSe você personalizou seus modelos do Mailman (por exemplo, mensagens devolvidas), provavelmente desejará tê-los em armazenamento compartilhado também. -
SPAM_DIREu não sei para que SPAM_DIR é realmente usado, mas é recomendado que todos os arquivos variáveis estejam em armazenamento compartilhado, então estou incluindo isso aqui.
Somente armazenamento local
-
WRAPPER_DIR,BIN_DIR,SCRIPTS_DIR,MESSAGES_DIRÉ uma boa idéia manter binários e scripts locais, para que você possa aproveitar os pacotes fornecidos pelo sistema operacional para atualizações sem se preocupar em manter os binários compartilhados em sincronizar. O Mailman parece ser muito específico sobre ter exatamente a mesma versão em execução em qualquer servidor envolvido com o armazenamento compartilhado.
(Editado em 2013-09-04) A seguinte orientação foi fornecida por Mark Sapiro na lista de usuários do Mailman-Users.
My advice would be for standard GNU Mailman to share all the mutable data which is everything in var_prefix which is all of the directories archives/, data/, lists/, locks/, logs/, qfiles/ and spam/, however you have a Scientific Linux (Red Hat derivative) package, so see the FAQ at http://wiki.list.org/x/KYCB for how these map to your install.
There is a FAQ at http://wiki.list.org/x/wgB0 that addresses this somewhat. It might need some additions. Do see all the links.
(Editado em 2013-09-04) Atualmente, o diretório de configuração deve ser compartilhado, não local.