12 min read

The Cloud — what is it? Cloud services and platforms

Modern software development and IT operations

Cloud platforms and services form the essential infrastructure for DevOps and microservices, enabling the modern software development and IT operations ecosystem.

Before we get started, you might want to explore some related topics — they provide useful background that will help you get the most out of this post:

1. The Cloud

The Cloud: a wide range of online services such as servers, storage, databases, networking, software applications, analytics, and intelligence where people and businesses store their files and applications, accessible from anywhere with an internet connection.

The main purpose of the Cloud is to provide on-demand access to computing resources and services over the Internet.

The Cloud is the latest evolution piece in the Infrastructure chain.

Cloud Computing. The evolution.

In the early days of cloud platforms, around 2013–2015, the term “Cloud Computing” became widely popular. At that time, cloud platforms primarily offered Infrastructure as a Service (IaaS) and a limited number of Platform as a Service (PaaS) options. These services focused on the three fundamental pillars of cloud platforms:

  • Compute
  • Networking
  • Storage

The Early Days: IaaS and PaaS
Back then, cloud platforms were mainly about providing virtualized computing resources, networking capabilities, and storage solutions. This allowed businesses to reduce their reliance on physical hardware and take advantage of the scalability and flexibility offered by the cloud.

The Modern Cloud: Beyond Infrastructure
Today, cloud platforms have evolved far beyond just IaaS. They now offer a comprehensive suite of services that encompass:

  • Virtual Desktops (PCs), Security, Observability, Governance, Cloud-Native Applications, Identity and Security Solutions, Edge and IoT Devices, Mobile and E-Commerce Platforms, Artificial Intelligence (AI), Datastore and Analytics, and more.

The cloud has become a cornerstone for both Software Development and Information Technology Operations (IT).

The Shift to Cloud-Only Solutions
As cloud platforms have matured, some traditional on-premises solutions have reached their End-Of-Life (EOL). For example, Microsoft Exchange’s on-premises support has ended, making Microsoft 365, a cloud-only (cloud-native) solution, the primary alternative for businesses.

The Cloud and the Internet

The Internet is a global network that connects computers, enabling data sharing and communication. It supports services like websites and email.

The cloud provides storage, computing power, and applications over the Internet. Instead of using local storage, users can access their data and apps in the cloud.

In essence, the Internet connects devices globally, while the cloud leverages this connectivity to offer various services and resources.

Cloud Data Centers and Regions

So, where is the cloud? It’s located in data centers distributed globally.

When you store data or run applications in the cloud, you’re using remote servers in these data centers. These facilities are highly secure and equipped to ensure data safety and accessibility. Providers like Microsoft Azure operate numerous data centers worldwide.

When you access data from the cloud, your device sends a request to the provider’s servers, which then retrieve and send the data back to your device. This process is fast!

Data centers are strategically placed to ensure low latency and high availability, allowing you to access your data quickly and reliably, no matter where you are.

Azure Data Centers map: https://datacenters.microsoft.com/globe/explore/

Types of Clouds

So, what is the cloud in simple terms? There are different types of clouds, including:

  • Commercial/Public Clouds: Services to businesses and individuals. They offer scalable and on-demand access to computing resources, storage, and applications over the Internet. Managed by large cloud service providers, they deliver high availability, enhanced security, and optimized performance. Organizations might use a multi-cloud approach to avoid vendor lock-in and enhance redundancy.
  • Private Clouds: Environments dedicated to a single organization, providing enhanced control, security, and customization. They can be hosted on-premises or by a cloud service provider.
  • Hybrid Clouds: Combine private and public cloud environments, sharing data and applications. This setup allows organizations to keep some data and applications on-premises while taking advantage of the scalability and flexibility of the public cloud. Hybrid clouds also help organizations improve their infrastructure while meeting security and compliance requirements. Additionally, cloud migration strategies and tools support the seamless transfer of data and applications from on-premises to the cloud as needed.

Types of Cloud Services

