hi there - i searched a lot in your archives,
and found some people with the same issue - but no solution - so there's
a new post .
setup consists of 4 servers with 1 nic each.
the director's VIP is bound to eth0:0
while the main IP is used for some control functions and so on.
on localhost is a thttpd watching and responding if i use lynx.
the balancing is working fine - every real server is recognized once up
and deleted when down.
I can surf the VIP and get response from the real servers as i wanted.
But if all real-servers are down, i got a connection reset.
tcpdump output looks like this on the director :
#######################################
lb:~# tcpdump -vv port 80
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 96
bytes
01:25:17.129046 IP (tos 0x0, ttl 118, id 11454, offset 0, flags [DF],
proto: TCP (6), length: 48) CIP.4796 > VIP.www: S, cksum 0x0ef3
(correct), 1033102882:1033102882(0) win 65535 <mss 1440,nop,nop,sackOK>
01:25:17.157200 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto:
TCP (6), length: 40) VIP.www > CIP.4796: R, cksum 0x3b8f (correct),
0:0(0) ack 1033102883 win 0
01:25:17.685574 IP (tos 0x0, ttl 118, id 11527, offset 0, flags [DF],
proto: TCP (6), length: 48) CIP.4796 > VIP.www: S, cksum 0x0ef3
(correct), 1033102882:1033102882(0) win 65535 <mss 1440,nop,nop,sackOK>
01:25:17.685578 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto:
TCP (6), length: 40) VIP.www > CIP.4796: R, cksum 0x3b8f (correct),
0:0(0) ack 1 win 0
01:25:18.210517 IP (tos 0x0, ttl 118, id 11598, offset 0, flags [DF],
proto: TCP (6), length: 48) CIP.4796 > VIP.www: S, cksum 0x0ef3
(correct), 1033102882:1033102882(0) win 65535 <mss 1440,nop,nop,sackOK>
01:25:18.210521 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto:
TCP (6), length: 40) VIP.www > CIP.4796: R, cksum 0x3b8f (correct),
0:0(0) ack 1 win 0
6 packets captured
#########################################
my ldirectord.cf looks like this :
checktimeout=3
checkinterval=10
fallback=127.0.0.1:80
autoreload=yes
logfile="/var/log/ldirectord.log"
#logfile="local0"
quiescent=yes
# A sample virual with a fallback that will override the gobal setting
virtual=a.b.c.d:80
real=a.b.c.e:80 ipip 1
real=a.b.c.f:80 ipip 1
real=a.b.c.g:80 ipip 1
fallback=127.0.0.1:80
service=http
request="/test"
receive="ok"
virtualhost=www.xyz.de
scheduler=wlc
#persistent=600
#netmask=255.255.255.255
protocol=tcp
The next thing is : Is anyone going along with feedbackd ?
I read something that there were some ideas to integrate it into
keepalived only i can see it nowhere
and feedbackd-0.4 master produces ugly warnings, when used with 2.6.17
does anyone have a clue how to fix this ?
thank you in advance,
Malte
##########################################################
lb:/web/dev/feedbackd-master-0.4# make
gcc -DHAVE_CONFIG_H -I. -Wall -Wstrict-prototypes -Wunused -g -O2
-I/usr/include/libxml2 -I/lib/modules/2.6.17-1-k7/build/include -I ./ -c
src/feedbackd-master.c -o src/feedbackd-master.o
In file included from src/libipvs.h:14,
from src/feedbackd-master.h:38,
from src/feedbackd-master.c:26:
/lib/modules/2.6.17-1-k7/build/include/net/ip_vs.h:102: error: expected
specifier-qualifier-list before 'u_int16_t'
/lib/modules/2.6.17-1-k7/build/include/net/ip_vs.h:117: error: expected
specifier-qualifier-list before 'u_int32_t'
/lib/modules/2.6.17-1-k7/build/include/net/ip_vs.h:165: error: expected
specifier-qualifier-list before 'u_int16_t'
/lib/modules/2.6.17-1-k7/build/include/net/ip_vs.h:185: error: expected
specifier-qualifier-list before 'u_int32_t'
/lib/modules/2.6.17-1-k7/build/include/net/ip_vs.h:205: error: expected
specifier-qualifier-list before 'u_int16_t'
src/feedbackd-master.c: In function 'parse_virtual_service':
src/feedbackd-master.c:154: warning: pointer targets in assignment
differ in signedness
src/feedbackd-master.c:171: warning: pointer targets in assignment
differ in signedness
src/feedbackd-master.c:185: warning: pointer targets in assignment
differ in signedness
src/feedbackd-master.c:201: error: 'ipvs_service_t' has no member named
'protocol'
src/feedbackd-master.c:206: warning: pointer targets in assignment
differ in signedness
src/feedbackd-master.c:225: error: 'ipvs_service_t' has no member named
'addr'
src/feedbackd-master.c:232: warning: pointer targets in assignment
differ in signedness
src/feedbackd-master.c:233: error: 'ipvs_service_t' has no member named
'sched_name'
src/feedbackd-master.c:247: error: 'ipvs_service_t' has no member named
'addr'
src/feedbackd-master.c:253: error: 'ipvs_service_t' has no member named
'protocol'
src/feedbackd-master.c:261: error: 'ipvs_service_t' has no member named
'protocol'
src/feedbackd-master.c:262: error: 'ipvs_service_t' has no member named
'protocol'
src/feedbackd-master.c:285: error: 'ipvs_service_t' has no member named
'port'
src/feedbackd-master.c:295: error: 'ipvs_service_t' has no member named
'port'
src/feedbackd-master.c:300: error: 'ipvs_service_t' has no member named
'protocol'
src/feedbackd-master.c:301: error: 'ipvs_service_t' has no member named
'port'
src/feedbackd-master.c: In function 'dump_config':
src/feedbackd-master.c:400: error: 'ipvs_service_t' has no member named
'addr'
src/feedbackd-master.c:400: error: 'ipvs_service_t' has no member named
'addr'
src/feedbackd-master.c:400: error: 'ipvs_service_t' has no member named
'addr'
src/feedbackd-master.c:400: error: 'ipvs_service_t' has no member named
'addr'
src/feedbackd-master.c:401: error: 'ipvs_service_t' has no member named
'protocol'
src/feedbackd-master.c:402: error: 'ipvs_service_t' has no member named
'port'
src/feedbackd-master.c:403: error: 'ipvs_service_t' has no member named
'sched_name'
make: *** [src/feedbackd-master.o] Error 1
|