O que é o Monit e por que usá-lo no Symfony?
O Monit é uma aplicação de monitoramento de sistema que é capaz de realizar monitoramentos de rede, sistemas de arquivos e processos de sistema. No Symfony, o Monit é utilizado para monitorar processos do servidor web, como o Apache e o PHP-FPM, e para garantir que esses serviços estejam sempre em funcionamento. Além disso, o Monit oferece uma interface de usuário intuitiva para visualizar e gerenciar esses serviços.
Como instalar o Monit?
Para instalar o Monit, basta digitar o comando abaixo no terminal:
sudo apt-get install monit
Após instalar o Monit, você pode verificar a versão instalada usando o seguinte comando:
monit --version
Os arquivos de configuração do Monit ficam em /etc/monit/ e podem ser editados com um editor de texto para personalizar a configuração do sistema de acordo com suas necessidades.
Como configurar o Monit?
Para configurar o Monit, é necessário criar um arquivo de configuração em /etc/monit/ com as configurações desejadas. Um exemplo básico de configuração para monitoramento do Apache pode ser visto abaixo:
check process apache with pidfile /var/run/apache2/apache2.pid
start program = "/etc/init.d/apache2 start" with timeout 60 seconds
stop program = "/etc/init.d/apache2 stop"
if failed host 127.0.0.1 port 80 protocol http
then restart
Nesse exemplo, o Monit monitora o Apache verificando o arquivo PID para garantir que o Apache esteja em execução. Se o processo do Apache falhar, o Monit reinicia o Apache.
Como iniciar o Monit?
Para iniciar o Monit, execute o seguinte comando no terminal:
sudo service monit start
Depois de iniciado, o Monit verifica automaticamente todos os serviços especificados no arquivo de configuração. Se algum serviço não estiver em funcionamento, o Monit tentará reiniciar o serviço automaticamente.
Como monitorar os serviços do Monit?
Para monitorar os serviços do Monit, você pode usar a interface da web fornecida pelo Monit digitando a URL abaixo em seu navegador:
http://localhost:2812
A interface do usuário do Monit permite visualizar o status atual dos serviços monitorados, bem como configurar as opções e configurações.
Como adicionar outros serviços ao Monit?
Para adicionar outros serviços ao Monit, basta criar uma seção para o serviço no arquivo de configuração do Monit em /etc/monit/ e incluir as configurações apropriadas para monitoramento. Por exemplo, para monitorar o PHP-FPM, você pode usar a seguinte configuração:
check process php-fpm with pidfile /var/run/php/php7.3-fpm.pid
start program = "/etc/init.d/php7.3-fpm start" with timeout 60 seconds
stop program = "/etc/init.d/php7.3-fpm stop"
if failed unixsocket /var/run/php/php7.3-fpm.sock then restart
Nesse exemplo, o Monit monitora o processo PHP-FPM e verifica o arquivo PID para garantir que o processo esteja em execução. Se o processo PHP-FPM falhar, o Monit reinicia o processo.
Como configurar notificações?
Para configurar notificações, adicione as configurações de alerta ao arquivo de configuração do Monit. As configurações de alerta definem as ações a serem executadas quando ocorrer um problema no sistema. Por exemplo, para enviar um e-mail quando um serviço falhar, você pode usar a seguinte configuração:
set mailserver smtp.gmail.com port 587
username "example@gmail.com" password "password"
using tlsv1 with timeout 30 seconds
set alert example@gmail.com
check process apache with pidfile /var/run/apache2/apache2.pid
if failed host 127.0.0.1 port 80 protocol http
then alert
Nesse exemplo, o Monit verifica o Apache quanto ao seu status atual e envia um e-mail para example@gmail.com se o Apache falhar.
Como verificar a configuração do Monit?
Para verificar a configuração do Monit, execute o seguinte comando no terminal:
sudo monit -t
Este comando irá verificar o arquivo de configuração do Monit (geralmente em /etc/monit/) para erros e avisos. Se o arquivo de configuração estiver correto, o Monit retornará uma mensagem de confirmação. Senão, o Monit retornará um erro com outros detalhes da falha.
Como parar o Monit?
Para parar o Monit, execute o seguinte comando no terminal:
sudo service monit stop
Depois de parado, o Monit deixará de verificar os serviços definidos no arquivo de configuração.
O que são as checagens de segurança do Monit e como elas funcionam?
As checagens de segurança do Monit são um recurso útil para proteger o sistema dos hackers. As checagens são realizadas periodicamente para detectar brechas ou pontos vulneráveis no sistema, alertando caso haja um problema. Além disso, o Monit pode ser configurado para executar automaticamente uma série de ações, como reiniciar o serviço em caso de problema.
Para definir as checagens de segurança, você deve incluir essas instruções no arquivo de configuração do Monit:
set httpd port 2812 and
use address localhost
allow localhost
allow admin:monit
set ssl {
certificate: "/etc/monit/ssl/cert.crt"
pemfile: "/etc/monit/ssl/cert.key"
cafile: "/etc/monit/ssl/ca.crt"
verify: enable
}
include /etc/monit/conf.d/*
Essas instruções permitem que o Monit execute a checagem de segurança antes de iniciar o serviço.
Por padrão, as checagens de segurança do Monit não estão ativadas. Para ativá-las, você deve editar o arquivo de configuração do Monit e incluir as declarações necessárias.