2

I'm trying to setup a simple virtual server in Keepalived and when the servers get removed from the pool, they do not get re-added automatically. In the Keepalived server syslog I see:

Oct 01 11:37:39 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:40 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:40 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:41 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:44 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:47 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:48 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:48 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:49 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:49 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:50 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:50 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:51 lb2 kernel:  IPVS: WRR: no destination available: no destinations present
Oct 01 11:37:51 lb2 kernel:  IPVS: WRR: no destination available: no destinations present

ipvsadm outputs:

[ashinn@lb2 ~]$ sudo ipvsadm

IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
FWM  700000 wrr persistent 300

Here is the relevant part from the keepalived.conf:

virtual_server fwmark 700000 {
    delay_loop 20
    lb_algo wrr
    lb_kind NAT
    persistence_timeout 300
    protocol TCP

    real_server 10.10.35.11 443 {
        weight 24
        SSL_GET {
            url {
                path /check.php
            }
        }
    }

    real_server 10.10.35.12 443 {
        weight 24
        SSL_GET {
            url {
                path /check.php
            }
        }
    }
}

The Keepalived server can indeed reach the real servers:

[ashinn@lb2 ~]$ curl -k https://10.10.35.11/check.php
FAIL<br/>
/usr/bin/mencoder is not executable.<br/>
dio extension is not loaded.<br/>

Any idea why the servers don't get re-added after they are removed?

dawud
  • 15,096
  • 3
  • 42
  • 61
Andy Shinn
  • 4,211
  • 8
  • 40
  • 55

0 Answers0