ceph does not seem to be very resilient to network moves and changes. Perhaps because the IP address is stored as an identification of the systems that make up the ceph cluster.
The problem: recently our cluster was physically moved with very little warning, ceph was closed down and the systems were shutdown just prior to the move. The new location had different IP address allocation and ceph did not boot correctly when the cluster was powered back on and was allocated new IP addresses.
Possible solutions: Avoid persistent store of IP address and host name. Instead, when the ceph cluster is booted, the association between host name and physical devices should be made at run time.
If IP address and host name have to be kept in persistent store there should be a tool to enable easy migration between different network configurations.
More on the failure case The ceph-mon.*.asok sockets did not exist because the monitor service would not start. The errors preventing start of the monitor appeared to be that the monitor could not connect to the cluster - because as stated our cluster was shut down quickly and the IP addresses were not change in a controlled way. The monitor log is full of the attempts to start with the following bind error: Processor -- bind was unable to bind after 3 attempts: (99) Cannot assign requested address
Things that were tried to migrate to the new network configuration Starting point was to update ceph.conf with the new IP address configuration and to re-run ceph-deploy admin (the ceph version is a Nautilus) to push the new admin configuration to the network. This however does not update the ceph crush maps. Various old discussions for example https://tracker.ceph.com/issues/3550 were studied and the user documents https://docs.ceph.com/en/latest/rados/operations/add-or-rm-mons/#changing-a-monitor-s-ip-address, but no real workable solution for this was found.
So I am asking this question to see if anyone else has had the same problem and if so, what the real experts think about only associating host name / IP address and physical devices at run time and implementing a discovery stage during ceph boot where the association is made. Or of course perhaps there is another better solution?