Enterprises have evolved from owning your data center, bare metal hardware/software/resources to ASP models, Data center COLOs to Virtualization (P2V) to private cloud and then to public cloud adoption. Change is constant along this path, as we move from one technology to another, one deployment locality to another – our tools, processes, and knowledge levels, skills etc had to be refreshed and refocused. The latest trend in this evolution is public cloud infrastructure services and container revolution that is the next logical step after physical to virtual migrations. The strategies for effecting organizational efficiency using cloud native adoption is a key mechanism to drive consolidation, remove expensive tooling and processes and labor associated
Public Cloud Adoption Dimensions
Most enterprises unlike SMBs utilize cloud for few specific workloads
• Elastic/Cost efficient infrastructure expansion
• Developer friendly platform services to enable speed to market
• Complex heterogeneous infra ecosystems such as big data
processing/machine learning systems/MPP analytical
systems etc.
• Self service enabled infrastructure and tools for
DevOps adoption
It is very common to fall into well known traps of trying to replicate the patterns that have been working effectively for an enterprise on-premise infrastructure in the process of cloud adoption. This could cause a lot of complexity in the future.
To create an analogy, when the industry went through the phase of P2V migrations and enabled raw/bare metal infrastructure via VMware, Microsoft and Xen’s virtualization technologies an ecosystem of tools/processes were created to support your steady state operations. These tools stood alone or integrated into the enterprise suite of tools and over the period of time became the defacto standard to provision, deprovision, add/remove storage, patch etc.
A different set of tools around creating HA/ Fault Tolerance such as vMotionetc were created and was adopted to support failover and resilency.
Cloud native adoption is a strategy to embrace the toolset and technologies that are readily available in the cloud service provider’s ecosystem or through a market place vendor. This is extremely similar to the approach most enterprises took with VMware toolsets with P2V migrations. Cloud Native thinking stems from carefully analyzing the use cases and applying the right technologies that are comparable to provide current/existing functionality.
Typical 3 tier application architecture of a web based application would like the following very starkly difference between an on-prem and cloud native deployment.
Some of the most basic foundational elements that should be contrasted are summarized in table below:
Empowered Employee Workforce
Cloud native adoption is also a key driver to create a full stack plus empowered employee workforce by providing tools/technologies/apis/automation that was once available to organizational silos. Such empowerment will brew innovation and can create very interesting solutions that could not have been possible before.
Avoid Tool Proliferation and Support Cost Chaos
Cloud native adoption removes the product selection, thinking and poc/evaluation and procurement of variety of tools stitched together to define a solution. More often a stitched best of breed solution is very complex to operate, expensive to upkeep and requires a variety of talent/engieneers /vendors-- a mix to troubleshoot an outage. Cloud native adoption removes all of that since you have one throat to choke and also a rich kexco system of partner customers and other who have realized the same exact issue and challenge.
The Backup That is Never Restored
Considering all the factors mentioned above, cloud computing is rapidly transforming the way enterprise software is being built, operated, and sold. Businesses who understand the insightful impact of cloud computing on their products are implementing cloud-native software development and operations forbeing successful.