Instalación y configuración de Amplify NGINX en FreeBSD

¿Que es Amplify NGINX?

NGINX Amplify es una herramienta  de software libre para realizar la  monitorización de NGINX  basada en SaaS. Con NGINX Amplify puede monitorizar el rendimiento, realizar un seguimiento de los activos de infraestructura y mejorar la configuración con análisis estáticos. NGINX Amplify también supervisa el sistema operativo, los servicios de aplicaciones (como PHP-FPM), las bases de datos y otros componentes.

en primer lugar tenemos que instalar las dependencas necesarias para su funcionamiento

pkg install sudo py27-gevent-1.3.4 py27-pip-9.0.3 py27-lockfile-0.12.2 py27-netaddr-0.7.19 py27-netifaces-0.10.6 py27-psutil-5.4.6 py27-requests-2.18.4 py27-daemon-2.0.6 py27-setproctitle-1.1.10 py27-flup6-1.1.1 py27-scandir-1.7 py27-pymysql-0.8.1 gcc wget

pip install rstr ujson crossplane

Instalación de Amplifly

Descargamos y ccedemos al directorio de packages

git clone https://github.com/nginxinc/nginx-amplify-agent

cd nginx-amplify-agent/packages

 

Al lanzar el script de instalación (install-source.sh) vamos a obtener el siguiente error:

Cloning into ‘nginx-amplify-agent’…
remote: Counting objects: 3594, done.
remote: Compressing objects: 100% (2/2), done.
Receiving objects: 100% (3594/3594), 1.07 MiB | 830.00 KiB/s, done.
remote: Total 3594 (delta 0), reused 0 (delta 0), pack-reused 3592
Resolving deltas: 100% (2034/2034), done.
grep: packages/requirements: No such file or directory

Para solventarlo accedemos al script install-source.sh y comentamos las siguientes lineas:

Una vez comentadas las lineas, ejecutamos el script de instalación (install-source.sh)

Configuración Amplify

Accedemos al fichero de configuración de /usr/local/etc/nginx/nginx.conf y agregamos las siguientes lineas

log_format main_ext ‘$remote_addr – $remote_user [$time_local] “$request” ‘
‘$status $body_bytes_sent “$http_referer” ‘
‘”$http_user_agent” “$http_x_forwarded_for” ‘
‘”$host” sn=”$server_name” ‘
‘rt=$request_time ‘
‘ua=”$upstream_addr” us=”$upstream_status” ‘
‘ut=”$upstream_response_time” ul=”$upstream_response_length” ‘
‘cs=$upstream_cache_status’ ;

access_log /var/log/nginx/access.log main_ext;
error_log /var/log/nginx/error.log warn;

Creamos un nuevo sitio con la monitorización del estado del servicio

cat /usr/local/etc/nginx/sites-enabled/stub_status.conf
server {
listen 127.0.0.1:80;
server_name 127.0.0.1;
location /nginx_status {
stub_status on;
allow 127.0.0.1;
deny all;
}
}

Configuramos en cada uno de los sitios implementados en NGINX  el access_log y error_log:

server {
listen 80 default_server;
listen [::]:80 default_server;
access_log /var/log/nginx/redorbita.access.log main_ext;
error_log /var/log/nginx/redorbita.error.log warn;
root /usr/local/www/nginx/;

server_name _;

}

 

Creamos un script para el inicio y parada del agente

cat /etc/rc.d/amplify-agent

#!/bin/sh
#
# $FreeBSD: releng/11.2/etc/rc.d/amplify 298514 2016-04-23 16:10:54Z lme $
#

# PROVIDE: Amplify Agent

name=”amplify-agent”
desc=”Amplify Agent”
rcvar=”amplify_enable”
command=”/usr/bin/nginx-amplify-agent.py”
start_cmd=”amplify_start”
pidprefix=”/var/run/amplify-agent/”
pidfile=”amplify-agent.pid”
pidarg=

if [ “$(id -u)” != “0” ]; then
echo “Este script se tiene que ejecutar con el usuario root” 1>&2
exit 1
fi

start() {

echo -n $”Starting Amplify Agent”
/usr/local/bin/sudo -u www /usr/local/bin/python2.7 /usr/bin/nginx-amplify-agent.py start –config=/etc/amplify-agent/agent.conf –pid=/var/run/amplify-agent/amplify-agent.pid

}

stop() {
echo -n “Stopping Amplify Agent”

/usr/local/bin/sudo -u www /usr/local/bin/python2.7 /usr/bin/nginx-amplify-agent.py stop –config=/etc/amplify-agent/agent.conf –pid=/var/run/amplify-agent/amplify-agent.pid

}

status() {
status=`ps aux | grep amplify | grep -v grep | wc -l`
if [ $status = “0” ]
then

echo “Amplify Agent STOP”

else

echo “Amplify Agent running”

fi
}
case “$1” in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart)
stop
start
;;
*)
echo “Usage $prg {start|stop|status|restart}”
exit 1
;;
esac
exit $RETVAl

Configuramos para que el servicio lo arranque al inicio

echo ‘amplify_enable=”YES”‘ >> /etc/rc.conf

Agregamos los permisos correctos al directorio /var/run/amplify-agent/

chown root:www /var/run/amplify-agent/

chmod 770 /var/run/amplify-agent/

Iniciamos el servicio

service amplify-agent start
$Starting Amplify Agent
Config file /etc/amplify-agent/agent.conf is OK

Por ultimo solo nos falta acceder a https://amplify.nginx.com mediante nuestra cuenta

 

 

 

:wq!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*