Introduction to DevOps
Last updated
Was this helpful?
Last updated
Was this helpful?
đ Jump to other notes here
DevOps Pipeline
Test âĄī¸ Build âĄī¸ Deploy âĄī¸ Configure âĄī¸ Monitor
DevOps engineers have some know-how from both DEV and OPERATIONs teams, plus additional DevOps specific technical skills, the core one being building CI/CD (Continuous Integration / Continuous Delivery-Deployment) pipelines.
Methodologies of software development:
Waterfall
several project phases
each feature is tested, deployed
fast development, testing and deployment cycles
Continuous Integration, Continuous Delivery
it supports the need for DevOps tasks (best practices, automation tools ...)
The DevOps engineer needs to assist developers in building the application. This involves configuring automation tools (CI/CD Pipelines) to handle tests, build processes, and packaging the applications into Docker images. Finally, the DevOps engineer ensures the app runs smoothly on deployment servers.
Artifacts are apps built into a single file (jar
, war
, zip
, tar
, etc). An artifact repository can store many different artifact formats by using a manager for managing them all.
multi-format support
LDAP integration, user token support
REST API integration
Backup, restore
Tagging
Cleanup policies
Search functionality
Major Version
Indicates big changes
Usually involves breaking changes
NOT backward-compatible.
Incompatible API changes are made
Minor Version
Introduces new but backward-compatible changes
May include new API features
Does not break existing functionality
Patch Version
Contains minor changes and bug fixes
Does not alter the API
Infrastructure as a Service (IaaS) offers compute, storage and networking on-demand from the cloud providers.
Cloud computing refers to the delivery of computing services (servers, storage, databases, networking, software, and more) over the internet, allowing users to access and utilize these resources on-demand.
Package Manager - apt
for Debian/Ubuntu-based Linux distros
Containers âĄī¸ Image for every server, separate instances
Infrastructure as Code (IaC)
(newer)
- private/internal usage
- public (Java)
- public (Javascript)
I'm using as Linux distro and zsh
as default SHELL
The install commands of the following tools can be found on my notes here -
from the DevOps Bootcamp by Nana
(for Github, GitLab, etc)
(if necessary)
(if necessary)
/
+
- Continuous Integration / Continuous Delivery, pipeline
đ
- Dockerfile
(K8s) - automatic deployment, scaling, and management of containerized applications
- infrastructure automation to provision and manage resources in any cloud or data center
- automates provisioning, configuration management, application deployment, orchestration, and many other IT processes - more for automation post configuration
- systems and service monitoring system
- visualize data