All of lore.kernel.org
 help / color / mirror / Atom feed
* OSD rebind connects to ports of other OSDs
@ 2016-12-20 10:21 Willem Jan Withagen
  2016-12-20 15:00 ` Willem Jan Withagen
  2016-12-20 15:06 ` Mykola Golub
  0 siblings, 2 replies; 11+ messages in thread
From: Willem Jan Withagen @ 2016-12-20 10:21 UTC (permalink / raw)
  To: Ceph Development

Hi,

I've been banging my head against the wall for some time now.
But rebinding OSD.0 (in cephtool-test-mon.sh) does not quite work.

When rebinding it connects to the ports of OSD.1 because those ports are
the first not in the avoid_list. That should be refused since these
sockets belong to a different process.
UNLESS SO_REUSEPORT is set:
 SO_REUSEPORT allows completely duplicate bindings by multiple processes
 if they all set SO_REUSEPORT before binding the port.  This option
 permits multiple instances of a program to each receive UDP/IP
 multicast or broadcast datagrams destined for the bound port.

Which seems that that happens.
Output from sockstat in this state:
wjw      ceph-osd-0   43305 14 tcp4   *:6800                *:*
wjw      ceph-osd-0   43305 15 tcp4   127.0.0.1:6804        *:*
wjw      ceph-osd-0   43305 16 tcp4   127.0.0.1:6805        *:*
wjw      ceph-osd-0   43305 45 tcp4   127.0.0.1:6806        *:*
wjw      ceph-osd-1   43318 14 tcp4   *:6804                *:*
wjw      ceph-osd-1   43318 15 tcp4   *:6805                *:*
wjw      ceph-osd-1   43318 16 tcp4   *:6806                *:*
wjw      ceph-osd-1   43318 17 tcp4   *:6807                *:*

Which clearly demonstrates the mess.
How ever that option is nowhere set in the ceph-code, neither is it a
setting that "just" gets set.

Any suggestions where to look for this option to get set in an
incidental/bug way would be much appreciated.
Or a suggestion on how to easily debug this.

Thanx,
--WjW

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2016-12-20 18:48 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-12-20 10:21 OSD rebind connects to ports of other OSDs Willem Jan Withagen
2016-12-20 15:00 ` Willem Jan Withagen
2016-12-20 15:23   ` Sage Weil
2016-12-20 15:50     ` Willem Jan Withagen
2016-12-20 17:31     ` Mykola Golub
2016-12-20 18:39     ` Willem Jan Withagen
2016-12-20 18:43       ` Sage Weil
2016-12-20 18:48         ` Willem Jan Withagen
2016-12-20 15:06 ` Mykola Golub
2016-12-20 16:48   ` Willem Jan Withagen
2016-12-20 17:23     ` Mykola Golub

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.