Good, 


local@PGSYNCTEST:~$ sudo /etc/init.d/haproxy restart 
[sudo] password for local: 
* Restarting haproxy haproxy 
[ALERT] 078/181429 (1600) : Starting frontend pgdbplatform_frontend_cluster01: 
cannot bind socket [0.0.0.0:5432] [fail] 


This is because Postgres occupied port 5432 


Hence, we try again 


local@PGSYNCTEST:~$ sudo service postgresql stop 
* Stopping PostgreSQL 9.3 database server [ OK ] 


local@PGSYNCTEST:~$ sudo /etc/init.d/haproxy restart 
* Restarting haproxy haproxy [ OK ] 



local@PGSYNCTEST:~$ sudo service postgresql start 
* Starting PostgreSQL 9.3 database server 

But my questions are not about how to start HA-Proxy, my questions are that we 
received no logs of RSYSLOG from HA-Proxy, even log files of HA-Proxy are not 
created. 
May I send you the attachment, you will see all of our settings inside, our 
errors are that NO LOGS OF HA-PROXY CREATION. 


May you support, 
Ha. 

----- Original Message -----

From: "Jarno Huuskonen" <[email protected]> 
To: "Ha Quan Le" <[email protected]> 
Cc: [email protected] 
Sent: Friday, March 20, 2015 1:42:24 PM 
Subject: Re: Checked: send/accept-proxy over unix socket not working 

Hi, 

On Fri, Mar 20, Ha Quan Le wrote: 
> local@PGSYNCTEST:~$ sudo -u haproxy /etc/init.d/haproxy restart 
> * Restarting haproxy haproxy 
> [WARNING] 078/171401 (1267) : [/usr/local/sbin/haproxy.main()] Cannot raise 
> FD limit to 90034. 

You're trying to start/restart haproxy as haproxy user (sudo -u). 
start/restart as root and let haproxy drop privs (user / group in haproxy.cfg). 

> [ALERT] 078/171401 (1267) : Starting frontend GLOBAL: error when trying to 
> preserve previous UNIX socket [/var/run/haproxy.sock] 
> [ALERT] 078/171401 (1267) : Starting frontend 
> pgdbplatform_frontend_cluster01: cannot bind socket [0.0.0.0:5432] 

Try restarting as root. If it still doesn't work then make sure 
that there's no haproxy process left from earlier tests. 
And if it still complains about cannot bind [0.0.0.0:5432] then 
you have something else already listening to that socket. 

-Jarno 

-- 
Jarno Huuskonen 

---------------------------- GOOD HAProxy 1.5 --------------------------
 
1)      Removal of old HA-Proxy1.4 
$ sudo apt-get remove haproxy

2)  Preparation
$ cd /usr/local/src/
local@PGSYNCTEST:/usr/local/src$ sudo apt-get install build-essential
local@PGSYNCTEST:/usr/local/src$ sudo apt-get build-dep -y haproxy
local@PGSYNCTEST:/usr/local/src$ sudo apt-get install -y libssl-dev
local@PGSYNCTEST:/usr/local/src$ sudo apt-get install libpcre3-dev

3) Download HA-Proxy 1.5
local@PGSYNCTEST:/usr/local/src$ sudo wget 
http://www.haproxy.org/download/1.5/src/haproxy-1.5.11.tar.gz
local@PGSYNCTEST:/usr/local/src$ sudo tar xvf haproxy-1.5.11.tar.gz
local@PGSYNCTEST:/usr/local/src$ cd haproxy-1.5.11

4) Installation
local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo make TARGET=linux2628 
USE_PCRE=1 USE_OPENSSL=1 USE_ZLIB=1
gcc -Iinclude -Iebtree -Wall  -O2 -g -fno-strict-aliasing       
-DCONFIG_HAP_LINUX_SPLICE -DTPROXY -DCONFIG_HAP_LINUX_TPROXY -DCONFIG_HAP_CRYPT 
-DUSE_ZLIB  -DENABLE_POLL -DENABLE_EPOLL -DUSE_CPU_AFFINITY 
-DASSUME_SPLICE_WORKS -DUSE_ACCEPT4 -DNETFILTER -DUSE_GETSOCKNAME -DUSE_OPENSSL 
 -DUSE_SYSCALL_FUTEX -DUSE_PCRE -I/usr/include  
