Making sure droplets are on different physical servers or server racks

Posted October 16, 2016 5k views
High Availability

I would like to use multiple droplets that will host the same service to achieve high availability. If one droplet fails, another will take over. I still want to have a fast, low-latency connection between the droplets, so they all are going to be in the same datacenter.

How do I ensure that two droplets do not run on the same physical machine? How can I tell if two droplets share the same server rack?

I need to spread out my droplets to different physical servers mounted on different racks to ensure availability in case of a hardware failure or an issue with a whole rack.

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
2 answers

You will have hard time with this. You will need to contact support so they can assist you with request. Maybe they can create Droplets for on you on different machines/racks in datacenter.

One thing I found “funny” in API docs are Droplet Neighbors.
Description of it says:

To retrieve a list of droplets that are running on the same physical server, send a GET request to /v2/droplets/:id/neighbors

I never test or used this, but maybe it will return you Droplet data if you have more than on same physical machine. It will still not help you different rack, but maybe it can help with server. :)

As far as I’m aware, you have nothing to do. Droplets will be spread out.

You can confirm that this is the case by contacting support.