Becoming a software developer is not always about designing and coding applications; it’s also significant for any software developer to understand how the deployment process runs and how the infra operates.
Hence, understanding the fundamentals is of utmost importance.
How the industry has evolved ! Resource: https://www.linkedin.com/learning/devops-foundations-going-cloud-native
As Cloud-native is among the most pervasive terms heard across IT today, let’s understand its basics.
What precisely is cloud-native?
Cloud-native is an approach that enables developers and organizations to be more agile, providing workload portability and scalability.
CNCF ( Cloud Native Computing Foundation ) defines it as Cloud-native technologies that empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, micro services, immutable infrastructure, and declarative APIs exemplify this approach.
Four Pillars of Cloud-Native:
Use micro service approach to build applications.
Package micro service as containers.
Use the Dev Ops approach to deploy infrastructure.
Continuously deliver your applications to end customers.
Cloud-native relies on existing technologies and assumes that organizations have already undergone a paradigm shift to Dev Ops and continuous integration or delivery. The aim is to get the development team and operation teams to work better together.
Thus, operations get the ability to handle infrastructure in a much more agile manner. With features to manage resources automatically,quickly scaling the infrastructure and platform features to recover from application failures allows operations to be more resilient. This allows ops to spend more time building better infrastructure,managing machine utilization, and improving operational overhead in general.
Containers are closely associated with cloud-native terminology. Containers are used to run a single application with all required dependencies. The main characteristics of containers are easy to manage, deploy, and fast to recover. Kubernetes is a container orchestrator that is capable of solutionizing the integration of the following functionalities:
Runtime
Networking
Storage
Service Mesh
Logs and metrics
Tracing
The main reasons why an organization needs to adopt cloud-native technologies are enabling quick delivery of value to customers and quickly extending to new features and technologies.
There are two perspectives to keep in mind.
Business :
Agility
Growth
Service availability
Technical perspective:
Automation
Orchestration
Observability
Photo by Scott Graham on Unsplash
Stay tuned for more!