[CentOS] NIS failover

Thu Dec 17 20:22:45 UTC 2009
Jason Pyeron <jpyeron at pdinc.us>

 

> -----Original Message-----
> From: centos-bounces at centos.org 
> [mailto:centos-bounces at centos.org] On Behalf Of Jason Pyeron
> Sent: Thursday, December 17, 2009 14:37
> To: 'CentOS mailing list'
> Subject: [CentOS] NIS failover
> 
> We just updated our configuratiosn to have multiple NIS 
> servers, when we initiated a test of client failover, we were 
> disapointed.
> 
> It seemed that the only way to get a filaover was to 
> /etc/init.d/ypbind restart.
> 
> It behaves as indicated in
> http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=508
4845 using
> ypbind-1.17.2-13 on Centos 4.5 / Linux xxxxxxxxxxxx 
> 2.6.9-55.0.12.ELsmp #1 SMP Fri Nov 2 12:38:56 EDT 2007 x86_64 
> x86_64 x86_64 GNU/Linux
> 
> http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=4858192
> 
> 
> Any advice?

So, avoiding the security flamewars...

It seems that it behaves slightly different than I indicated before.

Snippet of the strace for # ypcat passwd
...
mprotect(0x2a9566a000, 4096, PROT_READ) = 0
arch_prctl(ARCH_SET_FS, 0x2a959bde00)   = 0
munmap(0x2a9556c000, 33321)             = 0
brk(0)                                  = 0x503000
brk(0x524000)                           = 0x524000
open("/usr/lib/locale/locale-archive", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=48528816, ...}) = 0
mmap(NULL, 48528816, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2a959bf000
close(3)                                = 0
uname({sys="Linux", node="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", ...}) = 0
open("/var/yp/nicknames", O_RDONLY)     = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=185, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a98807000
read(3, "passwd\t\tpasswd.byname\ngroup\t\tgro"..., 4096) = 185
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x2a98807000, 4096)              = 0
open("/var/yp/binding/XXXXXXXXXXXXXXXXXXX.2", O_RDONLY) = 3
pread(3, "\1\0\0\0\300\250\1\"\2\315\0\0", 12, 2) = 12
socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 4
getpid()                                = 13062
bind(4, {sa_family=AF_INET, sin_port=htons(942), sin_addr=inet_addr("0.0.0.0")},
16) = 0
ioctl(4, FIONBIO, [1])                  = 0
setsockopt(4, SOL_IP, IP_RECVERR, [1], 4) = 0
fcntl(4, F_SETFD, FD_CLOEXEC)           = 0
close(3)                                = 0
close(4)                                = 0
socket(PF_INET, SOCK_STREAM, IPPROTO_TCP) = 3
bind(3, {sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("0.0.0.0")},
16) = 0
connect(3, {sa_family=AF_INET, sin_port=htons(111),
sin_addr=inet_addr("192.168.1.34")}, 16) = -1 ETIMEDOUT (Connection timed out)
close(3)                                = 0
socket(PF_INET, SOCK_STREAM, IPPROTO_TCP) = 3
bind(3, {sa_family=AF_INET, sin_port=htons(943), sin_addr=inet_addr("0.0.0.0")},
16) = 0
connect(3, {sa_family=AF_INET, sin_port=htons(111),
sin_addr=inet_addr("192.168.1.34")}, 16 <unfinished ...>

Then when I ^C it and run again it has failed over, but otherwise it hangs there
for more than 300 seconds.

--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-                                                               -
- Jason Pyeron                      PD Inc. http://www.pdinc.us -
- Principal Consultant              10 West 24th Street #100    -
- +1 (443) 269-1555 x333            Baltimore, Maryland 21218   -
-                                                               -
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
This message is copyright PD Inc, subject to license 20080407P00.