Amazon announced another price cut today and anaylists are all about "there's more margin in VMs", "Microsoft Azure finds it tough to compete", and so on.
Being in storage I'm obviously biased, but I think the price cuts in S3 and Glacier are more consequential. All that data is like savings account for Amazon. Any time they need cash, they can just increase prices right back, and what are you going to do? Data is not VMs, you cannot just download it all overnight, you cannot migrate off the service.
Obviously things are not that simple, and they are trying to bind code to AWS in ways that yield similar inertia to the data. As Adrian Cockroft tweeted, "OpenStack not closing the gap". Cut him a slack though, he was at NetFlix, and it was 4 years ago. One way or the other, data's inertia is natural and code's inertia is artificial — it's something engineers can fix.