-DCONFIG_HAPROXY_VERSION=\"1.5.11\" -DCONFIG_HAPROXY_DATE=\"2015/01/31\" \
              -DBUILD_TARGET='"linux2628"' \
              -DBUILD_ARCH='""' \
              -DBUILD_CPU='"generic"' \
              -DBUILD_CC='"gcc"' \
              -DBUILD_CFLAGS='"-O2 -g -fno-strict-aliasing"' \
              -DBUILD_OPTIONS='"USE_ZLIB=1 USE_OPENSSL=1 USE_PCRE=1"' \
               -c -o src/haproxy.o src/haproxy.c
gcc -Iinclude -Iebtree -Wall  -O2 -g -fno-strict-aliasing       
-DCONFIG_HAP_LINUX_SPLICE -DTPROXY -DCONFIG_HAP_LINUX_TPROXY -DCONFIG_HAP_CRYPT 
-DUSE_ZLIB  -DENABLE_POLL -DENABLE_EPOLL -DUSE_CPU_AFFINITY 
-DASSUME_SPLICE_WORKS -DUSE_ACCEPT4 -DNETFILTER -DUSE_GETSOCKNAME -DUSE_OPENSSL 
 -DUSE_SYSCALL_FUTEX -DUSE_PCRE -I/usr/include  
-DCONFIG_HAPROXY_VERSION=\"1.5.11\" -DCONFIG_HAPROXY_DATE=\"2015/01/31\" -c -o 
src/sessionhash.o src/sessionhash.c
gcc -Iinclude -Iebtree -Wall  -O2 -g -fno-strict-aliasing       
-DCONFIG_HAP_LINUX_SPLICE -DTPROXY -DCONFIG_HAP_LINUX_TPROXY -DCONFIG_HAP_CRYPT 
-DUSE_ZLIB  -DENABLE_POLL -DENABLE_EPOLL -DUSE_CPU_AFFINITY 
-DASSUME_SPLICE_WORKS -DUSE_ACCEPT4 -DNETFILTER -DUSE_GETSOCKNAME -DUSE_OPENSSL 
 -DUSE_SYSCALL_FUTEX -DUSE_PCRE -I/usr/include  
-DCONFIG_HAPROXY_VERSION=\"1.5.11\" -DCONFIG_HAPROXY_DATE=\"2015/01/31\" -c -o 
src/base64.o src/base64.c
....

local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo make install
install -d "/usr/local/sbin"
install haproxy "/usr/local/sbin"
install haproxy-systemd-wrapper "/usr/local/sbin"
install -d "/usr/local/share/man"/man1
install -m 644 doc/haproxy.1 "/usr/local/share/man"/man1
install -d "/usr/local/doc/haproxy"
for x in configuration architecture haproxy-en haproxy-fr; do \
                install -m 644 doc/$x.txt "/usr/local/doc/haproxy" ; \
        done

5) Service start
local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo vi /etc/init.d/haproxy
HAPROXY=/usr/local/sbin/haproxy

local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo mkdir /var/lib/haproxy

local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo chown -R haproxy:haproxy 
/var/lib/haproxy

local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo /etc/init.d/haproxy start
* Starting haproxy haproxy                                              [ OK ]

6) Checking if HA-Proxy 1.5 is running
local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo /etc/init.d/haproxy status
haproxy is running.

7) Re-configuration of HA-Proxy 
local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo vi /etc/haproxy/haproxy.cfg
global
        log 127.0.0.1    local0 
        log 127.0.0.1    local1 notice     
        maxconn          45000          # Total Max Connections. This is 
