According to my understanding, osd's heartbeat partners only come from those osds who assume the same pg

That was my initial assumption too.
But according to my experience set of heartbeat peers include pg peers and some other osds.

Actually it contains:
- pg peers
- next and previous osd by id, e.g. osd.1 is peer for osd.0 and osd.2
- optionally - random heartbeat peers (according to osd_heartbeat_min_peers config option)

And, btw, heartbeat peers are not symmetric - for example osd.0 can send heartbeat requests to osd.2, but osd.2 do not send requests to osd.0.

You can check it in OSD::maybe_update_heartbeat_peers()


Best regards!
Aleksei Gutikov
ceph-users mailing list --
To unsubscribe send an email to

Reply via email to