Compute services types, including virtual machines, App Services, Serverless, Container Instances, Kubernetes Service
Azure Virtual Machines – Infrastructure as a service (IaaS)
Just like a physical computer. The cloud supports VMs. VMs provide IaaS as a virtualized server and can be used in numerous ways.
Virtual scale sets and availability sets provide redundancy and enhanced performance for virtual machines.
Virtual Scale Sets
if you need to adjust the number of virtual machines (VMs) in your system. Azure is capable of automating the majority of that job. Scale sets provide centralized management, configuration, and creation/updating of a large number of virtual machines (VMs) in a matter of minutes.
Availability sets
With the help of virtual machine availability sets, you may create a more secure and reliable infrastructure. Virtual machines (VMs) can be protected against complete loss in the event of a widespread network or power outage by using availability sets, which are organized to stagger updates and provide VMs with a variety of power and network connections.
To do this, Availability Sets classify virtual machines into update domains and fault domains.
Fault Domains ( Single Rack – Physical Hardware )
Your virtual machines (VMs) will be grouped together into the fault domain since they will share a network switch and a power source ( Physically single rack).
Update domains ( high availability )
VMs that are capable of being restarted at the same time are grouped together in the update domain. This enables you to apply updates while also providing the peace of mind that only a single update domain grouping will be unavailable at any given moment.
Have your Azure resources, such as virtual machines, for example, deployed across numerous update domains if you want them to continue to be accessible even while the underlying software is being upgraded or the server rebooted and extra.
Azure Virtual Desktop – Infrastructure as a service (IaaS)
The Azure Virtual Desktop is an example of an additional kind of virtual machine. Desktop and application virtualization solution that is hosted in the cloud and offered by Microsoft under the brand name Azure Virtual Desktop.
The windows-client-based operating system enables several users to work concurrently on a single virtual machine.
Azure App Service ( Hosting ) – Platform as a service (PaaS)
You can design and host web applications with App Service without managing the underlying infrastructure.
Web apps, REST APIs, and mobile backends can all be hosted on Azure App Service. The.NET Framework, the.NET Core Framework, Java, Ruby, Node.js, PHP, and Python are just some of the languages it supports. The program works in both the Windows and Linux operating systems.
Types of app services
Web apps : ASP.NET, ASP.NET Core, Java, Ruby, Node.js, PHP, or Python
API apps : REST-based web APIs and accessed from any HTTP- or HTTPS
Web Jobs : Run a program (.exe, Java, PHP, Python, or Node.js) or script (.cmd, .bat, PowerShell, or Bash)
Mobile apps : cloud-based SQL database, Authenticate from MSA, Google, Twitter, and Facebook, SDK support for native iOS and Android, Xamarin, and React native apps and back-end logic in C# or Node.js.
Azure Functions ( serverless ) – Platform as a service (PaaS)
If you are just concerned about the code that is running your service and not about the platform or infrastructure that it is running on, then Azure Functions is the perfect solution for you.
When an event occurs, Azure Functions executes your code and releases any resources it used. In this pricing scheme, you will only be billed for the actual time that your function consumes CPU resources.
Stateless or stateful functions
Stateless : whenever they react to an occurrence, it’s as if they’re starting from scratch
stateful : In order to keep track of previous action, a context is supplied across the function (called Durable Functions)
Azure Containers ( Docker ) – Platform as a service (PaaS)
Virtual machines are a cost-effective alternative to physical hardware, but they can only run one operating system at a time. Use containers if you wish to execute multiple app instances on a single host system.
In a container, you are not responsible for managing the underlying operating system. Docker is widely recognised as one of the best container engines.
Containers are used to build microservice solutions.
Tips : You can break a website into containers for the front end , back end, and storage.Component of your website called as logical sections in the containers
Containers are designed to be lightweight and to have the ability to be dynamically produced, scaled out, and stopped.
Example: Your website’s back end is full, but the front end and storage aren’t. Containers let you scale the backend separately to boost performance. If needed, you might update the storage service or front end without affecting other components independently.
Azure container orchestration
Container orchestrators install and manage containerized apps The orchestrator can dynamically adapt to environmental changes to increase or decrease managed app instances. Or, it can update all container instances when a new service version is released.
Azure Kubernetes ( Cluster Structure ) – Platform as a service (PaaS)
Kubernetes is a cluster management tool that can be used to deploy, scale, and manage Docker containers and applications that run in them.
The default runtime for managing containers is designed with micromanagement in mind. The situation becomes more complicated if you want to grow a complex system consisting of numerous containers communicating with one another. Here are some things you’ll need to think about.
Implementing a container management platform like
Kubernetes
can simplify administration.
Kubernetes consolidates your data center’s computing resources into a single pool. You can focus on releasing and scaling your applications without having to think about the constraints of container deployment.
Kubernetes does not include any kind of middleware, data processing framework, database, cache, or cluster storage system. These components are all deployed and managed as containers or as part of some other service.