With enterprise cloud becoming mainstream, the business case and drivers for adoption have also evolved. The initial phase of adoption focused on operational cost reduction and simplicity – what we call the “Cloud for Efficiency” paradigm. We have now entered Wave 2 of enterprise cloud adoption, where the cloud’s potential to play a critical role in influencing and driving business outcomes is being realized. We call this the “Cloud for Digital” paradigm. Indeed, cloud is now truly the bedrock for digital businesses, as we wrote about earlier.
This is good and powerful news for enterprises. However, to successfully leverage cloud as a business value enabler, the services stack needs to be designed to take advantage of all the inherent benefits “native” to the cloud model – scalability, agility, resilience, and extendibility.
Cloud Native – What Does it Mean Anyway?
Cloud native is not just selective use of cloud infrastructure and platform-based models to reduce costs. Neither is it just about building and deploying applications at pace. And it is definitely not just about adopting new age themes such as PaaS or microservices or serverless. Cloud native includes all of these, and more.
We see cloud native as a philosophy to establish a tightly integrated, scalable, agile, and resilient IT services stack that can:
- Enable rapid build, iteration, and delivery of, or access to, service features/functionalities based on business dynamics
- Autonomously and seamlessly adapt to any or all changes in business operation volumes
- Offer a superior and consistent service experience, irrespective of the point, mode, or scale of services consumption.
Achieving a true cloud native design requires the underlying philosophy to be embedded within the design of both the application and infrastructure stacks. This is key for business value creation, as lack of autonomy and agility within either layer hinders the necessary straight-through processing across the integrated stack.
In this regard, there are salient features that define an ideal cloud native IT stack:
Cloud native applications – key tenets
- Extendable architecture: Applications should be designed for minimal complexity around adding/modifying features, through build or API connections. While microservices inherently enable this, not all monolithic applications need to be ruled out from becoming components of a cloud native environment
- Operational awareness and resilience: The application should be designed to track its own health and operational performance, rather than shifting the entire onus on to the infrastructure teams. Fail-safe measures should be built in the applications to maximize service continuity
- Declarative by design: Applications should be built to trust the resilience of underlying communications and operations, based on declarative programming. This can help simplify applications by leveraging functionalities across different contexts and driving interoperability among applications.
Cloud native infrastructure – key tenets
- Services abstraction: Infrastructure services should be delivered via a unified platform that seamlessly pools discrete cloud resources and makes them available through APIs (enabling the same programs to be used in different contexts, and applications to easily consume infrastructure services)
- Infrastructure as software: IT infrastructure resources should be built, provisioned/deprovisioned, managed, and pooled/scaled based on individual application requirements. This should be completely executed using software with minimal/no human intervention
- Embedded security as code: Security for infrastructure should be codified to enable autonomous enforcement of policies across individual deploy and run scenarios. Policy changes should be tracked and managed based on version control principles as leveraged in “Infrastructure as Code” designs.
Exponential Value Comes with Increased Complexity
While cloud native has, understandably, garnered significant enterprise interest, the transition to a cloud native model is far from simple. It requires designing and managing complex architectures, and making meaningful upfront investments in people, processes, and technologies/service delivery themes.
Everest Group’s SMART enterprise framework encapsulates the comprehensive and complex set of requirements to enable a cloud native environment in its true sense.
Adopting Cloud Native? Think before You Leap
Cloud native environments are inherently complex to design and take time to scale. Consequently, the concept is not (currently) meant for all organizations, functions, or applications. Enterprises need to carefully gauge their readiness through a thorough examination of multiple organizational and technical considerations.
Our latest report titled Cloud Enablement Services – Market Trends and Services PEAK Matrix™ Assessment 2019: An Enterprise Primer for Adopting (or Intelligently Ignoring!) Cloud Native delves further into the cloud native concept. The report also provides the assessment and detailed profiles of the 24 IT service providers featured on Everest Group’s Cloud Enablement Services PEAK MatrixTM.
Feel free to reach out us to explore the cloud native concept further. We will be happy to hear your story, questions, concerns, and successes!