Microsoft Azure VMs IaaS or PaaS? - azure

I would like some clarification on whether Azure VM's are strictly IaaS or can be PaaS depending on the amount responsibilities the creator/user has.
I've seen multiple different website saying VM are ONLY IaaS since you require an operating system, and others saying VM can be PaaS if a specific OS is specified on creation.
Any insight the community can provide will be very helpful, Thanks!

A VM is generally considered Infrastructure-as-a-Service, as you retain responsibility for patching and managing the Virtual Machine Operating System.
And even though there are Marketplace VM offerings that are completely pre-configured and even auto-updating, the responsibility for maintaining those solutions after deployment is the main way IaaS and PaaS are distinguished.
At the end of the day IaaS and PaaS are not precise technical terms. You can have PaaS services that require significant configuration and ongoing maintenance, and IaaS services that are completely managed.

VM's are IAAS (Infrastructure as a service) because on a VM you can manage what operation system runs and what software is installed.
On a PAAS you only manage the software or application that runs in the cloud. (Like app services)

It's both.
Like IaaS, PaaS includes infrastructure—servers, storage, and networking—but also middleware, development tools, business intelligence (BI) services, database management systems, and more. PaaS is designed to support the complete web application lifecycle: building, testing, deploying, managing, and updating.
https://azure.microsoft.com/en-us/overview/what-is-paas/

I've just been through Microsoft's AZ900 training at it states:
Azure Virtual Machines (VM) are software emulations
of physical computers.
Includes virtual processor, memory, storage, and
networking.
IaaS offering that provides total control and
customization.

example Az900 test questions:
VM with installed SQL is PaaS
appears to times
VM with instlled sql server is Iaas - one time
DNS is IaaS according to MS diagram: https://techcommunity.microsoft.com/t5/image/serverpage/image-id/94214iF8738A37E3E44F77
But VM with DNS server installed is PaaS
Also encountered that VM with installed storage is PaaS.
Very confusing,

Related

Need clarification about IaaS - Infrastructure as a Service

I am totally new to Cloud Computing. I started learning Cloud computing basics.
I started with Infrastructure as Service and I didnt understand it fully
Please help me with the below questions
1) Does IaaS included the Operating System like (linux or Windows)
2) There are some online article says IaaS includes(network+Storage+servers+Virtualization)
3) In the above 2nd ponint..what is Virtualization..does it mean installing required number of Virtual Machines (VMs) on top of Hypervisor?
4)If the point 3 is true how the VMs are installed without OS
Please help
1) Does IaaS included the Operating System like (linux or Windows)
Infrastructure as a service (IaaS) typically is a cloud offering that grants a user full control over the operating system of a virtual machine (Linux or Windows). There may be some small overlap of traditional adminstrative controls of the VM and services that are provided by the cloud provider; for example, Azure allows you to configure automatic updates on a Windows VM during deployment.
2) There are some online article says IaaS includes(network+Storage+servers+Virtualization)
IaaS is a holistic offering of network, storage and compute where the underlying infrastructure is managed by the cloud provider, but the customer interacts with these elements through software. For example, Azure provides access to a VM running on Hyper-V, networking through Software Defined Networking, and storage through virtual disks. These abstractions grant the customer a high level of control over the resources they purchase without giving them direct hardware level access to the underlying hosting infrastructure.
3) In the above 2nd ponint..what is Virtualization..does it mean installing required number of Virtual Machines (VMs) on top of Hypervisor?
Yes, virtualization is the offering of virtual machines on top of a cloud provider managed hypervisor. You will commonly not have access to the hypervisor in most cloud provider platforms.
4)If the point 3 is true how the VMs are installed without OS
An OS is required in most IaaS platforms, as this is what you are paying for, rather than a blank virtual machine you configure from scratch. That being said, you can bring you own pre-configured OS disk or deploy from a Marketplace of operating system images. For example, Azure provides many versions of Windows, Ubuntu, CentOS, RHEL, etc. from their own repository that allow you to quickly provision a VM and start building your workload.
Great links:
- https://azure.microsoft.com/en-us/overview/what-is-iaas/
- https://gallery.technet.microsoft.com/Shared-Responsibilities-81d0ff91

What's the Difference between an Azure Cloud Resource and a Cloud Service?

