ÍNDICE MEMORIA

Anuncio
ÍNDICE MEMORIA
Índice memoria ..........................................................................................1
Capítulo 1: PREÁMBULO........................................................................ 3
Capítulo 2: INSTALACIÓN DEL SISTEMA OPERATIVO ........................... 4
2.1.
Configuración IP fija.....................................................................5
2.2.
Añadir DNS.................................................................................6
Capítulo 3: INSTALACIÓN DE NAGIOS .................................................. 7
3.1.
Preinstalación..............................................................................7
3.2.
Creación de cuentas de usuario .....................................................8
3.3.
Descarga e instalación de Nagios ...................................................9
3.4.
Iniciar Nagios automáticamente .................................................. 11
Capítulo 4: INSTALACIÓN DEL NPN4NAGIOS...................................... 13
Capítulo 5: NAGVIS............................................................................. 19
5.1.
Iniciar automáticamente NagVis .................................................. 23
-1-
CAPÍTULO 1:
PREÁMBULO
En este documento se recogen todos los pasos necesarios para la instalación y
configuración de todos los programas y addons descritos en la memoria.
También se recogen las configuraciones hechas de cara al servidor para las
necesidades del sistema descrito.
Seguidamente se exponen una serie de aclaraciones de cara al lector para
entender mejor la estructura seguida para la creación de este archivo.
•
Se diferenciarán las líneas de código escritas dentro de un archivo de los
comandos ejecutados en la consola del servidor mediante recuadros de
diferente color.
De color azul se representarán las líneas de código referidas a algún
archivo y en color rojo los comandos utilizados en la consola.
Esto es un ejemplo de línea de código
Esto es un ejemplo de comando
•
Se ha utilizado siempre el programa nano provisto por el sistema
operativo del servidor para abrir y modificar archivos de texto. También se
puede usar otros programas como el vi.
•
Las barras abiertas “\” separan dos opciones posibles para un mismo fin,
las barras cerradas “/” nos indican el camino de algún archivo, carpeta por
carpeta o en una dirección web.
•
En la mayoría de comandos que se verán se ejecutan con el comienzo
“sudo” que significa “superuser do”, depende del tiempo de inactividad del
servidor pedirá contraseña para verificar la autenticidad del usuario. Sin el
“sudo” delante muchos comandos no se ejecutan por seguridad.
-3-
Ares Gandul Soto
CAPÍTULO 2:
INSTALACIÓN DEL
SISTEMA OPERATIVO
Primeramente se ha de descargar el instalador de la página web oficial de
Ubuntu Server. La versión instalada en su momento fue la 9.10.
Seguidamente de ha de grabar en un CD para la posterior instalación,
priorizando desde la bios el acceso de la CD-ROM al reiniciar el PC.
Si se posee conexión a Internet, conectar el PC a la red y permitir la
configuración mediante DHCP en el paso especifico.
El sistema necesita la creación de tres particiones en el disco duro durante la
instalación:
•
Partición de intercambio de archivos (partición lógica del 5% de la
capacidad total del disco duro).
•
Partición para el sistema (partición del 10% de la capacidad restante
del disco duro).
•
Partición para datos (partición lógica del resto del disco duro)
-4-
Sistema de monitorización y control de un proceso de programación de vehículos
Instalación de programas auxiliares para Ubuntu Server:
•
PHP Hypertext Pre-processor.
•
OpenSSH server.
•
Samba file server.
•
Apache HTTP server 2.
•
MySQL database.
•
Postfix
2.1.
Configuración IP fija
Como se ha comentado antes si se posee conexión a Internet, conectar el PC a la
red y permitir la configuración automática mediante DHCP en el paso especifico.
Si no se dispone de conexión a Internet o se quiere disponer de una IP fija en
cualquier modo, seguir los siguientes pasos:
Utilizar el siguiente comando en la consola del servidor Ubuntu:
$ sudo nano /etc/network/interfaces
De esta manera accedemos al archivo de configuración de red y substituimos:
auto eth0
iface eth0 inet dhcp
Por:
auto eth0
iface eth0 inet static
address
#insertar la ip (inet addr) la que se desee (es la opción más
# lógica para un ip estática perteneciente a una red local)
netmask
#insertar mascara de sub red
network
#misma ip introducida en address cambiando la ultima cifra por
# 0 -> *.*.*.0
broadcast
#Insertar direccón de broadcast
getway
#Insertar puerta de enlace del router
-5-
Ares Gandul Soto
2.2.
Añadir DNS
En caso de querer una IP fija pero con conexión a Internet se necesitará la
configuración de las DNS.
Para añadir las DNS debemos editar el archivo /etc/resolv.conf de la siguiente
manera:
search com
name server 64.125.134.133
name server 64.125.134.132
NOTA: Añadir las DNS según compañía contratada, esas DNS pertenecen a la
compañía Jazztel.
La línea “search com” añade “.com” al final del comando en caso de omitirlo.
Ej. ping Google ping Google.com
Una vez añadido todo esto debemos reiniciar la configuración de red de la
siguiente manera:
$ sudo /etc/init.d/networking restart
-6-
Sistema de monitorización y control de un proceso de programación de vehículos
CAPÍTULO 3:
INSTALACIÓN DE
NAGIOS
3.1.
Preinstalación
Antes de proseguir con la instalación del programa principal del sistema, se
deben instalar una serie de paquetes, ubicados en el servidor por defecto,
necesarios para el correcto funcionamiento de Nagios.
En la consola del servidor aplicamos los siguientes comandos para la instalación
de los paquetes y librerías necesarios:
$ sudo apt-get install make
$ sudo apt-get install php5-gd
$ sudo apt-get install gcc
$ sudo apt-get install build-essential
$ sudo apt-get install libgd2-xpm
$ sudo apt-get install apache2
$ sudo apt-get install php5
$ sudo apt-get install libapache2-mod-php5
-7-
Ares Gandul Soto
Si se produjera algún error por la falta de algún paquete, intentar una
actualización del sistema si es accesible la conexión a Internet, mediante el
comando:
$ sudo apt-get update
Si tampoco es accesible Internet por parte del servidor, buscar los paquetes
extraviados mediante una búsqueda en Internet por medio de otro PC y
traspasarlos después al servidor, mediante CD o pendrive.
3.2.
Creación de cuentas de usuario
Para la identificación del personal autorizado para acceder al servidor, se deben
crear cuentas de usuario con sus respectivas contraseñas.
Primero se crea una cuenta principal de usuario (por ejemplo usuario nagios):
$ sudo /usr/sbin/useradd -m nagios
Seguidamente se crea la contraseña para este usuario (por ejemplo contraseña
nagios):
$ sudo passwd nagios
Se crea también un grupo de seguridad llamado, por ejemplo nagios:
$ sudo /usr/sbin/groupadd nagios
Se añadirá el usuario "nagios" a este grupo con el comando:
$ sudo /usr/sbin/usermod -G nagios nagios
Se creará otro grupo de seguridad para permitirle la ejecución de comandos
externos a través de la interfaz web, con nombre "nagcmd":
$ sudo /usr/sbin/groupadd nagcmd
-8-
Sistema de monitorización y control de un proceso de programación de vehículos
También se añadirá al grupo creado anteriormente el usuario "nagios":
$ sudo /usr/sbin/usermod -G nagcmd nagios
Por último también agregaremos a este grupo el usuario de Apache "www-data":
$ sudo /usr/sbin/usermod -G nagcmd www-data
3.3.
Descarga e instalación de Nagios
Una vez instalados los paquetes necesarios y creados los usuarios se procederá a
descargar la última version de Nagios.
Primero se crea una carpeta para alojar la descarga, dentro del directorio
principal del usuario “/home/usuario”
$ sudo mkdir decargas_nagios
Accedemos al directorio creado mediante:
$ cd descargas_nagios
Descargamos el programa Nagios desde la web, si se dispone de acceso a
Internet:
$
sudo
wget
2.3.1.tar.gz?download
http://prdownloads.sourceforge.net/nagios/nagios-
O
$ sudo wget
3.0.5.tar.gz
http://osdn.dl.sourceforge.net/sourceforge/nagios/nagios-
Descargaremos también los Plugins de Nagios, con el comando:
$ sudo wget http://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagiosplugins-1.4.13.tar.gz
-9-
Ares Gandul Soto
En caso de no poder acceder desde el servidor, buscar otro PC con conexión a
Internet, descargar el programa, los plugins y grabarlo en un CD o pendrive.
Si se procede mediante la copia en un CD, insertar el CD en la CD-ROM del
servidor y aplicar los siguientes comandos.
Se monta la CD-ROM:
$ sudo mount /dev/scd0
Se entra en la CD-ROM:
$ cd /media/cdrom0
Finalmente se copia
“descargas_nagios”:
el
archivo
descargado
del
Nagios
en
la
carpeta
$ cp nagios-version.tar.gz /home/usuario/descargas_nagios
La palabra “version” se encuentra en cursiva para indicar que allí se especificará
la versión del archivo.
Si se procede mediante el uso de un dispositivo pendrive, insertar el pendrive en
el puerto USB del servidor y aplicar los siguientes comandos.
Se monta el pendrive:
$ sudo mount –t vfat /dev/sdb1 /media/external
Se entra en el pendrive:
$ cd /media/external
Finalmente se copia
“descargas_nagios”:
el
archivo
descargado
del
Nagios
en
la
$ cp nagios-version.tar.gz /home/usuario/descargas_nagios
El último paso es descomprimir en archivo para su posterior instalación:
$ sudo tar xvzf nagios-version.tar.gz
- 10 -
carpeta
Sistema de monitorización y control de un proceso de programación de vehículos
Una vez descomprimido el archivo se puede proceder a su instalación.
Se entra en la carpeta donde reside el instalador:
$ cd /home/usuario/descargas_nagios
Se ejecutan los siguientes comandos para la instalación de Nagios:
$ sudo ./configure --sysconfdir=/etc/nagios
--with-command-group=nagmd
--localstatedir=/var/nagios
$ make all
$ make install
$ make install-init
$ make install-commandmode
$ make install-config
3.4.
Iniciar Nagios automáticamente
Si se necesita que Nagios arranque al encender el servidor o cada vez que se
reinicie sin necesidad de identificar al usuario ni pedir contraseña.
Recomendación: Detener Nagios antes de utilizar el comando si está
ejecutándose, mediante el comando:
$ sudo /etc/init.d/nagios stop
Con el siguiente comando Nagios se añade a la lista de programas iniciados
automáticamente.
$ sudo update-rc.d nagios defaults 99
Si todo es correcto debería aparecer en pantalla algo parecido a esto:
- 11 -
Ares Gandul Soto
$ /etc/init.d/nagios /etc/rc0.d/K99nagios
$ /etc/init.d/nagios /etc/rc1.d/K99nagios
$ /etc/init.d/nagios /etc/rc6.d/K99nagios
$ /etc/init.d/nagios /etc/rc2.d/S99nagios
$ /etc/init.d/nagios /etc/rc3.d/S99nagios
$ /etc/init.d/nagios /etc/rc4.d/S99nagios
$ /etc/init.d/nagios /etc/rc5.d/S99nagios
Reiniciamos el servidor y antes de poner ningún usuario o contraseña
comprobamos por web si Nagios se inicia.
$ sudo reboot
- 12 -
Sistema de monitorización y control de un proceso de programación de vehículos
CAPÍTULO 4:
INSTALACIÓN DEL
NPN4NAGIOS
Se empieza descargando el addon pnp4nagios de la web oficial
www.pnp4nagios.org, la versión utilizada en el sistema fue la 0.4.14. Después se
copia en un CD o pendrive y se copia en el disco duro (ver punto 3.3).
Se aconseja copiarlo y descomprimirlo en /usr/local/src mediante:
- 13 -
Ares Gandul Soto
$ sudo cp (donde se encuentre el paquete)/pnp-0.4.14.tar.gz
$ cd /usr/local/src
$ sudo tar xvzf pnp-0.4.14.tar.gz
Se entra en el directorio:
$ cd /usr/local/src/pnp-0.4.14
Se configuran los archivos:
$ sudo ./configure --sysconfdir=/etc/pnp
(--sysconfdir=/etc/pnp ubica el directorio de configuración en /etc/pnp al
contrario que el resto como se puede comprobar al final del extracto del
comando. /configure , se ubican allí para el correcto funcionamiento del addon al
seguir la nomenclatura y distribución de archivos propuesto en este documento)
(para ver la distribución de directorios en el sistema, tal como se puede ver al
final del ./configure, ir a la pagina www.pnp4nagios.org en el apartado de la guía
de instalación)
Se compilan los programas necesarios:
$ sudo make all
Se instalan los programas necesarios:
$ sudo make install
Después pide la ejecución del comando:
$ make install-config
De esta forma los ficheros de configuración para process_perfdata.pl y npcd se
copian a etc/pnp.
- 14 -
Sistema de monitorización y control de un proceso de programación de vehículos
Para instalar el init script de NPCD se debe ejecutar tambien:
$ make install-init
Una vez instalado todo comprobar la ubicación correcta de los directorios de la
base de datos
Entrar en el archivo de configuración:
$ sudo nano /etc/pnp/config.php
Buscar las direcciones:
…
$conf[‘rrdtool’] = “/usr/bin/rrdtool”
$conf[‘rrdbase’] = “/usr/local/nagios/share/perfdata”
….
Y comprobar que existen esos directorios. Si no están comprobar la instalación
del rrdtool o reinstalarlo.
Después renombrar los archivos de configuración process_perfdata y rra de la
siguiente manera:
$ cd /etc/pnp
$ sudo mv process_perfdata.cfg-sample process_perfdata.cfg
$ sudo mv rra.cfg-sample rra.cfg
Modificar el archivo process_perfdata.cfg:
$ sudo nano process_perfdata.cfg
- 15 -
Ares Gandul Soto
TMEOUT=5
USE_RRDs=1
RRDPATH=/usr/local/nagios/share/perfdata
RRDTOOL=/usr/bin/rrdtool
CFG_DIR=/etc/pnp
RRD_HEARTBEAT=8460
RRA_CFG=/etc/pnp/rra.cfg
RRA_STEP=60
LOG_FILE=/usr/local/nagios/var/pnp-perfdata.log
LOG_LEVEL=0
XML_ENC=UTF-8
Modificar el archivo de configuración de Nagios:
$ sudo nano nagios.cfg
…
illegal_macro_output_chars=`~$&|”<>
process_performance_data=1
service_perfdata_command=service-perfdata-pnp
…
- 16 -
Sistema de monitorización y control de un proceso de programación de vehículos
En illegal_macro_output_chars se elimina el apostrofe dado que será un símbolo
a utilizar.
Las otras dos configuraciones se cambian tal como se muestra.
Se crear un comando en commands.cfg
$ sudo nano commands.cfg
…
define command{
command_name service-perfdata-pnp
command_line /usr/bin/perl $USER1$/process_perfdata.pl
}
Ya esta listo el programa para ver el resultado abrir el explorador e ir a la
siguiente dirección: http://servidor/nagios/pnp/index.php
Si se quiere añadir un icono en un servicio de un host de Nagios para ir
directamente a la web de estadísticas, por ejemplo del host “maquina” en su
servicio “hola”, abrimos el archivo de configuración de servicios:
$ sudo nano /usr/local/nagios/etc/objects/services.cfg
- 17 -
Ares Gandul Soto
define service{
….
Hostname
maquina
…
service_description
hola
…
action_url
http://servidor/nagios/pnp/index.php?host=$HOSTNAME$&srv=$SERVICEDE
SC$
}
Al reiniciar Nagios:
$ sudo /etc/init.d/nagios restart
Podremos ver un icono al lado del nombre del servicio que al seleccionarlo con el
ratón nos enviará hacia la página web de estadísticas.
- 18 -
Sistema de monitorización y control de un proceso de programación de vehículos
CAPÍTULO 5:
NAGVIS
En este capitulo se procederá a la instalación del addon NagVis.
Se procederá a descarga del addon desde la página web oficial
http://www.nagvis.org/downloads, se copiará en un CD o pendrive y se pasará al
servidor (ver punto 3.3). Una vez en el directorio pertinente se descomprimirá y
se seguirán los siguientes pasos.
Primero se determinarán los usuarios para los permisos del servidor web.
$ sudo grep “Ûser” /etc/apache2/apache2.conf
$ id www-data
Después se designan los permisos mediante:
- 19 -
Ares Gandul Soto
$ chown www-data.www-data –R /usr/local/nagios/share/nagvis
$ chmod 664 /usr/local/nagios/share/nagvis/etc/nagvis.ini.php
$ chmod 775 /usr/local/nagios/share/nagvis/nagvis/images/maps
$ chmod 664 /usr/local/nagios/share/nagvis/nagvis/images/maps/*
$ chmod 775 /usr/local/nagios/share/nagvis/nagvis/etc/maps
$ chmod 664 /usr/local/nagios/share/nagvis/nagvis/etc/maps/*
$ chmod 775 /usr/local/nagios/share/nagvis/var
$ chmod 664 /usr/local/nagios/share/nagvis/var/*
Se modifica el nombre del archivo de configuración de NagVis para su correcto
funcionamiento:
$ cd /usr/local/nagios/share/nagvis/etc
$ sudo cp config.ini.php.dist config.ini.php
$ chown www-data.www-data config.ini.php
$ chmod 664 config.ini.php
Se abre y modifica el archivo tal como sigue para su configuración final.
$ sudo nano config.ini.php
- 20 -
Sistema de monitorización y control de un proceso de programación de vehículos
[global]
language=”german”
refreshtime=60
[defaults]
Backend= “ndomy_1”
Icons=”std_medium”
Recognizeservice=1
Onlyhardstate=1
[wui]
Autoupdatefreq=25
Maplocktime=5
- 21 -
Ares Gandul Soto
[paths]
Base=” /usr/local/nagios/share/nagvis”
Htmlbase=” /nagios/nagvis/”
Htmlcgi=” /nagios/cgi-bin”
[Backend_ndomy_1]
Backendtype=”ndomy1”
Dbhost=”localhost”
Dbport=3306
Debename=”nagios”
Debeuser=”nagios”
Dbpass=”verysecret”
Dbprefix=”nagios_nagios”
Por último reiniciar el servidor para completar la configuración.
$ sudo reboot
- 22 -
Sistema de monitorización y control de un proceso de programación de vehículos
5.1.
Iniciar automáticamente NagVis
Como en el caso de Nagios si es necesario el arranque automático de NagVis
junto al de Nagios sin necesidad de acceder al servidor debemos configurar su
inicio de la siguiente manera:
Buscamos el archivo rc.local debe encontrarse dentro de la carpeta init.d/
(carpeta donde se encuentran los archivos con las secuencias y los programas de
arranque):
Recomendación: Detener Nagios y NagVis antes de todo.
$ sudo locate rc.local
Una de las opciones mostradas debería ser:
/etc/init.d/rc.local
Se edita el archivo:
$ sudo nano /etc/init.d/rc.local
Bajamos hasta el final del documento y después de la última línea de código
dejamos un espacio y añadimos:
if [ -x /usr/local/nagios/bin/ndo2db-3x ]; then
echo -n ' ndo2db-3x'
/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg
chmod 770 /usr/local/nagios/var/ndo.sock
fi
Una vez hecho esto se guarda el documento y reiniciamos el servidor:
$ sudo reboot
Antes de poner ningún usuario o contraseña comprobamos por web si NagVis se
inicia. (Para que funcione correctamente Nagios también se debe iniciar
automáticamente en el arranque del servidor, la descripción de ese proceso se
encuentra en el punto 3.4.)
- 23 -
Descargar