What is cloud native?

Cloud native is the name for an approach to building and running applications across private, public, and hybrid clouds. When an app is "cloud native," it’s designed specifically to be developed and managed within a cloud environment.

Companies are increasingly using cloud native development so they can accelerate application delivery, get to market faster, and meet customer expectations for speed and agility.

Explore additional cloud native topics:

What is a cloud native application?

Unlike many traditional applications, which may run in the cloud, cloud native applications are purpose-built for a cloud environment. They’re designed from day one to exist in public, private, or hybrid clouds, rather than an on-premises datacenter.

What are the key components of cloud native development?

Cloud native architecture relies on several essential technologies including containers, microservices, and open source software.

Microservices

With a cloud native approach, developers focus on creating specialized, single-function services known as microservices. Together, these small, individual units make up a complete application—but each one can be deployed, upgraded, and managed on its own. By treating microservices independently of each other, developers can focus on the fundamentals of each component's specialized functionality.

Containers

Cloud native applications need to be lightweight and portable, which is where containerization comes in. This method of operating system virtualization is often used to make microservices easy to manage. Unlike standard virtual machines, which require an embedded operating system, containers are designed to run anywhere and are not reliant on any one cloud platform or specific cloud service. When packaged in a container with all the resources it needs to run, a microservices architecture can be scaled quickly and independently of other microservices.

Open-source software

The containers that microservices run in are managed by platforms such as Docker and Kubernetes, the open-source software commonly used to automate the process of deploying and scaling cloud native applications.

Application delivery controllers

Another key component of cloud native networking is the application delivery controller (ADC), which enables secure communication between the outside world and microservices. This component of cloud native technologies also secures traffic among microservices, and provides load balancing to distribute application traffic and prevent bottlenecks. In addition, many organizations are moving beyond traditional application delivery controllers to leverage the benefits of cloud networking, where part or all of network resources are used in the cloud.

What are the biggest benefits of cloud native applications?

Companies are increasingly looking to move legacy applications to the cloud, and many startups are embracing this DevOps approach from the outset. The reason? Building cloud native applications as a set of microservices that run in containers offers tremendous benefits in the form of resiliency, portability, and agile IT operations. More specifically, common advantages include:

  • Fast updates: By chunking up an application’s code into smaller, more manageable units of microservices, developers can quickly deploy updates for any part of the application—and push code to production many times a day rather than monthly or quarterly. There’s no need to wait for one large release. Instead, engineers can make changes frequently, incrementally, and even automatically, which in turn empowers companies to add new and improved application features at the pace customers have come to expect.
  • Minimal downtime: With traditional application development, making updates requires a complete software overhaul. There’s no way for IT departments to identify or fix a problem without impacting the entire system and causing hours of downtime. In contrast, cloud native app development supports continuous delivery with software that stays online as individual issues are addressed. The isolation inherent to containers means an application can be updated by targeting individual microservices as needed, which means problems and bugs can be resolved fast—without causing significant downtimes or disruptions for the end user.
  • Increased flexibility: Because cloud native applications can be easily moved to different environments, companies can seamlessly distribute apps across cloud providers. Cloud native apps can be quickly migrated to public clouds and private clouds, which means it’s relatively simple for organizations to leverage the cloud infrastructure that works best for budgets and business priorities—even as they change.

Citrix solutions for cloud native networking

As companies move away from datacenters toward cloud providers, there’s a lot to consider. Citrix ADC makes it easy to transition to a cloud native architecture at your own pace. Choose from a broad selection of Kubernetes and other open-source platforms so you can leverage existing skill sets within your IT operations, rather than having to retrain or invest in new resources. Gain the flexibility you need to get applications to production quickly and reliably—and to exceed the expectations of your customers.