What are the costs associated with having an Azure VM image? - azure

Azure images does not seem to be a category in the Azure pricing calculator.
Is there a cost for storing VM images on Azure?

Look here for details on Managed Images of a generalized VM in Azure and here for pricing.
If you want to store them as unmanaged disks (i.e. manage/maintain them yourself) then you can use a storage account and look at pricing information here.
If you are talking about container images, you can look here.

Related

Managed disks in Azure

I want to know restrictions in Azure Managed disks. Which is asked in Interview.
what are the restrictions for customers using managed disks in Azure
Azure Managed Disks are managed by Microsoft Azure and you don't need any storage account while created new disk. Since the storage account is managed by Azure you do not have full control of the disks that are being created that is one limitation that we have with managed disks. There are no other specific restrictions as such with managed disks. They are widely used in Azure and is highly recommended.
Adding more..
Managed disks brought new experience and features to Azure VM storage that permits better controlling the VM storage. Azure recommends using managed disks, even if the ‘Pay as you consume’ model is not adopted there. But the features and the simplicity is worth the ‘little’ difference we can see with pricing.
There is also nice practical differences summary here between managed and unmanaged disks that might come handy as you will be able to understand what is useful in various configuration needs.
Happy Learning!

Azure VM to Azure Blob Storage Data Transfer Costs

I have a system set up in Microsoft Azure where an Azure VM connects to Azure Blob store and downloads a file for processing. A new output file is generated and the uploaded back into the Azure Blob Store. The output file is several orders of magnitude larger than the input file.
The Azure VM accesses the blob storage through an endpoint like:- "https://xxxxxx.blob.core.windows.net/". Where xxxxxx is the blob store name, redacted for privacy.
My question is, when I upload the output file into the Azure Blob store through that endpoint, does the traffic from the VM count as egress to the internet? I.e. is it chargable? I have trawled through the documentation on the Microsoft Website and even spoken directly with a Microsoft Sales representative and I get conflicting information.
For example you can see this on the MS Website:- Azure Screenshot. But the MS representative was adamant that it would be charged. Obviously this has huge implications on cost for us. In fact, as ingress traffic is free, it may even prove cheaper to host the application outside the Azure cloud!
So, can someone set me straight, will this bandwidth be chargeable? If so, is there a way to avoid this charge? Through some special VNet peering or something?
Thanks Stack Overflow Community!
So, after much experimentation, I have concluded that all traffic between Microsoft Services and your VM's is free. This is true, even if you connect to them from an external IP address provided that you connect to them from the same data centre (i.e. EU North). This was tested with over 6TB of upload from an Azure VM to Azure BLOB store without any cost incurred.
There is rumour that this might change when Microsoft Azure starts to charge for bandwidth between Availability Zones in early 2021. So, if you're relying on this information in the future I advise you to double check and experiment before you commit to nay huge data transfers.
I would say it depends of the region, if both VM and blob are really in the same region, and specially in the same vnet and availability zone it shouldn't be charged.
My recommendation is to test and if it happens to be charged you could open a support request to get the details, they will explain to you why it was charged and if there is a workaround.
There is something wrong that you understand about the outbound data transfers. It means going out of the Azure data center. This is the basic limitation. All the Azure resources are located in the Azure data center. In the same region means in the same Azure data center and the data transfer is in the internal network of the data center without going through the Internet. So it is not charged. On the other hand, the different regions mean different data centers, then the data transfer will go through the Internet, and then it's charged.
To avoid the charge for the request from the VM to the Azure Blob Store. The first thing is to put both the VM and the Azure Blob Store in the same region. And you can use the private endpoint of the Azure Blob Store. In this way, the request will be in the same VNet and do not go through the Internet so that it's not chargeable. Here are the steps to achieve it.

Azure StorageV2 public containers

We have stored 200.000+ images in a classic azure blob account with standard performance. We include the blob URLs in the HTML of our application so the browser downloads the images directly from the blob storage. However, this is really slow. A simple 2kb image can take up to 200ms to download. Download speeds are irregular.
I made a new storage account, now V2 with premium performance. However, now I can't make any public containers anymore. The portal returns the error: 'This is a premium 'StorageV2 (general purpose v2)' account. Containers within this storage account must be set to 'private' access level.'
How can I host images in an Azure environment with good performance without having to deploy them on my web role?
Azure storage V2 with premium only supports private access level. You should consider using BlockBlobStorage accounts with premium in your case, which supports the public access.
And here is the benefit of BlockBlobStorage accounts:
Compared with general-purpose v2 and BlobStorage accounts, BlockBlobStorage accounts provide low and consistent latency, and higher transaction rates.
Here is the screenshot of create a BlockBlobStorage accounts with premium:
Azure storage account have certain limits (like, 20000 IOPS limit per account) which might interfere with performance at the scale you are talking about. Steps you can take to check if this is the root case - split your images into several storage accounts and see if that fixes performance.
Alternatively (and probably better) you should use Azure CDN attached to the storage account to fix this performance issue (and even make it faster).
https://learn.microsoft.com/en-us/azure/cdn/cdn-create-a-storage-account-with-cdn

Azure storage pricing : Charged for 30 gb?

Hy ppl , I dont understand how azure storage is charged for around 34gb in my subscription. We havent used that much storage space.
I heard there is a quest tool for azure storage explorer.How useful is that ?
Many Thanks.
Are you using Virtual Machines? If that's the case, you have to know that persisted disks are stored as page blobs in your storage account, and you're charged for that. The pricing details page explains why:
Compute hours do not include any Windows Azure Storage costs
associated with the image running in Windows Azure Virtual Machines.
These costs are billed separately. For a full description of how
compute hours are calculated, please refer to the Cloud Services
section.
If you want to know more details on how much data you've used per storage account/day/location/... I suggest you take a look on the subscriptions page. After choosing a subscription you can export a detailed CSV file you can analyse.

Getting Started with Azure Question

I'm trying to get up-and-going with Windows Azure. I understand that I need to create a "Storage Account". However, what I'm confused about is, how I should set it up. For instance, my Azure subscription is set to my company name. I intend to have multiple ASP.NET web applications (web roles) associated with my subscription. Each web application will have its own database.
My question is, should each web application have its own storage account? Or should only one storage account be used for all of my projects?
Thank you!
There's no one way to answer this, but here are some thoughts to help your decision:
Each storage account is limited to 100TB. If you feel that you will push the limits of this across multiple websites, then create multiple storage accounts for sure.
To make billing easier, I'd suggest separate storage accounts
Storage accounts have an SLA of a few thousand transactions per second across the entire storage account. For performance purposes, it's probably better to have separate storage accounts
Consider putting your diagnostic data in a separate storage account. This way, you can safely give your Storage Account key to a 3rd-party like ParaLeap (creators of AzureWatch) for monitoring your app, while not giving away the key to real customer data, for instance.
If you need more than 5 storage accounts, you'll need to contact Customer Support to increase this number.
Windows Azure Storage server is for simple blob storage. This is for when your app needs a file store. Any application, not just Azure web roles, can target a storage service. It's kind of like Amazon S3 if you're familiar with that.
Storage services are not required to run Azure applications. You just need a "compute" instance.

Resources