Re: pulse SIOCGIFADDR failed error on startup
"Matthew J. Probst" <[email protected]> Fri, 05 Oct 2007 15:08:23 -0600
| Newsgroups | gmane.linux.redhat.piranha |
|---|---|
| Message-ID | <[email protected]> |
Hi Sanjay, Thanks for the ideas. I've verified that nothing else is bound to port 80: [root@ca1-lb1 ~]# lsof|grep LISTEN sshd 2607 root 3u IPv6 7001 TCP *:ssh (LISTEN) sendmail 2631 root 4u IPv4 7106 TCP localhost.localdomain:smtp (LISTEN) snmpd 3107 root 8u IPv4 9842 TCP localhost.localdomain:smux (LISTEN) [root@ca1-lb1 ~]# and the error list I sent in my earlier email were from using the "-v" and "-n" (foreground) pulse options. -matt Sanjay Mahapatra wrote: Hi Matt I would consider running netstat to ensure that some other process is not already bound to the port(80) Also ( if you aren't doing so ) please consider using the "-v" verbose/debug flag in the pulse startup script: daemon pulse -v and monitor /var/log/messages to see if the underlying cause of >> SIOCGIFADDR failed: Cannot assign requested address is disclosed therein. Sanjay Mahapatra "Matthew J. Probst" <[email protected]> wrote: Hi, When I start pulse (either the rc script or from command line) I get a SIOCGIFADDR failed error. When I run pulse from the command line: /usr/sbin/pulse -c /etc/sysconfig/ha/lvs.cf -n -v Here's the output: (I've replaced the actual public VIP that I'm using with ): pulse: SIOCGIFADDR failed: Cannot assign requested address pulse: SIOCGIFADDR failed: Cannot assign requested address pulse: SIOCGIFADDR failed: Cannot assign requested address pulse: STARTING PULSE AS MASTER pulse: DEBUG -- setting SEND_heartbeat timer pulse: DEBUG -- setting SEND_heartbeat timer pulse: DEBUG -- setting SEND_heartbeat timer pulse: DEBUG -- setting NEED_heartbeat timer pulse: partner dead: activating lvs lvs: starting virtual service wwwlb.mydomain.com active: 80 nanny: starting LVS client monitor for :80 nanny: Send_program is NULL nanny: Send_string len=38, text="GET http://www.mydomain.com/ HTTP/1.0 " nanny: Expect_string len=15, text="HTTP/1.1 200 OK" nanny: Service_type value=2 nanny: Opening TCP socket to remote service port 80... nanny: Connecting socket to remote address... nanny: DEBUG -- Posting CONNECT poll() lvs: create_monitor for wwwlb.mydomain.com/ca1-web1 running as pid 4141 pulse: DEBUG -- setting SEND_heartbeat timer pulse: DEBUG -- Executing '/sbin/ifconfig bond0.2:0 netmask 255.255.255.224 up' nanny: Sending len=38, text="GET http://www.mydomain.com/ HTTP/1.0 " nanny: DEBUG -- Posting READ poll() pulse: DEBUG -- Executing '/usr/sbin/send_arp' nanny: DEBUG -- READ poll() completed (1,1) nanny: Posting READ I/O; expecting 15 character(s)... nanny: DEBUG -- READ returned 15 nanny: READ expected len=15, text="HTTP/1.1 200 OK" nanny: READ got len=15, text=HTTP/1.1 200 OK nanny: avail: 1 active: 0: count: 3 nanny: making 10.3.1.3:80 available pulse: gratuitous lvs arps finished pulse: DEBUG -- setting SEND_heartbeat timer nanny: Opening TCP socket to remote service port 80... nanny: Connecting socket to remote address... nanny: DEBUG -- Posting CONNECT poll() nanny: Sending len=38, text="GET http://www.mydomain.com/ HTTP/1.0 " nanny: DEBUG -- Posting READ poll() nanny: DEBUG -- READ poll() completed (1,1) nanny: Posting READ I/O; expecting 15 character(s)... nanny: DEBUG -- READ returned 15 nanny: READ expected len=15, text="HTTP/1.1 200 OK" nanny: READ got len=15, text=HTTP/1.1 200 OK nanny: avail: 1 active: 1: count: 4 ---- My kernel is: 2.6.18-8.1.14.el5 I'm running piranha.x86_64 version 0.8.4-7.el5 I've trimmed down the lvs conf file to a minimum and I've turned off SELinux. Here's the lvs.cf file I'm using (replaced the public VIP with and the primary public ip of the director with ) serial_no = 51 primary = primary_private = 10.3.1.1 service = lvs backup_active = 0 heartbeat = 0 heartbeat_port = 539 keepalive = 6 deadtime = 18 network = direct debug_level = NONE monitor_links = 0 virtual wwwlb.mydomain.com { active = 1 address = bond0.2:0 vip_nmask = 255.255.255.224 port = 80 send = "GET http://www.mydomain.com/ HTTP/1.0\r\n\r\n" expect = "HTTP/1.1 200 OK" use_regex = 0 load_monitor = none scheduler = wlc protocol = tcp timeout = 6 reentry = 15 quiesce_server = 0 server ca1-web1 { address = 10.3.1.3 active = 1 weight = 1 } } --- Here are the relevant network interfaces: bond0.2 Link encap:Ethernet HWaddr 00:30:48:34:2C:D8 inet addr: Bcast: Mask:255.255.255.224 inet6 addr: fe80::230:48ff:fe34:2cd8/64 Scope:Link UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1 RX packets:5990 errors:0 dropped:0 overruns:0 frame:0 TX packets:4400 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2363411 (2.2 MiB) TX bytes:471985 (460.9 KiB) bond0.3 Link encap:Ethernet HWaddr 00:30:48:34:2C:D8 inet addr:10.3.1.1 Bcast:10.3.255.255 Mask:255.255.0.0 inet6 addr: fe80::230:48ff:fe34:2cd8/64 Scope:Link UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1 RX packets:2707 errors:0 dropped:0 overruns:0 frame:0 TX packets:3333 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:369502 (360.8 KiB) TX bytes:264616 (258.4 KiB) ------ I can tell that this error is coming from the getInterfaceAddress() function in pulse.c, and I'm wondering if this has to do with the fact that I'm using a vlan interface on top of a bonded link (bond0.2:0 being the network interface name)? Any suggestions/help would be greatly appreciated. -matt _______________________________________________ Piranha-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/piranha-list ---------- _______________________________________________ Piranha-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/piranha-list _______________________________________________ Piranha-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/piranha-list