Publicidad

jueves, 26 de junio de 2014

Utilizar un Servidor Independiente PostgreSQL para Odoo (OpenERP 8.0)


    En ocasiones una Instalación de Odoo (OpenERP) y un servidor de Base de Datos (PostgreSQL 9.3) en un solo servidor, no son suficientes cuando el numero de Usuarios del Sistema crece demasiado, las consultas suelen ser mas lentas y en ocasiones el servidor puede Crashear por la carga de informacion y los recursos limitados de tener un solo Servidor.

    PostgreSQL es un gestor de base de datos que permite conexiones remotas, esta ventaja la podemos utilizar para tener nuestro propio servidor dedicado, unica y exclusivamente para el manejo de la Informacion, ahora como podemos tener 2 servidores para estos 2 Procesos.


PASOS PARA LA INSTALACION: 

Antes que nada necesitamos tener Instalado Odoo (OpenERP), si no lo tienen instalado pueden seguir este tutorial:

http://poncesoft.blogspot.mx/2014/03/instalacion-openerp-80-linux-ubuntu.html

Como vimos en el tutorial utilizamos Ubuntu 13.04 o en su defecto la version mas reciente, ahora necesitamos otro servidor con una Distribucion que soporte PostgreSQL, en este ejercicio utilizaremos tambien Ubuntu 13.04.

1. Abrimos una Terminal y actualizamos los repositorios:

sudo apt-get update







2.  Instalamos las dependencias necesarias para que funcione PostgreSQL, usaremos la version mas reciente 9.3:

sudo apt-get install python-psycopg2 aptitude postgresql





Presionamos la tecla enter y nos mostrara algo como lo siguiente:

terminal

    Listo tenemos las dependencias necesarias para utilizar PostgreSQL en nuestro nuevo Servidor Ubuntu, ahora solo necesitamos configurar usuarios y permisos para poder acceder desde nuestra instancia Odoo.

3.  Entramos como super usuario postgres:

sudo su postgres


4. Creamos un usuario Postgres para conectarnos con OpenERP

createuser openerp80


5. Entramos al Template1 que contiene los usuarios de Postgres para poder asignarle un Password:

psql template1


6. Para asignar el password tecleamos:

alter role openerp80 with password 'openerp80';


    Por defecto PostgreSQL tiene bloqueados los accesos remotos hacia su servidor, tenemos que configurar algunos archivos:

7. Modificamos el archivo postgresql.conf:

En windows nos vamos a:

inicio -> PostgreSQLxxx -> Configuration files -> Edit postgresql.conf 

(Si estamos en windows 7 damos clic derecho-> ejecutar o abrir como administrador , las xxx son la versión de PostgreSQL que tenemos instalada).

En Linux nos vamos a la terminal como root o si no anteponiendo el comando sudo a:

nano /etc/postgresql/9.3/main/postgresql.conf

o bien

sudo nano /etc/postgresql/9.3/main/postgresql.conf

(ese comando es en caso de editar con nano, si no cualquier otro editor podría utilizarse como gedit o kate en ves de nano).

Ya que abrimos el archivo postgresql.conf buscamos la linea :

#listen_addresses = 'localhost' # what IP address(es) to listen on;

y la cambiamos por

listen_addresses = '*' # what IP address(es) to listen on;

8. Para poder acceder con nuestro usuario postgres openerp80, modificamos el archivo pg_hba.conf:

En windows nos vamos a:

inicio -> PostgreSQLxxx -> Configuration files -> Edit pg_hba.conf 

(Si estamos en windows 7 damos clic derecho-> ejecutar o abrir como administrador , las xxx son la versión de PostgreSQL que tenemos instalada).

En Linux nos vamos a la terminal como root o si no anteponiendo el comando sudo a:

nano /etc/postgresql/9.3/main/pg_hba.conf 

o bien

sudo nano /etc/postgresql/9.3/main/pg_hba.conf 

Modificamos la linea:

# IPv4 local connections:

host all all 127.0.0.1/32 md5

Lo Sustituimos por:

host all all 0.0.0.0/0 md5

9. Reiniciamos el servicio de PostgreSQL:
sudo service postgresql restart

10. Ahora solo Asignamos la direccion Ip y los usuarios a nuestra cadena de Arranque o archivo conf de Odoo (OpenERP) y sustituimos por lo siguiente:

--db_host=187.156.22.2 (Direccion Ip del Servidor PostgreSQL)
--db_user=openerp80 (Usuario del Servidor de PostgreSQL)
--db_password=openerp80 (Contraseña del Usuario del Servidor PostgreSQL)




Guardamos el archivo (start.sh)  o el archivo conf.

Iniciamos el Servidor OpenERP.

Ahora introducimos en la barra de direcciones:
localhost:8069

Si todo fue correcto nos mostrara nuestro sistema Odoo:






Ahora podemos crear Nuevas Bases de Datos de Odoo (OpenERP), o en su caso restaurar las bases de datos y al ingresar con cada usuario, Notar la Diferencia en la velocidad de las Consultas.

poncesoft.blogspot.com

7 comentarios:

  1. Tu entrada ha sido genial y me ha dado unas cuantas ideas para montar Servidores Dedicados con este método :D Espero seguir leyendo mas artículos relacionados con esto. Saludos y éxitos mi buen amigo.

    ResponderEliminar
  2. Como puedo poner el odoo como servidor local , osea que otras maquinas externar puedan ver el odoo que esta en mi maquina?

    ResponderEliminar
    Respuestas
    1. Solo con ip publico,.....y escritorio remoto

      Eliminar
    2. http://fundamentos-de-desarrollo-en-odoo.readthedocs.org/es/latest/capitulos/despliegue.html

      A ver si esto te ayuda un poco

      Eliminar
  3. hola gran tutorial, podrias por favor ayudarme indicando como configuro en el archivo de conf de odoo la variable pg_path cuando la ruta esta en el servidor de BD...

    ResponderEliminar