README / Contributing / License

To talk about cloud native applications and systems, we need to define cloud native. CNCF provides a high-level overview of what it means to be cloud native and lists some implementations and the benefits they provide in the CNCF Cloud Native Definition v1.0.

The cloud native principles seek to clarify further the underlying fundamental concepts of what it means to be cloud native.

NOTE: This is a work in progress.

Fundamental Concepts

  • Service discovery

  • Loose coupling

  • Microservices

  • Low overhead/coarse-grained packaging

    • examples: containers, unikernel

  • Declarative consumption model

    • includes APIs and configuration

    • applies to all layers: infra, workloads, platform, and components

  • Designed for automation

    • applies to testing, deployment, application and platform autoscaling, infra and network provisioning

  • Immutable infrastructure

Each of these concepts is covered in more depth in cloud-native-principles.md.

When these principles are implemented, they lead to benefits such as:

  • Increased interoperability

  • Increased resilience

  • Increased scalability

  • Lowered risk

Defining these concepts help in applying cloud native methodologies to different technology domains. For instance, in the networking and communication service provider spaces, the Cloud Native Networking papers illustrate this.

Contributing to and Using this content

CONTRIBUTING

We encourage civil discourse and debate about the principles. It's not only acceptable but desirable for the points to be discussed and adapted to where the community as a whole feels we are. In other words, it is ok to disagree with a principle and propose an alternative.

How to contribute:

LICENSE

This work is licensed under a Creative Commons Attribution 4.0 International License.

You are free to:

  • Share — copy and redistribute the material in any medium or format

  • Adapt — remix, transform, and build upon the material for any purpose, even commercially.

Under the following terms:

  • Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.

  • No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.