DevOps was created to reconcile these two opposing camps. To fully understand it, we must deconstruct this tragedy in 3 acts, leading to the Dev/Ops rupture.
DeVops Practices & tools
DevOps is a set of practices that standardize software development (Devs) and infrastructure management (Ops) processes to shorten development and software update delivery cycles. Here you will find the most important practices.
CI/CD practices are the answer to problems caused by new code integration. More specifically, it is about integrating automation and continuous monitoring throughout the application lifecycle, known as the “CI/CD pipeline».
CI, intégration continue, is a development practice in which code changes are regularly integrated into a centralized repository and then creation and testing operations are performed automatically.
CD, livraison continue (Continuous delivery), allows test automation without being limited to unit testing, in order to test and check application updates on several dimensions before deploying them to clients.
Microservices architecture is the process of breaking down an application into a set of small, independent (micro) services. Each microservice focuses on a specific set of business functionality and communicates with other services via application programming interfaces (APIs). Microservices allow organizations to not be locked into a single technology stack.
Infrastructure as a Code
As the term implies, Infrastructure as a Code is a way of managing your operating environment in the same way that you manage applications or any other code that is intended to be pushed into production.
Simply put, rather than manually changing the setup, the infrastructure is managed by scripts stored in a version control system (VCS) and versioned on command. These text files are called “Manifests” and are used by tools like Kubernetes to automatically provision and configure servers
“Simply put, things always had to be in a production-ready state: if you wrote it, you darn well had to be there to get it running!”
— Mike Miller
Monitoring et logging
Le monitoring est un pilier de la pratique DevOps. Le contrôle continu (continuous monitoring) est un processus automatisé servant à détecter les problèmes de conformité et les menaces de sécurité à chaque phase du pipeline DevOps.
Les avantages de cette pratique sont multiples : amélioration de la transparence et de la visibilité des opérations informatiques, à relever les problèmes de performance, suivre le comportement des utilisateurs.
Communication & collaboration
Communication between operations and developers is at the core of the DevOps approach. The feedback loop plays an essential role in every phase of planning and delivery but not in the intermediary phases.
This is why DevOps must be supported by collaboration. Each team must identify the points of friction, have regular feedback on all aspects of their work.
In a nutshell
DevOps requires a culture shift and the implementation of new tools and practices.
The practice of DevOps encourages communication and collaboration between teams, using frequent but small-scale updates for continuous integration and deployment. To get the most out of DevOps, an enterprise must adopt an adapted architecture (microservices) and implement automation practices, especially concerning the infrastructure (IaC) in order to be able to react more quickly to problems.
You may also like
DevOps adopts the same goal as Lean, which is to reduce or eliminate waste, and in IT waste comes in many forms. Rework...
DevOps is a set of practices that standardize software development (Devs) and infrastructure management (Ops) processes to...