- zabbix-server, (Debian 7) – Servidor Zabbix antigo, onde há o banco de dados e aplicação juntos.
- OBS: Caso você ainda não tenha um zabbix-server instalado clique aqui para criar seu zabbix-server seguindo outro tutorial.
- zabbix-bd, (Debian 7) – Servidor que sera instalado o mysql e receberá o backup dos dados de zabbix-server.
Passo 01 – Fazendo os backups necessários
Para fazer a coisa com segurança iremos fazer o backup do banco de dados e do arquivos de configuração do zabbix-server. Mais antes pare o serviço do zabbix-server, ele só voltara a iniciar quando já tivermos migrado.
Agora devemos enviar o backup do banco para o novo servidor de banco de dados.
service zabbix-server stop
mysqldump -uroot -p zabbix > /root/bkp.database.db
cp /etc/zabbix/zabbix_server.conf /root/
Agora devemos enviar o backup do banco para o novo servidor de banco de dados.
scp -P 2022 /root/bkp.database.db root@ipdoservidormsysql:/tmp/
Passo 02 - Instalando o banco de dados
Vamos instalar o mysql no zabbix-db.
Aptitude update
Aptitude install mysql-server
Será exibido a seguinte tela solicitando a senha de root do mysql. Digite a senha e guarde-a.
Agora vamos configurar o mysql-server para permitir conexões remotas, para que o zabbix-server consiga usa-lo como servidor de banco de dados.
Permitir conexoes remotas no arquivo de configuração do mysql.
vim /etc/mysql/my.cnfProcure por Bind-address = 127.0.0.1, comente esta linha e substitua por bind-address = 0.0.0.0.
#bind-address = 127.0.0.1
bind-address = 0.0.0.0
Restarte o serviço do mysql.
service mysql restartCom o Mysql Server instalado, precisamos criar o banco de dados, dar as devidas permissões para o usuário zabbix e restaurar o backup anteriormente feito no zabbix-server.
mysql -u root -p #Será solicitado a senha que acabamos de criar.
create database zabbix;
use zabbix;
GRANT ALL ON zabbix TO 'zabbix'@'ip-ou-%' IDENTIFIED BY 'password';
OBS: onde tem ip-ou-%, significa que você tem que digitar ali o ip da maquina que terá acesso ao mysql, ou caso queira que qualquer maquina tenha acesso, digite só o %, ficando 'zabbix@%'.
Em /etc/hosts.allow digite a linha abaixo.
mysqld: ip_servidor_mysql
Pra testar se a permissão foi dada corretamente, vamos logar no zabbix remotamente, do servidor zabbix-server execute este comando para se logar remotamente no mysql do zabbix-db.
mysql -uroot -p -h ip_servidor_mysql
Com a conexão feita com sucesso vamos pra frente. Caso não tenha conseguido acessar remotamente, reveja os últimos passos.
Agora vamos restaurar o backup feito em zabbix-server em zabbix-db.
Para isto vá até onde esta o arquivo de backup e execute os comandos para restaurar o banco.
cd /tmp #entre no diretorio onde esta o backup
mysql -u root -p -h localhost zabbix < bkp.database.db #restaure o banco
mysql-u root -p #conecte-se ao mysql
use zabbix; #selecione o banco do zabbix
show tables; # verifique se as tabelas foram criadas.
A parte do banco de dados esta pronto.
Passo 03 - Reconfigurar o zabbix-server
Acesse o servidor zabbix-sever e vamos editar o seu arquivo de configuração principal,
vim /etc/zabbix/zabbix_server.conf
DBHost=ip_servidor_mysql #Descomente e configure com o ip do Mysql Server
DBName=zabbix
DBUser=root
DBPassword=password
Passo 04 - Reconfigurando o Front-End.
Acesse o zabbix pelo brownser, ele deve estar informando que não esta rodando assim como na imagem abaixo.
Agora você deve ir na aba administrativo e depois em Installation, como na figura abaixo.
Esta pagina abrira para que você comece as configurações.
Clique em Next
Nesta tela confira as configurações do PHP e clique em Next.
Aqui você deve configurar no campo Database Host com o ip do servidor mysql, o nome da base de dados, usuário e senha, caso tenham sido alterados. Clique em Next.
Nesta ultima tela sera informado que o arquivo de configuração do PHP foi criado, e então voce pode finalizar. Apos isso inicie o serviço do zabbix-server e veja que o servidor esta no ar novamente.
service zabbix-server start
Pronto, o zabbix server foi re-estabelecido, de forma que o banco de dados esta sendo mantido pelo servidor zabbix-db enquanto o serviço em si esta rodando no zabbix-server.
Espero ter ajudado!
Muito Obrigado e até a Proxima.
Referencias:
http://www.vivaolinux.com.br/dica/Configurando-acesso-remoto-em-servidores-MySQL/
https://www.zabbix.com/documentation/2.4/pt/manual
https://dev.mysql.com/doc/refman/5.0/en/error-lost-connection.html
Otimo Post Marckson Junior!! Vc é fera.
ResponderExcluirObrigado, (Da Colômbia)
ResponderExcluirAlejandro Gomez E
Bom dia eu estou no processo de migração do bando de dados do Zabbix 3.0 para um servidor separado.
ResponderExcluirJá fiz o novo banco, fiz dump do banco antigo e restaurei no novo, e estou com o novo banco pronto para receber a conexão do Zabbix.
Porém, a opção instalação que existia no Zabbix 2.4 não existe no 3.0. Gostaria de saber como faço para reconfigurar a conexão ao banco?
http://localhost/zabbix/setup.php
ExcluirBom dia Marckson,
ResponderExcluirEsta era a informação que faltava para separar o frontend do servidor de banco de dados. Muito obrigado. Agora vou realizar a atualização da versão 2.4 para 3.0.
Mark, não estou conseguindo chamar http://localhost/zabbix/setup.php.
ResponderExcluirpoderia me ajudar, por favor?
Fiz esse trabalho no zabbix 3.2 aparentemente tudo normal, mas não está atualizando as informações em tela. E quando clico em Administration > Queue exibe a mensagem: CANNOT DISPLAY ITEM QUEUE
ResponderExcluirDETAILS PERMISSION DENIED
Muuuuuuuuuito obrigado amigo, que post radical continue com essa vontade de compartilhar seu conhecimento, assim como eu, você ajuda muitos juniors de TI. Grato, ótimo post!!!!!!!!!!
ResponderExcluir