Odoo Help

2

PgPool and pgBouncer in Odoo

By
Midhunmadhu
on 3/23/15, 3:07 AM 2,767 views

Hi,

Does anybody know how we can use pgPool and pgBoucner for helping load balancing in Odoo

3
Vasanth
On 3/23/15, 3:21 AM

http://girders.org/blog/2012/09/29/scaling-postgresql-with-pgpool-and-pgbouncer/

Hi vasanth thanks for your reply. Did you use this process for load balancing in odoo db?

Midhunmadhu
on 3/23/15, 7:14 AM

no.I am did not use this process yet.i heared about it

Vasanth
on 3/23/15, 7:42 AM
0
CodeCrax
On 8/3/17, 11:31 AM
Hey! I tried connecting odoo with PostgreSQL via pgbouncer. I'll just give you a brief connections configurations! Just try this!

Say suppose I have two servers:

1.192.168.1.1 (Which has Odoo & Pgbouncer running on it)

2. 192.168.2.12 (Which has Postgresql running on it)

Postgresql Config on 192.168.2.12

pg_hba.conf: add these lines to your pg_hba.conf file
# IPv4 local connections:
host      all      all      192.168.1.1/32     trust
posgresql.conf: make PostgreSQL listen to all the IPs
# Connection Settings -
listen_addresses = '*'
Creating User Database Password on PostgreSQL
$ sudo -i -u postgres
$ psql
$ CREATE USER user_pg WITH PASSWORD '1234';
$ CREATE DATABASE db_pg WITH OWNER user_pg;
$ ALTER ROLE user_pg WITH CREATEDB CREATEROLE; 

Pgbouncer Config on 192.168.1.1

/etc/pgbouncer/pgbouncer.ini: Edit the following in your pgbouncer.ini
[DATABASES]
*= host=192.168.2.12 port=5432 db_name=db_pg
listening address= *
listening port= 6432
auth_type=trust
/etc/pgbouncer/userlist.txt: Add the following in your userlist.txt
"user_pg" "1234"
Running Odoo:
$ ./odoo-bin --database=db_pg --db_host=127.0.0.1 --db_port=6432 --db_user=user_pg --db_password=1234

Hi there,

I am getting the following error

psycopg2.OperationalError: could not connect to server: Connection refused

Is the server running on host "127.0.0.1" and accepting

TCP/IP connections on port 6432?

I cannot find how to solve?

If someone can help

Thanks

SafeComs Network Security Consulting Co., Ltd., philippe.thuaud@safecoms.com
on 10/3/17, 2:10 AM

add this line as well to the pg_hba.conf file:

host all all 127.0.0.1/32 trust

CodeCrax
on 10/3/17, 3:10 AM

I have the following in pg_hba.conf

# "local" is for Unix domain socket connections only

local all all peer

# IPv4 local connections:

host all all 127.0.0.1/32 trust

# IPv6 local connections:

host all all ::1/128 trust

SafeComs Network Security Consulting Co., Ltd., philippe.thuaud@safecoms.com
on 10/3/17, 3:15 AM

Firstly, did you follow the sample configuration which was mentioned above. I think you are making some mistakes because the ones that I wrote there are best of my knowledge and working solution. Try that again and let me know what difficulties are you facing.

CodeCrax
on 10/3/17, 3:19 AM

Yes I followed the sample configuration

The difference is that everything is on the same server for me.

I have to following configuration:

pg_hba.conf:

# "local" is for Unix domain socket connections only

local all all peer

# IPv4 local connections:

host all all 127.0.0.1/32 trust

# IPv6 local connections:

host all all ::1/128 trust

posgresql.conf

listen_addresses = '*'

/etc/pgbouncer/pgbouncer.ini

[databases]

*= host=127.0.0.1 port=5432 db_name=db_pg

[pgbouncer]

logfile = /var/log/postgresql/pgbouncer.log

pidfile = /var/run/postgresql/pgbouncer.pid

listen_addr = 127.0.0.1

listen_port = 6432

auth_type = trust

auth_file = /etc/pgbouncer/userlist.txt

/etc/pgbouncer/userlist.txt

"user_pg" "1234"

In my odoo conf file I have the following:

db_host = 127.0.0.1

db_port = 6432

db_user = user_pg

db_password = 1234

When I start the odoo server I have the following error message

odoo.sql_db: Connection to the database failed

Traceback (most recent call last):

File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 177, in run_wsgi

execute(self.server.app)

File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 165, in execute

application_iter = app(environ, start_response)

File "/opt/aslane/aslane-server/odoo/service/wsgi_server.py", line 186, in application

return application_unproxied(environ, start_response)

File "/opt/aslane/aslane-server/odoo/service/wsgi_server.py", line 172, in application_unproxied

result = handler(environ, start_response)

File "/opt/aslane/aslane-server/odoo/http.py", line 1308, in __call__

return self.dispatch(environ, start_response)

File "/opt/aslane/aslane-server/odoo/http.py", line 1282, in __call__

return self.app(environ, start_wrapped)

File "/usr/lib/python2.7/dist-packages/werkzeug/wsgi.py", line 588, in __call__

return self.app(environ, start_response)

File "/opt/aslane/aslane-server/odoo/http.py", line 1446, in dispatch

self.setup_db(httprequest)

File "/opt/aslane/aslane-server/odoo/http.py", line 1368, in setup_db

httprequest.session.db = db_monodb(httprequest)

File "/opt/aslane/aslane-server/odoo/http.py", line 1530, in db_monodb

dbs = db_list(True, httprequest)

File "/opt/aslane/aslane-server/odoo/http.py", line 1498, in db_list

dbs = odoo.service.db.list_dbs(force)

File "/opt/aslane/aslane-server/odoo/service/db.py", line 333, in list_dbs

with closing(db.cursor()) as cr:

File "/opt/aslane/aslane-server/odoo/sql_db.py", line 635, in cursor

return Cursor(self.__pool, self.dbname, self.dsn, serialized=serialized)

File "/opt/aslane/aslane-server/odoo/sql_db.py", line 177, in __init__

self._cnx = pool.borrow(dsn)

File "/opt/aslane/aslane-server/odoo/sql_db.py", line 518, in _locked

return fun(self, *args, **kwargs)

File "/opt/aslane/aslane-server/odoo/sql_db.py", line 586, in borrow

**connection_info)

File "/usr/lib/python2.7/dist-packages/psycopg2/__init__.py", line 164, in connect

conn = _connect(dsn, connection_factory=connection_factory, async=async)

OperationalError: could not connect to server: Connection refused

Is the server running on host "127.0.0.1" and accepting

TCP/IP connections on port 6432?

SafeComs Network Security Consulting Co., Ltd., philippe.thuaud@safecoms.com
on 10/3/17, 3:43 AM

Try passing arguments instead from config file. like this

$ ./odoo-bin --database=db_pg --db_host=127.0.0.1 --db_port=6432 --db_user=user_pg --db_password=1234

CodeCrax
on 10/3/17, 3:50 AM
0
ahmad
On 10/4/16, 10:45 PM

any tutorial on implementing pgBouncer with odoo?

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.

Register

Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

2 follower(s)

Stats

Asked: 3/23/15, 3:07 AM
Seen: 2767 times
Last updated: 8/3/17, 11:31 AM