We're just starting out with Microsoft Azure, and I'm reading through the Azure infrastructure services implementation guidelines (https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-infrastructure-services-implementation-guidelines/). The document talks about Cloud Resources and Cloud Services, but I've found myself confused by the difference between these - (and couldn't find anything much when trying to Google this!). Can someone please enlighten!
Thanks in Advance
Cloud Services are ways to combine a set of stateful virtual machines (or web/worker role instances, which are stateless virtual machines) into its own private network, sitting behind a public virtual IP address. The Cloud Service also provides optional load-balancing between the virtual machines). Cloud Services have been around since the beginning of Azure, and are considered part of the "classic" compute model. All classic virtual machines (whether stateful or stateless) live within a Cloud Service.
I don't know what you mean by Cloud Resources, but... Azure now has the Azure Resource Manager (ARM), which is a newer way to create virtual machines. There is no notion of a Cloud Service with ARM; the approach is to build out a set of resources (such as virtual machines, networks, NICs, IP addresses, etc) and dependencies, as a single managed set of resources.
The Azure site has documentation for classic Cloud Services here.
And documentation for ARM is here.
Azure service is simply a computing 'service' provided through the internet (cloud) than on-premises servers.
Docs:
Simply put, cloud computing is the delivery of computing
services—servers, storage, databases, networking, software, analytics,
intelligence and more—over the Internet (“the cloud”)...
Webopedia
A cloud service is any service made available to users on demand via
the Internet from a cloud computing provider's servers as opposed to
being provided from a company's own on-premises servers
Azure resource is an instance of the Cloud service(Or its components.) When you pay for a service and use it for something it becomes a 'resource' for you.
Docs
A manageable item that is available through Azure.
You can also see the difference on the Azure portal when you click 'Azure Services' (It lists what they can provide) and 'All Resources' (It lists what you already have)
Azure gives you services like Compute, Networking, Storage etc.
Within each service are resource types, such as Virtual Machine, Virtual Network, Storage Accounts etc
When you create a Virtual Machine, it is a Resource.

Intsalling two servers on an Azure virtual machine

Can we install 2-3 windows servers on a single Azure virtual machine? Or, can we only install one operating system on a single virtual machine?
I would encourage you to look at Azure Websites. Azure Websites provides "slots" that can be configured as dev/test/staging/production very easily and you can run your entire environment on a single VM or multiple VM's (exactly what you were asking for). Websites also provides excellent publishing capabilities, whether directly from Visual Studio, TFS, Git or whatever.
Websites supports scheduled or auto-scaling, custom domains, SSL, scheduled backups (including the database) and if you need Worker Role (back-end processing) capabilities, WebJobs are built in and are easy to use.
Definitely worth checking out. It is extremely rare that I use VM's to host anything anymore. Azure Websites pretty nearly can handle anything.
Hope that helps.

VM migration on Azure

I wish to run a web server on Azure. My concern is whether Azure migrates virtual instances (VMs) between physical servers for performance optimization purposes and if so does it provide some kind of guarantees on the performance hit that migration incurs?
For VM performance and availability, you can use Availability Sets to be covered by the 99.95% SLA. This guarantee works due to the use of Fault Domains and Upgrade/Update Domains across physical machines spread across server racks.
More info here: https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-manage-availability/
If you just want to run a web app without having to worry about the VM, you can also use Azure's PaaS offering (just endpoint access) instead of IaaS (full VM access).
More info here: http://azure.microsoft.com/services/app-service/web/
Hope that helps!

Using Windows Azure SQL Database from Azure VM

Is there any performance penalty to using Windows Azure SQL Database (formerly known as SQL Azure) from within a Windows Azure VM hosted web app? I would like to know if the performance of this is any worse than using Azure SQL database from a website running on Azure reserved instance. The assumption in both scenarios is that Azure SQL Database is deployed in the same region as the app.
There should not be any difference with respect to utilization of SQL Azure
As #Igorek pointed out, there's no difference (assuming same data center) between using a Virtual Machine and a Website for accessing Windows Azure SQL. That said: One thing that may not be so obvious is that, today, Virtual Machines (and Cloud Services) support XL instances (meaning 800Mbps on the NIC) vs Websites, which are currently limited to Large reserved instances (400Mbps). So... if you're moving a considerable amount of data, you'll get better throughput with an XL Virtual Machine vs. a Large Website instance.
I realize this is an edge case, but just thought I'd throw it out there...
There may be some difference in performance which depends on the configuration on the Virtual Machine and the Website Infrastructure where the Website is Hosted.
The connections in-bound and out-bound performances depends on the load balancing which is abstracted in Azure. This relates to the infrastructure which is in place.
For instance if the VM is in Basic Tier More on VM Sizing, and the website is hosted with a higher configuration, you may get some variance in Performance.

Resources