Arquivo da tag: Web Server

Monitorar NGINX com New Relic

Para quem ainda não conhece a New Relic é uma solução para monitorar a performance de aplicativos web e mobile em tempo real, além de monitorar aplicações, também é possível monitorar a infraestrutura (Web Server, Banco de Dados, Sistema Operacional, etc), a conta free é uma excelente alternativa para quem não quer manter um servidor de monitoração (nagios, zabbix, munin, etc), com ela é possível ter uma monitoração básica e suficiente para aplicações de baixa complexidade.

Uso a ferramenta a algum tempo para projetos pessoais, e só agora comecei a dar uma olhada nos plugins que a solução oferece. Neste post vou explicar como configurar o plugin para o NGINX no Ubuntu 16.04 LTS.

Pre-requisitos

  1. Repositório da New Relic instalado;
  2. Agente padrão instalado (newrelic-sysmond);

Instalando e configurado o plugin

~# sudo apt-get install nginx-nr-agent

Edite o arquivo de configuração plugin

~# sudo vim /etc/nginx-nr-agent/nginx-nr-agent.ini

É necessário fazer alguns ajustes para ativar a coleta, localize a linha:

newrelic_license_key=YOUR_LICENSE_KEY_HERE

Substitua pela sua License Key, exemplo:

newrelic_license_key=99999ffff000000ddddd222222

Configure a fonte de onde o plugin vai colegar os dados

[source1] 
name=exemplo.com.br 
url=http://www.exemplo.com/nginx_status

Ative a /status do NGINX, e dali que o plugin vai coletar os dados:

# Server status
 location = /nginx_status {
      stub_status on;
      allow 127.0.0.1;
      allow 123.132.125.125;
      deny all;
 }

Altere o IP 123.132.125.125 para o IP público do servidor para que o plugin consiga fazer coleta

Reinicie os serviços envolvidos

~# sudo service newrelic-sysmond restart 
~# sudo nginx restart 
~# sudo service nginx-nr-agent restart

Pronto! Caso as coletas não apareçam no dashboard, os logs ficam em:

~# tail -f /var/log/nginx-nr-agent.log

As coletas ficam no aba plugin

Plugin NGINX Newrelic

Plugin NGINX Newrelic

Brecha de segurança no OpenSSL (CVE-2014-0160)

Nas últimas duas semanas tivemos uma grande movimentação devido a uma brecha de segurança no OpenSSL (CVE-2014-0160), dizem que esta ai deste de 2011 e ninguém havia detectado até agora. Provavelmente você já deve ter lido diversos outros artigos tratando desta vulnerabilidade já que ela foi amplamente coberta por diversos blogs e sites de tecnologia do mundo inteiro. Continue lendo

[Dica Rápida] Erro ao tentar construir rpm do apache 2.4.6

Estou estudando como fazer para criar os meus próprios pacotes rpm, e ao tentar executar a criação do rpm do Apache 2.4.6 recebi o seguinte erro:

rpmbuild -tb httpd.2.4.6.tar.bz2

Error at the end is:

Checking for unpackaged file(s): /usr/lib/rpm/check-files /root/rpmbuild/BUILDROOT/httpd-2.4.6-1.i386
error: Installed (but unpackaged) file(s) found:
   /usr/lib/httpd/modules/mod_proxy_wstunnel.so

Este erro já é conhecido pela comunidade, porém, a correção será publicada no próximo release conforme descrito no link: https://issues.apache.org/bugzilla/show_bug.cgi?id=55303#c1

Consegui fazer um workaround adicionando a linha abaixo no arquivo httpd.spec, publicada na revisão http://svn.apache.org/viewvc?view=revision&revision=r1506142

%{_libdir}/httpd/modules/mod_proxy_wstunnel.so

Para acessar o arquivo é necessário descompactar, editar e compactar novamente

Para descompactar utilize o comando

~# tar -xjfv httpd.2.4.6.tar.bz2

E para compactar

~# tar -cjfv httpd.2.4.6.tar.bz2

Depois é só executar o rpmbuild

~# rpmbuild -tb httpd.2.4.6.tar.bz2

Processo de criar não é só isso, tem muito coisa para fazer antes de chegar neste ponto que o erro ocorre, após “solucionar” esse problema, consegui criar o conjunto de rpm’s do apache, quanto estiver mais habituado com esse processo, escrevo um post sobre o assunto, é isso ai até próxima 🙂

Instalando e configurando NGINX no CentOS 6.4 – Parte 3

Neste post vou parar de enrolação é ir direto ao que interessa, fazer o NGINX interpretar arquivos PHP utilizando o PHP-FPM (FastCGI Process Manager) e criar um Virtual Host com as configurações básicas. Considerando que você tenha lido a Parte 1 e a Parte 2 da série de posts sobre o NGINX pois são requisitos para execução deste roteiro, vamos por a mão na massa 🙂 Continue lendo