Contents

AZ-900 [2] - Benefits of using Cloud Services

Benefits of Cloud Services

High Availability

Availability is also called uptime, the amount of time a computer is on. HA is the ability of the system to remain operational to the users during, planned or unplanned outages.

Planned Outages

An outage of a service that is planned by you or the company, can be planned or can be done in a maintenance window, where the majority of your users aren’t affected.

  • OS Patches
  • Application Updated
  • Hardware Replacement
  • Migration to a new Provider

Unplanned Outages

These are outages that can happen at any moment, they are out of the control of the provider and the client and are unpredictable.

  • Hardware Failure
  • Network Failure
  • Power Outages
  • Natural Disasters
  • Cyber Attacks (DDOS, Ransomware)
  • Software Bugs
  • Poor System Design / Scaling

Methods to Mitigate Planned Outages

  • Gradual Deployment Strategy
    • 1-10-100 etc servers in a phased manner
  • Testing and Monitoring of Deployment
  • Easy Rollback Plan
  • Small Deployments
  • Frequent Deployments
  • Automation

Methods to Mitigate Unplanned Outages

  • Every single core component has redundancy
  • Azure’s Offerings
    1. Availability Sets
    2. Availability Zones
    3. Cross-Region Load Balancing / Front Door
  • Constant health monitoring/probes
  • Automation
  • Strong Security practices
  • Be geographically distributed
  • Have a disaster recovery plan
  • Test the disaster recovery plan thoroughly
  • Load Testing

High Availability, is a conscious effort to avoid obvious sources of downtime

High Scalability

The ability of a system to accommodate increasing demand by adding or removing resources as needed,

Why?

It allows a system to adapt to changing usage patterns and handle increased traffic without requiring changes to the application code or system design. Some businesses have traffic that fluctuates based on the time of day or day of the year

  • E-Commerce websites have Black Friday.
  • Schools are busy during admission time.

Vertical Scaling

  • Also called “scaling up”_ or _“scaling down”
  • Adding more resources to the same server
  • Increase the amount of memory, the number of CPUs
  • There is a limit to how much vertical scaling is possible, it varies by the cloud provider.
  • Vertical Scaling doesn’t improve availability

Horizontal Scaling

  • Also called “scaling out”_ or _“scaling in”_
  • Adding more servers to a system
  • No limits to scaling
  • Additional complexities for load balancing
  • Can improve availability

Impact on System Cost

  • Adding or reducing resources affects the final price
  • having a scalable system allows a system to be perfectly sized
  • this optimizes the cost by reducing wasted computing resources

Elasticity

The ability of a system to quickly and easily scale up or down the number of resources used based on the changing demand.

  • Involves automation
  • Autoscaling - monitor the CPU/Memory to provision and de-provision extra resources.
  • More efficient and cost-effective use of resources.
  • Minimise computing “Waste” - resources paid for and not used.
  • Self-hosted systems tend to have larger over-provision resources for anticipated growth.

High Reliability

The ability of the system to perform its intended function without interruption and with a high degree of accuracy

Why?

  • We need to trust that the cloud provider to make sure that the platform is reliable
  • This includes transparency during service downtimes

How to Achieve it?

  • Auto scale
  • Multi-region deployments
  • Data backup and self-hosting
  • App Health monitoring and self-healing

High Predictability

The ability to forecast and control the system’s performance and behavior

  • The ability to predict and forecast operating costs
  • Gives us confidence that the system will continue to perform at the expected level in the future
  • To avoid a crazy bill unexpectedly

How to Achieve it?

  • Auto scale
  • Load Balancing
  • Diff instance types, sizes, pricing tiers
  • Cost management tools
  • API
  • Pricing Calculators

Security

  • Cloud providers invest billions of dollars in security to avoid hackers and malicious attacks
  • Cloud providers go through security audits and compliance regulations
  • Cloud providers also enable their clients with the tools to monitor security with their applications and data

Why is it needed?

  • Security is a fundamental challenge in IT
  • Confidence that Cloud providers cannot be easily defeated by hackers and those with malicious intent

How is it achieved?

  • Comply with international compliance certifications
  • Microsoft Security Response Center (MSRC)
  • Always-on DDoS (distributed denial-of-service)
  • Azure Policy & Blueprint
  • Role-based access control (RBAC)
  • Azure Active Directory
  • Always up-to-date platform services
  • Update management (OS Updates)
  • Encryption by default (Disk and Transit - HTTPS)

Governance

The process of defining, implementing, and monitoring a framework of policies that guides an organization’s cloud operations.

Why?

  • To ensure that the client/org policies are followed in the cloud
  • Includes basic auditing and reporting, as well as enforcement
  • To comply with industry standards such as HIPPA, PCC or GDPR

How is it achieved?

  • Azure Policy & Blueprint
  • Management Groups
  • Custom roles
  • Soft delete
  • Guides and best practices such as Cloud Adoption Framework

Manageability

Management of the cloud

  • Templates (Creation of resources)
  • Automation
  • Scaling
  • Monitoring and alerts
  • Self Healing

Management in the cloud

  • Web Portal
  • Command Line Interface(CLI) and scripts
  • API
  • PowerShell

Why is it important?

It is important to make sure that the cloud provider makes it easy for us to work with our applications, security, and costs

How is it Achieved

  • Azure Portal, CLI, PowerShell, CloudShell, REST API, and other programmatic methods
  • Consolidated monitoring and alerting system
  • Ability to use ARM templates, Bicep, Terraform, etc
  • Autoscaling of most compute resources.