I am new to the Azure platform and hosting in general and I am currently moving some web apps to Azure Paas and have configured a single App Service Plan which contains 3 applications.
I have read all the documentation I can find and I know the plan guarantees 99.95% up time but I cant find any info in regard to hardware failures. i.e. if there is a hardware failure on a rack where my app is hosted am I automatically covered by the plan? Does my app exist in multiple fault domains?
Hope someone can help
Thanks
You can see the details here. I'd say hardware failures are considered as downtime:
https://azure.microsoft.com/en-us/support/legal/sla/app-service/v1_4/
Microsoft guarantee that Apps running in a customer subscription will be available 99.95% of the time.
Note: No SLA is provided for Apps under either the Free or Shared tiers.
For more information, refer SLA for App Service.
This SLA works based on the fault domain and update domains, understand how fault domains and update domains works in Azure.
Related
I am new to Azure and tasked with identifying the right approach to take our on-premise asp.net core web application to Azure so that it is a multi tenant offering to customers.
With my research so far, it appears that I have the following options
Make my web application a multi tenant SAAS application with data partitioning per tenant
Make my web application a Azure AD protected PAAS offering that can be deployed to customers subscriptions using Azure Managed application.
Containerize my solution (ACI/Dockers etc).
Q1: Is there anything called multi tenant PAAS application? All references I come across are multi tenant SAAS application.
Q2: I want to know if I am in the right direction and are there any books/references/documentation that can help me in this regards to solidfy my understanding.
Any help in this matter is highly appreciated.
Thanks,
Is there anything called multi tenant PAAS application?
For multi tenant PAAS(Platform-as-a-Service) application,you can understand it this way:
each application runs in its separate space, meanwhile still sharing the compute, storage and network resources, as well as providing a complete separation of the security domain and application related data and processes.
I want to know if I am in the right direction and are there any
books/references/documentation that can help me in this regards to
solidfy my understanding?
Azure hosting for ASP.NET Core web apps,microsoft officially provides the following solutions:
App Service Web Apps
Containers (several options)
Virtual Machines (VMs)
App Service Web Apps is the recommended approach for most scenarios, including simple container-based apps. For microservice architectures, consider a container-based approach. If you need more control over the machines running your application, consider Azure Virtual Machines.
For detailed information, please check:here
Hope to help you.
depends on many factors, some of most important ones being:
number of tenants
load spread over tenants (do you have roughly equal distribution of load over tenants or some tenants use app 10s,100s,... more intensively than others)
security and data isolation (is there a security reason to have tenants separated by each having their own environment (domain, db, application instances)
your most straightforward starting point would be to go with app service & cosmos db as it can scale practically indefinitely.
then, if/when you hit the wall because of your requrements (if you have some like in the list above) then you start from there.
It's a general answer, but it really depends on the nature of your application and the usage patterns/requirements.
I have a Pay-As-You-Go subscription on Azure and I created an "app" with intention to have a small blog. I didn't add or setup any other services or anything else.
It says "App Service Plan: Default1 (Free: 0 Small)"
What does it mean?
I'd like to understand how it works, how am I being charged?
Shouldn't be free considering I didn't add any service?
How do I know I am on the free tier?
Sorry if it sounds stupid
In Azure when you create a Web App, you need to have a server to host it on. To achieve that Azure creates a think called an App Service Plan (Think hosting server). The App Service Plan is what your billing is based on. Depending on the App Service Plan selected, you can host multiple sites on a single app service plan like you would on an on-premise server.
Azure App Service Plans come in the following tiers:
F - Free - No cost but limited compute time (60 minutes a day)
D - Shared - $9.67
Basic - Starts at $55.80
Standard - Starts at $74.40
Premium
So from the looks of it, it says you are using a Free plan. To verify, go to the Azure Portal, navigate to your App Service. Then under that section got to App Service plan.
Which should give you the answer that you posted. So indeed you are using the Free tier of Azure. With that in mind, you app will only run 60 minutes a day, after that compute time has been used, your site will be shutdown. In addition realize that your site will "sleep" in between visitors causing the initial load to be affected.
Hope this helps.
More about costing can be found here.
I am looking at possibly running some of our business on Azure.
I am trying to pick the services that would work best for my company, but I am getting mixed signals.
Because I am starting a new system, I want to pick the offerings that are not "legacy" (aka "current"). But there seems to be no way straight forward way to know that.
For example, this page of the Microsoft Documentation says
Cloud Services is similar to Service Fabric in degree of control versus ease of use, but it’s now a legacy service and Service Fabric is recommended for new development.
This page clearly states that Cloud Services is "legacy". However, you would never know this by going to the Cloud Services overview page. It has great marketing material that sells Cloud Services as a great option. But if I picked it, then I would be starting out on a platform that is in a legacy status.
Now I know that about Cloud Services vs Service Fabric. But there are tons offerings on Azure. I am trying to research them one by one to find out which ones are the most recent incarnation, but I feel like I am wasting my time.
Another example is storage. Lucky for me an Azure MVP answered my question on this one. Apparently, there is "older storage account" based disks and "managed" disks. Turns out managed disks are the new, easy way to do things. The storage account is harder. Still available, but not really what a new user should be picking. But again, this is very hard to find out unless someone who has been working with this stuff for a long time tells you.
I was about to start in on App Services and Web Apps, but I thought I would ask first to see if I am doing research that is already done and posted out there.
Is there somewhere that shows the current list of Azure services that you should look at if you are starting a new project?
I asked the similar question almost a year ago, and I even spoke with Azure Support Team after that. At that time, Microsoft did not officially state Cloud Service is legacy.
Does Azure App Service/Web App replace Azure Cloud Service?
We have been hosting our enterprise applications in Cloud Service since 2013, and a couple of them are in App Service. Here is my thought -
4 years ago we only have Cloud Service - Web Role and Worker Role,and App Service (formally named as Web App) is not fully ready for enterprise applications yet. Since App Service came up, Microsoft heavily promote App Service compare to Cloud Service. In addition, what I notice is Cloud Service did not get new features like App Service.
Service Fabric is quite new, and it doesn't have all the belts and whistles like App Service, so we might have to wait a bit for enterprise applications.
Only advantage of Cloud Service is you can remote desktop to a role instance, after the application is deployed.
If I host a new application in Azure today, I'll definitely use App Service.
Microsoft has published a list of Azure reference architectures. It was last updated in November 2016. You can browse it here, and there is some guidance given. But for example, you mentioned using Service Fabric (which is a great way to go for a robust app that really needs to scale), but Service Fabric isn't mentioned in the aforementioned resource.
I spend a lot of time running down Azure resources in relation to web applications (not to be confused with App Service Web Apps), and I have not found a definitive source of the type of info you're looking for personally.
We are moving a range of Cloud services Web Roles to Azure websites - currently running on App Service plan/pricing tier - Standard 1 medium.
The websites are all identical and at some point we will re-write out code base to be properly multi-tenanted. However we are currently hosting them as multiple websites on a single Azure web hosting plan.
In terms of memory usage will Azure share the identical Dlls e.g. all the Nuget packages/core application Dll? Or do we need enough memory to load a copy of each Dll per websites? Effectively I am hoping to share you can share common assemblies across AppPools.
I have seen mention of settings that MS was adding to IIS to support better density for shared hosting providers. I believe .Net 4.5 added support for interned Dll. Are there any settings etc that affect how Azure handles this situation? We are currently running at 94% memory consumption of our 3.5GB and wanted to understand whether we would need to scale up soon. I would hope Azure would be able to do something under the covers as obviously MS want to maximize density.
Each WebApp is isolated by the app-pool so if you have multiple copies of the same site, even if they are identical, they will all load their own copy of the assembly into memory.
There is also the security sandbox due to the multitenant nature of the service so interning will not work against that.
To monitor memory usage, you can look at the app service plan. Also useful is process explorer (WebApp>tools>process explorer)
In Visual Studio 2013, I have a solution that holds several projects, including multiple class libraries, as well as an MVC5 project to serve HTML pages to clients.If I get the free tier, can I host my entire solution, including all the projects that it holds? Microsoft's own documentation on this matter is not clear, and I was hoping someone here has already used the Azure platform for hosting their website.
Does Microsoft's Azure Hosting allow the hosting of n-tier applications?
Sure, why not? You can host every tier of your application separatly in Azure (DBs, web sites, services, background jobs, etc.) in different services provided by Azure. In the free tier you have the limitation of sites you can create for free (Azure Web Sites), limitation of cores (don't know the exact limit) and the costs you produce. If your costs exceeds the limit all of your resources will be shut down.