Migrar usuários entre servidores do zimbra.
Pessoal, em março de 2016, me deparei com um novo grande desafio na minha carreira. Me transformei em administrador de correio zimbra em uma grande instituição do governo brasileiro.
O ambiente não estava com a saúde em dia, e um dos problemas encontrados foi no servidor do zimbra onde fica guardado as caixas(mailbox). Para solucionar o problema da forma mais transparente possível, migrando as caixas para um servidor saudável. Criei o script em questão:
É isso aí, o script pode ser melhorado bastante, com entradas para o script mesmo já retirar os usuários do servidor.
Lembrando que em caso de ambiente do zimbra divido em vários servidores. O comando para gerar as contas, deve ser executado direto no servidor LDAP.
O ambiente não estava com a saúde em dia, e um dos problemas encontrados foi no servidor do zimbra onde fica guardado as caixas(mailbox). Para solucionar o problema da forma mais transparente possível, migrando as caixas para um servidor saudável. Criei o script em questão:
#!/bin/bash ## Script de migracao do dos usuários entre servidores correio1 e correio2. # Gerar arquivo com as contas que contem as contas dos usuarios migrados # Como gerar: # /opt/zimbra/bin/zmprov sa zimbraMailHost=correio2.teste.com.br > usuarios_correio2.txt # Criado por diogo.falcomer@gmail.com # Ultima modificacao 28/06/2016 # Pasta home HOME="/opt/MIGRACAO" # Envs - Header RUN_ZMPROV="/opt/zimbra/bin/zmprov" RUN_ZMMAILBOX="/opt/zimbra/bin/zmmailbox" # Servidor que irá receber as caixas. SRV_MIGRACAO="correio1.
teste.com
.br" # Trocar o de usuários que serão migrados arquivo na variavel: MAILBOXS="/opt/MIGRACAO/usuarios_correio2.txt" # Ordenando contas mv ${MAILBOXS} /tmp/temp_accounts_bkp cat /tmp/temp_accounts_bkp |sort |uniq > ${MAILBOXS} rm -f /tmp/temp_accounts_bkp # Inicia a migração for ACCOUNT in $(cat ${MAILBOXS}) do ## Faz backup da conta $RUN_ZMMAILBOX -z -m $ACCOUNT getRestURL "//?fmt=tgz" > ${HOME}/${ACCOUNT}.tgz sleep 20 ## Marca a conta em modo de manutencao $RUN_ZMPROV ma $ACCOUNT zimbraAccountSTATUS maintenance sleep 10 ## Move a conta para o Servidor novo. Via LDAP. $RUN_ZMPROV ma $ACCOUNT zimbraMailHost $SRV_MIGRACAO sleep 20 ## Ativa a conta para restauarar o backup $RUN_ZMPROV ma $ACCOUNT zimbraAccountSTATUS active sleep 30 ## Restaura o Backup da conta no Servidor Novo. $RUN_ZMMAILBOX -z -m $ACCOUNT postRestURL "//?fmt=tgz&resolve=reset" ${HOME}/$ACCOUNT.tgz sleep 20 done
É isso aí, o script pode ser melhorado bastante, com entradas para o script mesmo já retirar os usuários do servidor.
Lembrando que em caso de ambiente do zimbra divido em vários servidores. O comando para gerar as contas, deve ser executado direto no servidor LDAP.
Comentários
Postar um comentário