Digital Ocean - Check Physical Separation

If you are running a cluster, such as for Ceph or RethinkDB, then chances are that it can gracefully recover as long as the nodes fail at different times. This means that you don't want your nodes to be on the same physical host if they are deployed through "the cloud". Luckily for us, Digital Ocean can let you know if this is the case, with their latest 2.0 API.

Steps

First you need to go the API Page and click "generate new token" if you haven't already gotten one.

If you are running Linux, you can simply enter the API token into the following command to find out if you have any nodes on the same physical node. Make sure to replace the [] which we use to specify where to put the token.

curl -X \
GET -H 'Content-Type: application/json'\
-H 'Authorization: Bearer [put your API token here]' \
"https://api.digitalocean.com/v2/reports/droplet_neighbors"

If all your droplets are on different hosts, then you should get the following output:

{"neighbors":[]}

Alternative Method

If you are a non-Linux user, or you hate the command line, you can copy this text into a text editor, such as notepad, and save it into a file with the .html extension. Then double click the file you just created to open it in your default web browser.

Once it's open, put the token into the top field and click the button to find out if any of your nodes share the same host.

If they are all physically separated, then the lower textbox should show:

{"neighbors":[]}

More Info

For more information about the various requests you can make with your new API token, simply read through their docs.

Author

Programster

Stuart is a software developer with a passion for Linux and open source projects.

comments powered by Disqus