WHY A VM ON A CLOUD SERVICE?
WHY NOT A DEDICATED SERVER? OR A PAAS SERVICE LIKE HEROKU?
tl;dr-it's a balancing act between advantages of abstraction layers
Extremely easy setup, trivial scaling, etc.
Configurability, determinism in performance, etc.
Services like Azure, EC2, etc., imo, a sweet spot