January 19, 2020

 

Cloud Native Journey

In general usage, “cloud-native” refers to building and running workloads by adopting the cloud computing model. Modern applications demand the need to evolve rapidly, as users expect more features. This paved the way to compartmentalize workloads that can be deployed more frequently using robust delivery standards and will help organizations innovate faster with reduced operational overhead.


In CNCF’s words, "Cloud native technologies empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach. These techniques enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, they allow engineers to make high-impact changes frequently and predictably with minimal toil."


The availability of open source software has proven beneficial for digital transformation by minimizing vendor lock-ins and providing unlimited scalability. This means that businesses are better equipped with tools that are needed to modernize application architecture. By aligning devops practices with public cloud capabilities such as AWS, one can further achieve agility and performance in today’s competitive IT environment.


Key concepts of embracing cloud native is being able to build applications using a micro service architecture such as containers and dynamically schedule them without having to reconfigure and deploy for different environments. Many organizations today use kubernetes as their container orchestration, but whats really interesting is that serverless platforms are also gaining momentum because they involve much less hands-on care. However, operationalization still becomes an overhead, making developers rely on managed services and as the number of cloud native tools have also increased, it brings up a significant challenge of choosing the right one for their workloads.


Since situations vary, every organization would have to go through evolution strategies specific to their requirements, to settle on a platform suitable for their use case and succeed with a cloud native mindset. Companies should declare a cloud first model, along with changing the thought pattern of the workforce by implementing processes to support this agility, unless it is proven that it will not be sufficient for the stake holder requirements. Businesses who have gotten to this phase are truly cloud native and will see long term success. Moreover, as new cloud capabilities become available, enterprises will need to leverage the right features for the best cloud solution possible, which necessitates constant optimization.