Cloud services provide a range of computing resources, offering the flexibility and scalability to meet diverse requirements. There are three primary types of cloud services:

  • Infrastructure as a Service (IaaS): provides virtualized computing resources online, including virtual machines, storage, and networks.
  • Platform as a Service (PaaS): offers developers a framework to build, deploy, and manage applications, reducing the need to handle underlying infrastructure and allowing more focus on creating high-quality apps.
  • Software as a Service (SaaS): delivers applications over the internet to subscribers (in most cases for a fee), enabling access and use without the need to manage hardware or infrastructure. SaaS also cuts costs by eliminating the need for local installation and maintenance.”

A simple analogy:

  • On-premises: you manage everything. From networking to applications.
  • IaaS: Virtual Machine in Azure or any other Cloud provider
  • PaaS: Azure Kubernetes Services (AKS)
  • SaaS: Microsoft 365
RedHat diagram

2. Use cases and benefits of Cloud

Benefits

  • Cost Savings: Reduce or eliminate the need for physical hardware and maintenance, leading to significant cost savings. BIG NOTE: with good and active monitoring and governance of used resources!
  • Scalability and Flexibility: Cloud platforms allow you to easily scale resources up or down (horizontally and vertically) based on your needs, providing flexibility. A variety of sizes and tiers for every service.
  • Accessibility: Access cloud services from anywhere with an internet connection, making it easier for remote teams to collaborate and for users to access their data and applications on the go.
  • Security: Cloud providers often offer advanced security features, such as data encryption, two-factor authentication, AI, and analytic alerts and recommendations to protect your data.
  • Performance and Availability: Cloud services typically offer high performance and availability, with minimal downtime, as they are distributed across multiple data centers and/or regions.
  • Rapid Deployment: You can quickly deploy applications and services in the cloud without extensive hardware setup or IT staff.
  • Environmental Impact: Help reduce energy consumption and carbon footprint, as cloud providers optimize their data centers for efficiency. For example, MS Azure has been 100 percent carbon neutral since 2012. They are removing as much carbon each year as they emit, either by carbon removal (carbon offsetting) or by reducing carbon emissions.

Use cases

  • Infrastructure as a Service (IaaS): Provides virtualized computing resources over the internet. Companies can rent servers on-demand, storage, and networking on a pay-as-you-go basis, reducing the need for physical hardware.
  • Platform as a Service (PaaS): Offers a platform allowing customers to develop, run, and manage applications without dealing with the underlying infrastructure. This is ideal for businesses with a focus on coding and deploying applications.
  • Software as a Service (SaaS): Delivers software applications over the internet on a subscription basis. Examples include Microsoft 365, Google Workspace, and Salesforce, which provide tools for productivity, collaboration, and customer relationship management.
  • Big Data Analytics: Cloud platforms can process and analyze large datasets efficiently. Businesses use cloud-based analytics to gain insights, make data-driven decisions, and improve customer experiences.
  • Disaster Recovery and Backup: Cloud services offer reliable and cost-effective disaster recovery solutions. Data can be backed up and restored quickly in case of hardware failure, natural disasters, or cyberattacks. Providing excellent RTO and RPO.
  • DevOps and Continuous Integration/Continuous Deployment (CI/CD): Cloud platforms support DevOps practices by providing development, testing, and production environments. This enables faster and more reliable software releases. Also, Cloud platforms and services deliver the best Infrastructure model for Agile and DevOps methodology.
  • Internet of Things (IoT): Cloud services can manage and analyze data from IoT devices, enabling real-time monitoring, automation, and predictive maintenance in industries like manufacturing, healthcare, and agriculture.
  • Artificial Intelligence and Machine Learning: Cloud platforms offer tools and frameworks for building, training, and deploying AI and ML models.
  • Hybrid and Multi-Cloud Solutions: Combining private and public cloud resources allows businesses to optimize their infrastructure for performance, cost, and compliance. Workloads can be moved between clouds as needed.
  • Collaboration and Remote Work: Cloud-based collaboration tools like Virtual Desktops, Slack, Zoom, and Microsoft Teams enable remote teams to work together seamlessly, share files, and communicate in real time.

3. On-premises vs Public Cloud

The decision between Cloud and On-premises solutions is a common and important consideration for many organizations and businesses.

It’s never black and white only, but on a high level:

4. Cloud-native

