I have PostgreSQL 8.3.18 server running on Centos 6.2 (2.6.32-220.7.1) with this specs:
2x CPU AMD Opteron 6282
128GB RAM
Raid 10 (12HD 15k rpm 1GB cache) with data
Raid 10 (4HD 15k rpm 1GB cache) with xlog
Raid 1 (15k rpm 1GB cache shared with xlog) with system
On this server I have only one database with 312GB of data. The database had run fine during 4 months, but from two months ago, during high work load periods, the server is collapsed by "%sys" type load.
For example "dstat -ar --socket --tcp" during %sys load problem:
Reboot the server mitigates the problem during few days, but always reappear.
Server not is swapping, don't have excessive I/O, don't have %IRQ load.
I don't have any ideas...
Thank you very much for your help.
My sysctl and postgres.conf:
sysclt -a:
My Postgres.conf:
max_connections = 500 # (change requires restart)
unix_socket_directory = '/var/run/postgres' # (change requires restart)
shared_buffers = 18GB # min 128kB or max_connections*16kB
work_mem = 30MB # min 64kB
maintenance_work_mem = 1GB # min 1MB
max_fsm_pages = 8553600 # min max_fsm_relations*16, 6 bytes each
max_fsm_relations = 409000 # min 100, ~70 bytes each
fsync = on # turns forced synchronization on or off
synchronous_commit = off # immediate fsync at commit
wal_buffers = 8MB # min 32kB
checkpoint_segments = 64 # in logfile segments, min 1, 16MB each
checkpoint_completion_target = 0.9 # checkpoint target duration, 0.0 - 1.0
archive_mode = on # allows archiving to be done
archive_command = 'exit 0'
effective_cache_size = 100GB
constraint_exclusion = on
default_text_search_config = 'pg_catalog.spanish'
max_locks_per_transaction = 100