martes, 24 de abril de 2012 2:40
Looking into Azure as an alternative to aws as I use .net windows instances on aws and was just after some clarification after reading some horror billing stories on this site and others if vm, web and worker roles in their stopped states dont incur compute hours like aws's ebs backed instances and just storage charges?
Todas las respuestas
martes, 24 de abril de 2012 3:05
Stopped instances are charged exactly the same way as running instances. Just don't leave your instances lying around in the "stopped" state.
On Windows Azure, "stopped" means the VM is running as normal, but your application has been stopped. (It's like killing a process. The computer's still running.)
martes, 24 de abril de 2012 3:12
Thanks for the answer steve, does azure support any type of persistant storage ala aws's ebs storage? e.g can you launch a role from storage?
I am assuming no and that web and worker roles would need to be re-deployed. I imagine this could be circumvented with code anyway but wondering what the tools are actually like without having signed up for them.
martes, 24 de abril de 2012 5:16
Windows Azure has a number of persistent storage mechanisms. Windows Azure Drives are the most similar to EBS, in that they're mountable drives that are persistent. But for just relaunching a Windows Azure deployment, that's typically done from blob storage (analogous to S3). When you first deploy, you upload your deployment package (basically a zip file of your app) to blob storage and launch from there. When you want to stop the app, just delete the deployment. When you want to redeploy, just deploy the same package (still sitting in blob storage) again. If you do leave the package in blob storage, you'll pay for the storage used (at a rate of $0.125 per gigabyte per month).
Note that this model is a bit different from what people typically do in EC2. In EC2, you typically start from a roughly empty VM, and then make all your changes, optionally with the backing storage being provided by EBS. If you use EBS, it means that after you "terminate" an instance (like deleting in Windows Azure), you still have the full state of the VM sitting in EBS.
On Windows Azure, the model is a stateless one. You write all your code, produce a package with your app in it, and then launch it (on some VMs). The state of the VMs from then on is never persisted (unless you go out of your way to do so). So when you delete the deployment and redeploy later, you're back to the initial state (just your app, packaged up). I think this is generally a superior model, but if you're coming from the world of EC2, it may take some getting used to.
domingo, 29 de abril de 2012 2:52
As others have said, "stopped" instances do indeed incur compute hours, but because the instances are stateless, it's generally pretty fast to recreate them (re-publish) when needed.
You can use the 90 day free trial to get comfortable with the way things work. You can also set a spending limit to avoid any unpleasant surprises.