miguel.carreira.rial deleted page: Plataforma_FI WARE authored by Miguel Carreira Rial's avatar Miguel Carreira Rial
[Página principal](home)
## Configuración Orion Context Broker
# Introducción
Esta máquina contrendrá la siguiente tecnología:
A continuación mostraremos los pasos a seguir para la instalación y configuración del servidor Orion Context Broker.
En este servidor contrendrá la siguiente tecnología:
* MongoDB
* Context Broker
......@@ -11,9 +13,9 @@ Características del sistema operativo:
* CentOS 6.3
#### Instalar MongoDB
# Instalar MongoDB
Crearemos el fichero /etc/yum.repos.d/mongodb.repo, donde insertaremos las siguientes lineas, para un SQ 64 bits:
Crearemos el fichero /etc/yum.repos.d/mongodb.repo, donde insertaremos las siguientes lineas, para un SO 64 bits:
> [mongodb]
......@@ -29,11 +31,11 @@ Actualizaremos los paquetes del sistema:
```yum -y update```
Instalaremos con el siguiente comando:
Instalaremos con el paquete mongodb-org:
```yum install -y mongodb-org```
Iniciar el servicio mongod (tardará un poco en iniciar la primera vez):
Una vez instalado este paquete, iniciaremos el servicio mongod (tardará un poco en iniciar la primera vez):
```service mongod start```
......@@ -41,7 +43,7 @@ Parar el servicio mongod:
```service mongod stop```
#### Instalar Orion Context Broker
# Instalar Orion Context Broker
Crearemos el fichero /etc/yum.repos.d/testbed-fi-ware.repo e insertamos las siguientes lineas:
......@@ -55,15 +57,13 @@ Crearemos el fichero /etc/yum.repos.d/testbed-fi-ware.repo e insertamos las sigu
> enabled=1
Actualizaremos los paquetes del sistema:
Actualizaremos los paquetes e instalaremos el paquete contextBroker:
```yum -y update```
Instalaremos con el siguiente comando:
```yum install contextBroker```
Iniciar el servicio contextBroker:
Al finalizar la instalación, iniciaremos el servicio contextBroker:
```/etc/init.d/contextBroker start```
......@@ -75,6 +75,106 @@ Ver el estado:
```/etc/init.d/contextBroker status```
# Configuración del Context Broker
## Watchdog
Este script nos ayudará a gestionar de forma eficiente el contextBroker. Entre sus funciones estará el reiniciar el servicio cuando supera ciertos límites de memoría.
Descargaremos el fichero RPM:
```wget --no-check-certificate ftp://rpmfind.net/linux/dag/redhat/el6/en/x86_64/dag/RPMS/monit-5.2.5-1.el6.rf.x86_64.rpm```
Necesitaremos las siguentes librerias:
* libcrypto.so.6()(64bit)
* libssl.so.6()(64bit)
Para conseguirlas ejecutaremos:
```wget --no-check-certificate ftp://rpmfind.net/linux/centos/6.6/os/x86_64/Packages/openssl098e-0.9.8e-18.el6_5.2.x86_64.rpm```
Procederemos a la instalación:
```rpm -i monit-5.2.5-1.el6.rf.x86_64.rpm```
Crearemos la carpeta monit_CB, en la cual guardaremos los ficheros de configuración del watchdog:
```mkdir /home/orion/monit_CB```
En esta carpeta crearemos el siguiente ficheros:
```vi /home/orion/monit_CB/monitBROKER.conf```
Insertando:
```
#####################################################################
## Monit control file
#####################################################################
##
## Comments begin with a '#' and extend through the end of the line.
## Keywords are case insensitive. All path's MUST BE FULLY QUALIFIED,
## starting with '/'.
##
#####################################################################
## Global section
#####################################################################
##
set logfile /var/log/contextBroker/monitBROKER.log
set statefile /var/log/contextBroker/monit.state
#####################################################################
## Services
#####################################################################
##
check host localhost with address localhost
if failed (url http://localhost:10026/version and content == '<version>') for 3 cycles then
exec "/etc/init.d/contextBroker stop"
check file monitBROKER.log with path /var/log/contextBroker/monitBROKER.log
if size > 50 MB then
exec "/bin/bash -c '/bin/rm /var/log/contextBroker/monitBROKER.log; monit -c /home/localadmin/monit_CB/monitBROKER.conf -p /var/log/contextBroker/monit.pid reload'"
check process contextBroker with pidfile /var/log/contextBroker/contextBroker.pid start program = "/etc/init.d/contextBroker start" stop program = "/etc/init.d/contextBroker stop"
if cpu > 60% for 2 cycles then alert
if cpu > 80% for 5 cycles then restart
if totalmem > 200.0 MB for 5 cycles then restart
```
Esta configuración reiniciará el contextBroker si la carga de la CPU supere el 80\% o si la memoria asignada es mayor que 200MB para cinco ciclos (que sería un síntoma de fugas de memoria).
Modificaremos los permisos del fichero:
```
chown root:root monitBROKER.conf
chmod 0700 monitBROKER.conf
```
A continuación crearemos un script para iniciar el watchdog:
```vi /home/orion/monit_CB/start_monit_BROKER.sh```
Con el contenido:
```monit -v -c /home/orion/monit_CB/monitBROKER.conf -d 10 -p /var/log/contextBroker/monit.pid```
Con la opción -d indicaremos cada cuanto segundos comprobará los ciclos, en este caso cada 10 segundos.
Y modificaremos sus permisos y ejecutaremos el script:
```
chown root:root start_monit_BROKER.sh
chmod 711 start_monit_BROKER.sh
./start_monit_BROKER.sh
```
Por último, instalaremos un script de gestión de base de datos, denominado pymongo.
```# pip-python install pymongo```
### Fallos en Context Broker
#### pidfile not found [FALLO]
......
......