dependent on your limit
        user             haproxy
        group            haproxy
        daemon
        nbproc           4              # Number of processors, quad-core by 
default
        chroot           /var/lib/haproxy
        pidfile          /var/run/haproxy.pid
        tune.ssl.default-dh-param 2048

defaults
        log              global
        mode             tcp
        option           tcplog
        #option           dontlognull
        option           redispatch        
        retries          3
        timeout queue    1m
        timeout connect  10s
        timeout client   1m
        timeout server   1m
        timeout check    10s
        maxconn          2000
                
frontend  pgdbplatform_frontend_cluster01
        bind             *:5432
        mode             tcp
        timeout client   168h
        option           tcplog
        option           logasap
        default_backend  pgdbplatform_backend_cluster01

backend  pgdbplatform_backend_cluster01
        mode             tcp
        option           tcplog
        balance          roundrobin      # Load Balancing algorithm
        timeout server   168h
            server           Primary         10.236.49.12:5432         check
        server           HotStandby      172.24.22.68:5432         check
        server           AsyncStandby    10.236.134.187:5432       check
                        
                        
local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo /etc/init.d/haproxy restart

7) Checking if HA-Proxy is listening on Ports

local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ netstat -napt | grep 5432
(No info could be read for "-p": geteuid()=1000 but you should be root.)
tcp        0      0 0.0.0.0:5432            0.0.0.0:*               LISTEN      
-
tcp        0      0 10.236.49.12:5432       10.236.134.187:43864    ESTABLISHED 
-
tcp        0      0 10.236.49.12:5432       10.236.49.12:51766      ESTABLISHED 
-
tcp        0      0 10.236.49.12:5432       10.236.49.12:51765      ESTABLISHED 
-
tcp        0      0 10.236.49.12:5432       172.24.22.68:44906      ESTABLISHED 
-
tcp        0      0 10.236.49.12:54997      172.24.22.68:5432       ESTABLISHED 
-
tcp        0      0 10.236.49.12:57405      10.236.134.187:5432     ESTABLISHED 
-
tcp        0      0 10.236.49.12:51766      10.236.49.12:5432       ESTABLISHED 
-
tcp        0      0 10.236.49.12:51765      10.236.49.12:5432       ESTABLISHED 
-
tcp6       0      0 :::5432                 :::*                    LISTEN      
-

8) Syslog turning on
local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo mv 
/etc/logrotate.d/rsyslog.disabled  /etc/logrotate.d/rsyslog

local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo service rsyslog restart

9) Syslog reset 
local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo vi /etc/rsyslog.conf

-----------------------------------------------------------------------------------------
# Custom log facilities for haproxy
local0.*                        /var/log/haproxy_0.log
& ~
local1.*                        /var/log/haproxy_1.log
& ~

$ModLoad imuxsock # provides support for local system logging
$ModLoad imklog   # provides kernel logging support
#$ModLoad immark  # provides --MARK-- message capability

# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# local IP address (or name) the UDP listens should bind to
#$UDPServerAddress 127.0.0.1

# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

# $ModLoad ompgsql
# *.* :ompgsql:127.0.0.1,rsyslogdb,rsysloguser,centos
$AllowedSender UDP, 127.0.0.1, 10.236.49.12/32
$AllowedSender TCP, 127.0.0.1, 10.236.49.12/32

###########################
#### GLOBAL DIRECTIVES ####
###########################

#
# Use traditional timestamp format.
# To enable high precision timestamps, comment out the following line.
#
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

# Filter duplicated messages
$RepeatedMsgReduction on

#
# Set the default permissions for all log files.
#
$FileOwner root
$FileGroup root
$FileCreateMode 0600
$DirCreateMode 0755
$Umask 0066
$PrivDropToUser root
$PrivDropToGroup root

#
# Where to place spool and state files
#
$WorkDirectory /var/spool/rsyslog