At its core, cloud-native leverages the full potential of cloud computing to create scalable, resilient, and agile applications. Here are the key components:

  • Microservices Architecture: Instead of building monolithic applications, cloud-native embraces microservices. This means breaking down applications into small, independent services that can be developed, deployed, and scaled independently. This approach enhances flexibility and accelerates development cycles.
  • Containers: Containers are the backbone of cloud-native applications. They package the application code along with its dependencies, ensuring consistency across different environments.
  • Dynamic Orchestration: Managing containers at scale requires sophisticated orchestration. Kubernetes, for example, automates the deployment, scaling, and operation of containerized applications, ensuring they run efficiently and reliably.
  • DevOps and Continuous Delivery: Cloud-native development is deeply intertwined with DevOps practices. Continuous integration and continuous delivery (CI/CD) pipelines enable faster and more reliable software releases, fostering a culture of collaboration and automation.
  • Scalability and Resilience: Cloud-native applications are designed to scale horizontally and handle failures gracefully. This ensures high availability and performance, even under heavy loads or unexpected disruptions.
  • Automation: Automation is a cornerstone of cloud-native. From infrastructure provisioning to application deployment and monitoring, automation reduces manual intervention and increases efficiency.

5. Public Cloud Providers: AWS vs Azure VS GCP

Biggest Public Cloud providers: AWS, Azure, GCP, Alibaba Cloud, Oracle Cloud, Salesforce Cloud, IBM Cloud, DigitalOcean, and more.

Amazon Web Services (AWS)

Amazon launched AWS back in 2006, and it’s considered the first modern Cloud platform. With the biggest share, around 30% of all cloud services, AWS is still considered one of the best “startups” and e-commerce cloud platforms.

Advantages:

  • Excellent region and data center coverage.
  • Extensive service catalog.
  • Best support for all services in the catalog. Even when they are a bit in “legacy” territory.
  • Good third-party integration.

Caveats:

  • However, there are lots of “legacy” services and tons of new ones with similar naming conventions (ELASTIC-EVERYTHING).
  • Complex for new SRE/DevOps and Dev members.
  • Only Microsoft product integration is lacking (which is expected).
  • Average to higher cost with the worst partner/benefit programs and licensing.

Microsoft Azure

It was initially announced in October 2008 under the codename “Project Red Dog” and officially launched as Windows Azure in February 2010. It was later renamed to Microsoft Azure in March 2014. Second place in market capitalization with around 20%.

Advantages:

  • Best cloud platform integration with Microsoft products: Active Directory, Office, Windows Server, MS SQL, etc.
  • Best hybrid integration with on-premises services.
  • Perfect match for businesses and corporations with AD DS (Active Directory Domain Services) and Azure Entra ID (MS Cloud AD), Office suite, Windows Server, and MS SQL instances.
  • Good AI service catalog.

Caveats:

  • The middle ground (between AWS and GCP) for service catalog, Data/Analytics, IoT, and edge services. Also in prices.
  • The steep learning curve for non-Microsoft tech people.
  • Fewer catalogs (which good be a good thing) and a bit fewer data centers than AWS.
  • Complex licensing and governance models.

Google Cloud Platform (GCP)

Smallest market share from the big three, sitting around 10%. The smallest service catalog as it’s the newest among them. Excel in Data, Data Analytics, AI, and Machine Learning services.Also, Open-source services such as Kubernetes (Kubernetes was developed by Google).

Advantages:

  • Excels in Data Analytics, AI, and Machine Learning services.
  • Competitive Pricing, especially for data-intensive workloads.
  • Open Source Friendly and strong support for open-source technologies and tools.
  • Good network coverage and performance. Benefits from Google’s global network infrastructure, providing high performance and low latency.

Caveats:

  • Fewer services from the big three.
  • Lacking Microsoft services integration (similar to AWS).
  • Behind AWS and Azure for enterprise adoption.

6. Take away

  • Worldwide. Online, over the internet. On-demand. Scale. Vertical and Horizontal. Cloud-native.
  • On-premises or Cloud depends on the use cases and business requirements, mostly both in hybrid scenarios.
  • AWS, Azure, and GCP are the leading cloud service providers, offer similar pricing and features.
  • Cloud platforms and services form the essential infrastructure for DevOps and microservices, enabling the modern software development and IT operations ecosystem.