Monitoramento Servidor · 5 min read · Oct 20, 2025
Monitoramento de Servidor com Munin e Monit no Ubuntu 16.04 LTS (Xenial Xerus)
Este tutorial mostrará como monitorar um servidor Ubuntu 16.04 com Munin e Monit. Munin produz gráficos bonitos sobre quase todos os aspectos do seu servidor, enquanto o Monit verifica a disponibilidade de serviços como Apache, MySQL, Postfix e toma as ações apropriadas, como reiniciar, se encontrar um serviço que não está se comportando como esperado. A combinação dos dois oferece monitoramento completo: gráficos que permitem reconhecer problemas atuais ou futuros e um watchdog que garante a disponibilidade dos serviços monitorados. Este tutorial contém dois capítulos (opcionais) sobre a integração do Munin e Monit no ISPConfig 3.1.
1 Nota Preliminar
O nome do host do nosso sistema é server1.example.com, e temos um site www.example.com nele com o diretório raiz do documento /var/www/www.example.com/web.
Os seguintes passos devem ser realizados como usuário root. Para se tornar usuário root em seu servidor, execute este comando:
sudo -sCertifique-se de que o sistema está atualizado antes de começar a instalar o Munin, execute:
apt-get update
apt-get upgradeO Apache é usado para mostrar as páginas do Munin, o módulo fcgid do apache é necessário para o recurso de zoom do gráfico do Munin. Vou instalar o apache e o módulo libapache2-mod-fcgid com apt.
apt-get -y install apache2 libcgi-fast-perl libapache2-mod-fcgidAtive o módulo fcgid no apache.
a2enmod fcgid2 Instalar e Configurar o Munin
Para instalar o Munin no Ubuntu 16.04, execute os comandos abaixo:
apt-get -y install munin munin-node munin-plugins-extraQuando o servidor estiver executando MySQL ou MariaDB, ative alguns plugins extras do Munin para monitorar o MySQL:
cd /etc/munin/plugins
ln -s /usr/share/munin/plugins/mysql_ mysql_
ln -s /usr/share/munin/plugins/mysql_bytes mysql_bytes
ln -s /usr/share/munin/plugins/mysql_queries mysql_queries
ln -s /usr/share/munin/plugins/mysql_slowqueries mysql_slowqueries
ln -s /usr/share/munin/plugins/mysql_threads mysql_threadsEm seguida, devemos editar o arquivo de configuração do Munin /etc/munin/munin.conf. Descomente as linhas dbdir, htmldir, logdir, rundir e tmpldir (os valores padrão estão bons). Queremos que o Munin use o nome server1.example.com em vez de localhost.localdomain na saída HTML, portanto, substituímos localhost.localdomain por server1.example.com na seção da árvore de hosts simples. Sem os comentários, o arquivo alterado fica assim:
nano /etc/munin/munin.conf# Exemplo de arquivo de configuração para Munin, gerado por 'make build'
# As próximas três variáveis especificam onde está a localização dos RRD
# bancos de dados, a saída HTML, logs e os arquivos de lock/pid. Todos eles
# devem ser graváveis pelo usuário que executa o munin-cron. Todos eles
# têm valores padrão que você vê aqui.
#
dbdir /var/lib/munin
htmldir /var/cache/munin/www
logdir /var/log/munin
rundir /var/run/munin
# Onde procurar os templates HTML
#
tmpldir /etc/munin/templates
# Onde procurar os arquivos www estáticos
#
#staticdir /etc/munin/static
# arquivos cgi temporários estão aqui. note que deve ser gravável pelo
# usuário cgi (geralmente ninguém ou httpd).
#
# cgitmpdir /var/lib/munin/cgi-tmp
# (Exatamente um) diretório para incluir todos os arquivos.
includedir /etc/munin/munin-conf.d
[...]
# uma árvore de hosts simples
[server1.example.com]
address 127.0.0.1
use_node_name yes
[...] Devemos encontrar o arquivo de configuração do Apache para o Munin /etc/munin/apache.conf - ele define um alias chamado munin para o diretório de saída HTML do munin /var/cache/munin/www, o que significa que podemos acessar o munin de todos os sites neste servidor usando o caminho relativo /munin (por exemplo, http://www.example.com/munin).
Agora vamos editar o arquivo munin.conf para o Apache para permitir acesso de endereços IP externos. Crie um backup do arquivo original:
mv /etc/munin/apache24.conf /etc/munin/apache24.conf_bakAbra o novo arquivo com um editor:
nano /etc/munin/apache24.confE cole o conteúdo abaixo:
Alias /munin /var/cache/munin/www
# Exigir local
Require all granted
Options FollowSymLinks SymLinksIfOwnerMatch
Options None
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
# Exigir local
Require all granted
Options FollowSymLinks SymLinksIfOwnerMatch
SetHandler fcgid-script
SetHandler cgi-script
Reinicie o Apache:
service apache2 restartEm seguida, reinicie o Munin:
service munin-node restartAgora aguarde alguns minutos para que o Munin possa produzir sua primeira saída e, em seguida, vá para http://www.example.com/munin/ em seu navegador, e você verá as primeiras estatísticas:

(Isto é apenas um pequeno trecho dos muitos gráficos que o munin produz…)
3 Proteger por Senha o Diretório de Saída do Munin (Opcional, mas altamente recomendado)
Agora é uma boa ideia proteger por senha o diretório de saída do munin, a menos que você queira que todos possam ver cada pequena estatística sobre seu servidor.
Para fazer isso, devemos criar o arquivo de senha /etc/munin/munin-htpasswd. Queremos fazer login com o nome de usuário admin, então fazemos isso:
htpasswd -c /etc/munin/munin-htpasswd adminDigite uma senha para admin. Em seguida, abra /etc/munin/apache.conf novamente…
nano /etc/munin/apache24.conf… comente “Require all granted” e adicione as linhas que marquei em vermelho:
Alias /munin /var/cache/munin/www
# Exigir local
# Require all granted
AuthUserFile /etc/munin/munin-htpasswd
AuthName "Munin"
AuthType Basic
Require valid-user
Options None
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
# Exigir local
# Require all granted
AuthUserFile /etc/munin/munin-htpasswd
AuthName "Munin"
AuthType Basic
Require valid-user
SetHandler fcgid-script
SetHandler cgi-script
Em seguida, reinicie o Apache:
service apache2 restart4 Habilitar Módulos Adicionais no Munin
O comando do Munin “munin-node-configure –suggest” pode ser usado para obter recomendações para módulos adicionais do Munin que podem ser habilitados no servidor. Execute:
munin-node-configure --suggestA saída deve ser semelhante a isto:

A coluna “usado” mostra se um módulo está habilitado, a coluna “Sugestões” mostra se o servidor executa um serviço que pode ser monitorado por este módulo. Crie um symlink para o módulo em /etc/munin/plugins para habilitá-lo.
Aqui, vou habilitar os módulos apache_* como exemplo:
cd /etc/munin/plugins
ln -s /usr/share/munin/plugins/apache_accesses
ln -s /usr/share/munin/plugins/apache_processes
ln -s /usr/share/munin/plugins/apache_volumeReinicie o Munin para carregar a nova configuração.
service munin-node restart5 Configurar o Munin no ISPConfig (opcional)
O Painel de Controle de Hospedagem ISPConfig tem uma opção para mostrar dados do Munin dentro do módulo Monitor do ISPConfig. Os dados do Munin são carregados em um iframe, como a maioria dos navegadores bloqueia conteúdo a ser carregado de http dentro de um site https, teremos que encontrar uma maneira de acessar as estatísticas do Munin via SSL. A maneira mais fácil é usar o vhost do ISPConfig habilitado para SSL para isso, criando um symlink dentro do diretório web do ISPConfig para o diretório de dados www do Munin.
ln -s /var/cache/munin/www /usr/local/ispconfig/interface/web/muninAgora podemos acessar o Munin em um navegador com https://server1.example.com:8080/munin através do vhost apache do ISPConfig.
O próximo passo é adicionar a configuração no ISPConfig.
Faça login no ISPConfig como usuário Administrador (admin) e vá para Sistema > Configuração do servidor, preencha a URL, nome de usuário e senha para o Munin conforme mostrado abaixo.

Certifique-se de usar https:// e a porta 8080 na URL do munin.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.