Simplifying the Deployment of Cloud-Native Applications

If there’s one thing to be said about on-premises apps, it’s that they are consistent.

They always run at the exact same level of performance and capacity and scale. Some apps can scale, but once they hit their limits, they can’t demand more resources or bandwidth.

This is where VMware’s solution for Cloud-Native Applications come in. A cloud-native app is an app that’s been built to assume it’s running on the cloud, as opposed to fixed, on-premises apps that cannot grow.

As one of the companies charting the course in this new category of technology, VMware enables an automated, easily managed cloud with a host of self-service catalog capabilities via its One Cloud, Any App, Any Device architecture. However, with a new architecture comes a new way of building apps. If you design apps the same way as you built your old on-premises apps, you are essentially hobbling them and preventing them from reaching their full potential in the cloud.

Cloud-native apps are meant for architectures of a massive scale that change frequently.  In a conversation with VMware on Cloud-Native Apps, SAS Software CIO Keith Collins, Collins pointed out the benefit for a retail outlet that has many locations which promote specials and sales, and the subsequent sudden rush of customers.

“This takes a tremendous amount of capacity. If you want to do that to every SKU and every store and every geographic location, the best way to do that, the most efficient way to do that, is to be able to burst, be efficient, and then shut it down and move that capacity on to someplace else,” said Collins.

Only Cloud-Native apps have this capability because they can request, on the fly, more compute and storage capacity, and when the rush is over, automatically de-provision the excess computing power. No human intervention is needed.

“This allows for faster iteration and the ability to take feedback and constantly make updates. You can reduce changes and iterations from years to hours. The architecture of cloud-native apps enables you to move that much more quickly,” said Colbert.

If an on-premises app needs more memory or storage, a developer or IT practitioner has to make manual adjustments.hat process can take days or even weeks. A cloud-native app, that “knows” it is in the cloud and “knows” the cloud is elastic, can simply provision more CPU, memory, or storage space on its own. That is the inherent power of cloud-native apps: they are self-configuring to their needs.

The Cloud-Native Apps team at VMware was created to help developers do what they do best—write apps and rapidly bring them to deployment and market. The developer focuses on the business logic while the app platform behind the scenes handles tasks such as deployment, provisioning and requesting/releasing resources.

Cloud-native apps are not a panacea. There are some verticals in which they can’t or shouldn’t be used, such as regulated industries that don’t allow data upload to the cloud. Some industries, such as healthcare and finance, do not allow private, confidential data to leave the secure confines of the business’s premises.

“The biggest challenge is not technology. You have to reorganize IT and developers and change roles and how people interact,” said Colbert. IT organizations need to adopt a more DevOps-like system, instead of the siloed method so frequently used now, where one group is responsible for one thing, one part of a project, and then it’s handed it off to someone else.”

Instead of developers creating an app or a site, and pushing it to testing, and then testers pushing it to production, now the entire development team is accountable for the entire lifecycle of the cloud-native app, from coding to production.

This creates a challenge around culture, process, organization, the culture of ownership and responsibility.

All of this said, Cloud-Native Apps offer a great deal more capability and capacity from their older on-premises brother. They have greater scalability and self-provisioning capabilities for when you need more capacity, without having to spend days waiting for the IT department to give you more memory or storage space.

The challenges in creating these apps are greatly outweighed by the business benefits and productivity gains they bring.