What is cloud native computing?

Martyn Coupland
3 min readJul 28, 2023
Photo by Billy Huynh on Unsplash

Broadly speaking, cloud native refers to a modern approach to software development, deployment, and management that leverages cloud computing and its associated technologies to build and run applications. The term “cloud-native” emphasises designing applications specifically for the cloud environment, taking advantage of its scalability, flexibility, and resilience.

Key characteristics of cloud-native applications include:

  1. Microservices Architecture: Cloud-native applications are typically composed of small, loosely coupled services called microservices. Each microservice focuses on a specific business capability and can be developed, deployed, and scaled independently.
  2. Containers: Containers are lightweight, portable, and isolated units that package applications and their dependencies, ensuring consistency across different environments. Docker is one of the most popular containerization technologies used for cloud-native applications.
  3. Orchestration: To manage containers at scale, cloud-native applications often use container orchestration platforms like Kubernetes. Kubernetes automates the deployment, scaling, and management of containerized applications.
  4. DevOps Practices: Cloud-native development encourages collaboration between development and operations teams to streamline the software delivery process. Automation, continuous integration, and continuous delivery (CI/CD) are essential components of cloud-native DevOps practices.
  5. Elasticity and Scalability: Cloud-native applications are designed to scale easily and efficiently, allowing them to adapt to varying workloads and manage high traffic demands.
  6. Resilience: Cloud-native applications are designed to be highly available and resilient to failures. They can recover from failures and adapt to changes in the underlying infrastructure.
  7. APIs and Service Mesh: Cloud-native applications often expose functionality through APIs (Application Programming Interfaces) to enable integration with other services. Service mesh technologies help manage the communication between services, providing security, observability, and other features.

The cloud-native approach enables organisations to build and deploy applications faster, with improved scalability, reliability, and cost-efficiency. By adopting cloud-native practices, businesses can take full advantage of the cloud’s capabilities and respond more effectively to the evolving needs of users and the market.

Who is the Cloud Native Computing Foundation?

First of all, let’s look at the definition of cloud native, directly from the CNCF.

Cloud native technologies empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach.

These techniques enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, they allow engineers to make high-impact changes frequently and predictably with minimal toil.

The Cloud Native Computing Foundation seeks to drive adoption of this paradigm by fostering and sustaining an ecosystem of open source, vendor-neutral projects. We democratize state-of-the-art patterns to make these innovations accessible for everyone.

Even if they are not in the software business, businesses are realising that they must be a software firm. For instance, the hospitality sector is being revolutionised by Airbnb, and more conventional hotels are finding it difficult to compete. IT and software can move more quickly because to cloud native. By implementing cloud native technologies and practises, businesses may develop their own software, collaborate closely with IT professionals, stay competitive, and provide their clients with superior services. Without vendor lock-in, CNCF technologies enable cloud portability.

You can read more about the CNCF and their charter, which explains the mission of the foundation over on their site.

What about cloud native on Azure?

The CNCF has involvement in over 160 projects, these are the core of cloud native computing, and you will find a number of Azure based solutions as part of the CNCF Landscape. At the time of writing, these are:

  • Azure API Management
  • Azure Disk Storage
  • Azure Event Hubs
  • Azure Functions
  • Azure Kubernetes Service (AKS)
  • Azure Monitor
  • Azure Pipelines
  • Azure Registry
  • Azure Service Fabric
  • AKS Engine for Azure Stack
  • Microsoft SQL Server
  • Open Application Model

Microsoft are also a platinum member of the CNCF. A widely accepted manner of building cloud based applications is the Twelve-Factor Application. Microsoft have a great article that explains the twelve different factors.

--

--

Martyn Coupland

Hi! You can find me talking about Azure, DevOps Transformation, App Innovation, and FinOps. Martyn is a Microsoft MVP as well as a Microsoft Certified Trainer.