#
# Include all config files in /etc/rsyslog.d/
#
$IncludeConfig /etc/rsyslog.d/*.conf
-----------------------------------------------------------------------------------------

10) Log fixing 

local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo vi 
/etc/rsyslog.d/haproxy.conf

-----------------------------------------------------------------------------------------
# Custom log facilities for haproxy
local0.*                        /var/log/haproxy_0.log 
local1.*                        /var/log/haproxy_1.log

$ModLoad imudp

#$UDPServerAddress 127.0.0.1
$UDPServerRun 514

$ModLoad imuxsock  
$ModLoad imklog 

$ModLoad imtcp
$InputTCPServerRun 514

# $ModLoad ompgsql
# *.* :ompgsql:127.0.0.1,rsyslogdb,rsysloguser,centos

$AllowedSender UDP, 127.0.0.1, 10.236.49.12/32
$AllowedSender TCP, 127.0.0.1, 10.236.49.12/32

$IncludeConfig /etc/rsyslog.d/*.conf
-----------------------------------------------------------------------------------------


local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo vi 
/etc/rsyslog.d/50-default.conf

-----------------------------------------------------------------------------------------
#  Default rules for rsyslog.
#
#                       For more information see rsyslog.conf(5) and 
/etc/rsyslog.conf

#
# First some standard log files.  Log by facility.
#
auth,authpriv.*                 /var/log/auth.log
*.*;auth,authpriv.none,local0,local1.none               -/var/log/syslog
#cron.*                         /var/log/cron.log
#daemon.*                       -/var/log/daemon.log
kern.*                          -/var/log/kern.log
#lpr.*                          -/var/log/lpr.log
mail.*                          -/var/log/mail.log
#user.*                         -/var/log/user.log

#
# Logging for the mail system.  Split it up so that
# it is easy to write scripts to parse these files.
#
#mail.info                      -/var/log/mail.info
#mail.warn                      -/var/log/mail.warn
mail.err                        /var/log/mail.err

#
# Logging for INN news system.
#
news.crit                       /var/log/news/news.crit
news.err                        /var/log/news/news.err
news.notice                     -/var/log/news/news.notice

#
# Some "catch-all" log files.
#
#*.=debug;\
#       auth,authpriv.none;\
#       news.none;mail.none     -/var/log/debug
#*.=info;*.=notice;*.=warn;\
#       auth,authpriv.none;\
#       cron,daemon.none;\
#       mail,news.none          -/var/log/messages

#
# Emergencies are sent to everybody logged in.
#
*.emerg                                :omusrmsg:*

#
# I like to have messages displayed on the console, but only on a virtual
# console I usually leave idle.
#
#daemon,mail.*;\
#       news.=crit;news.=err;news.=notice;\
#       *.=debug;*.=info;\
#       *.=notice;*.=warn       /dev/tty8

# The named pipe /dev/xconsole is for the `xconsole' utility.  To use it,
# you must invoke `xconsole' with the `-file' option:
#
#    $ xconsole -file /dev/xconsole [...]
#
# NOTE: adjust the list below, or you'll go crazy if you have a reasonably
#      busy site..
#
daemon.*;mail.*;\
        news.err;\
        *.=debug;*.=info;\
        *.=notice;*.=warn       |/dev/xconsole
-----------------------------------------------------------------------------------------


local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo service rsyslog restart

11) Rotate Logs
local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo vi /etc/logrotate.d/haproxy

-----------------------------------------------------------------------------------------
/var/log/haproxy.log {
    weekly
    rotate 4
    missingok
    notifempty
    compress
    delaycompress
    postrotate
        invoke-rc.d rsyslog rotate >/dev/null 2>&1 || true
    endscript
}
-----------------------------------------------------------------------------------------

12) Reloading haproxy.conf by running the following command:
local@PGSYNCTEST:/usr/local/src/haproxy-1.5.11$ sudo haproxy -f 
/etc/haproxy/haproxy.cfg -p /var/run/haproxy.pid -sf $(sudo cat 
/var/run/haproxy.pid)

Reply via email to