Understanding DevOps Fundamentals
Understanding DevOps Fundamentals
family
What
is
Devops ?
DEFINITION
What is DEV ?
DEFINITION
Are just tools we use daily to easy our life and solve issues, for
example we use facebook, twitter, whatsapp to communicate
or banking applications to monitor our bank accounts, or
doordash to order food when we are hungry, or gmail,
yahoo,msn, aol, outlook to check and monitor our email.
DEFINITION
Has
NOTHING
to do with
DEFINITION
dev
elop
DEFINITION
In other words
Write application
DEFINITION
In other words
DO
DEFINITION
Developers world
DEFINITION
What is OPS
DEFINITION
What is Operation
In simple words operation in this context stand for transforming a code coming from
developers into a working application
DEFINITION
pl i c a t i on
e ap
Writ
c od e mor
e
A r e
he
on t
of
Side
t he
to
i rt h
G iv e b
Now that you have an idea
of what is
Tired of the big grammar ?
In simple worlds DevOps is a tradition or culture that help break the gap between
Development and operations teams to improve and better control the software
Pro
vid
e to
Pr ol s
ov for
Development
ide
oot
team (DEV)
ls
f or
r
ls fo
v i de too
Provide tools for Pro
Security and
Infosec
team
Network
Team (IT)
Quality
Engineers
Database
Administrators
CyberSecurity
Developers Engineers
IT Helpdesk
Network
Engineers
DEVOPS ENGINEERS COLLEAGUES Security
Engineers
Quality
Developers Engineers
DEVOPS ENGINEERS
Devops process
Devops process
Continue Continuous
Continue Continuous
Planning Integration
Development code
(CI) Inspection
Continuous
Testing
Continuous Continuous
Security Continuous
Deployment
Delivery (CD)
Continue
Monitoring and
Continuous Continuous Logging
Feedback Improvement
Devops process
Continue
Planning
The process of continuously defining goals, tasks, and
requirements for the project, involving regular
discussions to ensure everyone is aligned.
Continue
Development
The practice of constantly writing, testing, and building
code in small increments, so features are developed
quickly and efficiently.
Continuous
Integration
(CI)
Frequently merging all code changes into a shared
repository, followed by automated testing to ensure new
code works well with existing code.
Continuous
code
Inspection
Reviewing code regularly, either manually or through
automated tools, to identify issues like bugs, security
vulnerabilities, and code quality concerns.
Continuous
Security
Continuous
Deployment
Automatically deploying code to the live production
environment after all tests pass, making the latest
updates instantly available to users.
Continuous
Delivery (CD)
Automatically deploying code to the live production
environment after all tests pass, making the latest
updates instantly available to users.
Continuous
Feedback
Continuous
Improvement
Continuous
Monitoring and
Logging
Continuous
Version Integration and Configuration
Control Continuous Management Containerization
Systems and Orchestration
Deployment
(CI/CD)
Artifact Collaboration
Infrastructure Monitoring and
Repository Communication
as Code (IaC) and Logging Management
Version
Control
Systems
Devops Tooling
Continuous
Integration and
Continuous
Deployment
(CI/CD)
Devops Tooling
Configuration
Management
Devops Tooling
Containerization
and Orchestration
Devops Tooling
Infrastructure
as Code (IaC)
Devops Tooling
Monitoring
and Logging
Devops Tooling
Artifact
Repository
Management
Devops Tooling
Collaboration
and
Communication
Devops Tooling
Source Code
Analysis (Static
Code Analysis)
Devops Tooling
Security and
Vulnerability
Scanning
Devops Tooling
Testing
Devops Tooling
Backup and
Disaster
Recovery
Metric for Devops
Success
Deployment
Frequency How often deployments
happen.
Mean Time to
Recovery
(MTTR) Average time to recover from
failures.
Change Failure
Rate Percentage of changes
causing failures.
Important DevOps
Concepts
Important DevOps
Concepts
Important DevOps
Concepts
Important DevOps
Concepts
Important DevOps
Concepts
Important DevOps
Concepts
Important DevOps
Concepts
Important DevOps
Concepts
Important DevOps
Concepts
Important DevOps
Concepts
Important DevOps
Concepts
Important DevOps
Concepts
What to know from
day 1 at work as new
DevOps Engineer
Version Control
(e.g., Git)
Key Skills:
Commit, push,
pull, merge,
branching.
What to know from
day 1 at work as new
DevOps Engineer
Continuous Integration
and Continuous
Deployment (CI/CD)
Infrastructure as Code
(IaC)
Containers and
Containerization
Orchestration
Automation
Networking Basics
Key Concepts: IP
addresses, DNS,
HTTP/HTTPS, firewalls,
VPN.
What to know from
day 1 at work as new
DevOps Engineer
Cloud Platforms
Security Fundamentals
Configuration
Management
CI/CD Pipeline
Components
Fundamentals of Load
Balancing and Scaling
Key Concepts: IP
addresses, DNS, ports,
HTTP methods, load
balancers.
What to know from
day 1 at work as new
DevOps Engineer
Observability
Collaboration and
Communication
Blameless
Postmortems and
Incident Management
Testing/QA
Environment
Development
Staging
Environment
DevOps Environment
Production
Environment
Here are the key environments that typically require DevOps
practices to ensure smooth operations, consistency, and efficiency
throughout the software development lifecycle
1. Development Environment
2. Testing/QA Environment
3. Staging Environment
4. Production Environment
Production
Environment
Development
Environment
Testing/QA
Environment Staging
Environment
What does DevOps
Engineer Deploy ?
Infrastructure
Application
Version Control -
Code Repositories - Database Applications -
GitHub, GitLab, Bitbucket
Artifactory, Nexus MySQL, PostgreSQL,
MongoDB
Automation Tools -
Ansible Tower, Rundeck
Infrastructure tools
Code
Devops
Get the code from DEV
team
Docker Devops take the docker
image and turn it into an
application
image
Devops use automation
tools to transform DEV
code into a docker
image
Application
Application birth
Code
Devops
Get the code from DEV
team
Code
Devops
Get the code from DEV
team
Code
Devops
Get the code from DEV
team
Code
Devops
Get the code from DEV
team
Code
Devops
Get the code from DEV
team
Code
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Docker
image
Devops
Get the code from DEV
team
Application
An application is essentially a
program or set of programs
designed to perform specific
tasks, delivering particular
functionality to end users or
other systems.
An Application is a Set of Code and Configurations to
Achieve Specific Functionalities
Application birth
Application
Application
Application
Application
Application
Application
Application
Application
Application
Once deployed, an
application’s health and
performance need to be
continuously monitored to
ensure reliability, track usage
metrics, detect anomalies, and
An Application Needs to be Monitored and Managed in troubleshoot issues in real
time.
Production
Application birth
Application
Application
Application
Application
Application
Applications go through a
lifecycle, starting from
development, moving through
testing and staging, and finally
being deployed to production.
This lifecycle may repeat for
An Application Has a Lifecycle from Development to every new version or update.
Deployment
Application birth
Application
Application
Proper documentation of an
application’s functionality, setup
instructions, API references,
and troubleshooting guides is
crucial to support developers,
operators, and end-users,
especially for complex
An Application Requires Documentation applications.
Application birth
Application
Application
Code
Devops
Get the code from DEV
team
Docker Devops take the docker
image and turn it into an
application
image
Devops use automation
tools to transform DEV
code to a docker image
Application
Application birth
Docke
Code rfile
Dock
er
image
Doc
Application ker
con DockerHub
tain
er
Application birth
Docke
Devops get code from dev team
Dock
er
image
The docker container use the application
code to create the application Devops use docker image to create a docker
container
con DockerHub
tain
er
Application birth
Docke
Dockerfile: The DevOps team creates a Dockerfile, which contains
instructions on how to package the code and dependencies into a
rfile Docker image. The Dockerfile encapsulates all necessary steps to
build the environment.
Application birth
Dock
er Docker Image: Using the Dockerfile, a Docker image is built. This
image is a snapshot of the application environment, containing all
image the code, libraries, and dependencies required to run the
application.
Application birth
e rH
accessible for future use and deployment on different
environments.
u b
Application birth
ker
container, which is a runnable instance of the image. The container
runs the application by isolating it in a consistent environment.
con
tain
er
Application birth
Dockerfile
Dockerfile
Dockerfile
Dockerfile
Dockerfile
Dockerfile
Dockerfile
Dockerfile
Dockerfile
Dockerfile
Dockerfile
Dockerfile
Dockerfile
Dockerfile
DockerHub
DockerHub
DockerHub
DockerHub
DockerHub
DockerHub
DockerHub
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Docker
container
Imagine you’re writing a book, but you’re not working on it alone. You
have a team of writers, editors, and designers all making changes to
the manuscript. Now, imagine the chaos if everyone just edited a single
copy of the book on their own computer without any way to track
changes, work on separate sections, or see what others were doing.
In software development, writing code is a lot like writing that book. Developers
(the writers) need a system to store and manage all the code they’re writing so
they can collaborate, make changes safely, and keep track of the history of
every change. T
Questions: Where does developers store code ?
In the example of the book, imagine you have a central library where
all versions of the manuscript are stored. This library allows writers to
check out a copy, make changes, and check it back in.
In coding, this central library is a Version Control System (VCS) like GitHub, GitLab, or Bitbucket.
It’s an online place where all the code (the manuscript) is stored and where developers can safely
collaborate and track changes.
Questions: Where does developers store code ?
In the book example, every time a writer checks out a copy, makes
edits, and returns it, the library keeps a record of who made which
changes. This way, if any mistakes are made, you can go back to an
earlier version.
Similarly, in a VCS, every change to the code is recorded as a “commit” (like a saved snapshot). This
means you can look back through the history of changes, see who made what change, and even
revert to an earlier version if something goes wrong.
Questions: Where does developers store code ?
Let’s say you have different writers working on different chapters of the
book at the same time. Instead of editing the main manuscript directly,
they work on their own copies of their specific chapters and merge
them into the main book when they’re done.
In coding, developers use branches to work on different parts of the code independently. They can
try out new features or make changes without affecting the main version. When they’re done and
everything looks good, they can “merge” their branch back into the main code.
Questions: Where does developers store code ?
Before any major edits are added to the final manuscript, an editor
reviews them to make sure they fit with the overall story. Similarly,
before code is added to the main version, other developers review it to
check for errors or improvements.
In VCS systems like GitHub, developers create something called a pull request to ask for their
changes to be reviewed. Once the changes are approved, they’re added to the main code.
Questions: Where does developers store code ?
In our book example, the central library could be online, so any writer
can access the manuscript from anywhere in the world.
In coding, VCS platforms like GitHub are online, so developers can access the code from anywhere.
They “clone” (make a copy of) the code to work on their own computer, then “push” their changes
back to the online repository when they’re done.
Example: Building a Simple To-Do List App Together
Imagine you and a friend are building a to-do list app together. You both want to be able to
add, delete, and organize tasks, and each of you will work on different parts of the app.
Here’s how you’d use a Version Control System like GitHub:
● You set up a GitHub repository (like an online folder) for your app. This is where the
main version of the code lives.
● Every time you make progress on your feature, you commit (save) your changes with a
message describing what you did, like “Added feature to add tasks to the to-do list.”
Example: Building a Simple To-Do List App Together
Imagine you and a friend are building a to-do list app together. You both want to be able to
add, delete, and organize tasks, and each of you will work on different parts of the app.
Here’s how you’d use a Version Control System like GitHub:
● When you’re both done with your features, you each create a pull request on
GitHub. This allows you to review each other’s work, make sure everything works
correctly, and then merge the changes into the main code.
● Now, the main code on GitHub has the features for both adding and deleting tasks. You both
“pull” (download) this latest version to your computers, and now you each have the updated
app.
Using a Version Control System like GitHub makes it easy to collaborate, keep track of changes, and
build your app without accidentally overwriting each other’s work. If something goes wrong, you can
always go back to an earlier version of the code and fix it.
Questions
APIs (Application
Programming
Interfaces)
Database
Question: What is structure of an application ?
Complex application
Middleware
Services
Authentication and Cache
Authorization
Question: What is structure of an application ?
APIs (Application
Programming The “Messenger”
Interfaces)
APIs ensure that data flows smoothly and securely between parts of the
application.
Question: What is structure of an application ?
● This is like the locks on your doors or a security system Authentication and Authorization: The
in the house, controlling who can enter and what they security system, controlling who can access
and modify data.
can access.
A monolithic application is built as one large, unified piece. All the components (like the
user interface, backend, database, and business logic) are tightly connected and
operate as a single unit.
Monolithic Application
Questions
Microservices
Application
Microservice
Each person focuses on their own job and works independently, but they work together
to make the restaurant run smoothly. If the cashier has a problem, the chef can still
keep making pizzas, and the delivery driver can still deliver orders.
Microservice
What is a Microservice?
Microservices
Application A microservice is like one of these specialists. Instead of building an app where one
big system does everything, we split the app into smaller pieces, and each piece (or
"microservice") has a specific job.
Imagine an online shopping app. Using microservices, the app would be split into smaller
pieces, each with one job:
● The Cart Service sends your cart info to the Order Service.
● The Order Service checks with the Payment Service to process payment.
● The Notification Service sends you a confirmation email.
Each microservice does just one job, and if one has an issue, it doesn’t stop the others from
working.
1. Independent Updates: You can change or update one microservice without affecting the
others.
2. Scalability: If the Cart Service gets busy, you can add more resources to it without
changing the rest of the app.
3. Reliability: If one microservice goes down (like Notifications), the rest of the app still works.
Now that you know a bit about DevOps and Application
etc ..
Let me take you to the next step
Questions
Stateless Stateful
Stateless
Don't store user session data on the server, so each request is treated
independently. Stateless applications are good for dynamic workloads and
changing business requirements. They can easily scale horizontally and are
simpler to develop and maintain. However, they often require frequent database
queries, which can create performance bottlenecks.
Questions
Stateful
Stateful applications are web applications that store data related to user
sessions on the server side
Save client session data on the server, allowing for faster processing and
improved performance. Stateful applications are good for predictable
workloads and consistent user experiences. However, they can be more
difficult to scale than stateless applications.
Questions
Stateless Stateful
Stateless Stateful
Imagine you’re using a computer or a phone to play a game online or browse a website. The
client side and the server side work together like a team to make everything happen.
Client-side vs Server-side
The client side is everything you see and do on your device. It’s what makes the game or website
Client Side look nice and lets you interact with it.
When you open a game or website, all the colors, images, text, and buttons you see are part of the
client side.
If you click a button, type in a text box, or swipe your screen, the client side handles that. It’s like the
“face” of the program that talks to you.
Think of it like the outside of a vending machine: you press buttons, choose snacks, and see the
display. The client side is all about what you can see, touch, and use.
Client-side vs Server-side
The server side is like the engine inside the vending machine that you don’t see. It’s hidden but
does all the important work behind the scenes
Server Side
When you press a button to choose a snack, the server side processes that choice, checks if the snack
is in stock, and then sends it down to you.
On a website, when you log in, the server side checks if your password is correct. Or if you search for
something, it finds the results for you.
So, the server side is the “brain” of the operation. It stores all the information, runs calculations, and
makes sure everything works the way it should. You don’t see it, but it’s working hard every time you
interact with the client side.
Client-side vs Server-side
Whenever you do something on the client side, like press a button, the server side respond. The
client and server talk to each other to make sure everything works smoothly. The client asks for
what you need, and the server figures it out and sends it back.
Networking
Infrastructure Management
Security
CI/CD Pipelines
Monitoring and
Troubleshooting
Microservices and
Containerization
IP
TCP subnet
CIDR Firewalls
DNS Load
balancing
reverse
proxies VPN
TLS SSH
Networking
TCP
HTTPS
DHCP Certificate
MX
record
SOA A record
SSL CNAME
CA
NS Network
NAT Ports
Layers
Networking
When you access a website, the OSI model explains how each layer
interacts. For instance, the Application layer is your web browser, the
Transport layer (using TCP) breaks data into packets, and the Network
layer routes those packets to the correct IP address.
Networking
OS Model
Networking
When you download a file, TCP guarantees that every packet of data
arrives and is reassembled in the correct order. If a packet is lost, TCP
resends it, ensuring your file downloads correctly without missing data.
Networking
Typing [Link] in a browser often takes you to your home router’s settings page. This
IP address uniquely identifies your router on your local network, allowing communication with
connected devices.
Networking
A company firewall may block access to certain websites, like social media, to enhance
productivity. It may also allow only specific applications, like email, to prevent malware from
entering the network.
Networking
High-traffic websites like Amazon use load balancers to distribute incoming requests across
multiple servers, ensuring that no server gets overloaded and users experience fast
response times.
Networking
A reverse proxy like Nginx receives requests for [Link], checks which backend
server is available, and forwards the request to that server. The client only interacts with the
reverse proxy, not the actual backend servers.
Networking
When working remotely, employees use a VPN to securely access the company's internal
network. This allows them to work as if they’re in the office while keeping data secure over
the public internet.
Networking
When you visit a bank’s website (indicated by "[Link] TLS encrypts your data, such as
login credentials, to prevent eavesdropping by malicious parties. Sites without TLS are
labeled "[Link] and are less secure.
Networking
To manage a remote server, a DevOps engineer might use ssh user@[Link]. This
allows them to securely execute commands on the server as if they were physically present,
with data encrypted during the session.
Networking
When you visit a website like [Link] your browser uses HTTP to
communicate with the web server and request the webpage.
Networking
HTTPS (Hypertext HTTPS is the secure version of HTTP, using encryption (TLS/SSL)
Transfer Protocol to protect the data exchanged between the client and server.
Secure)
Banking websites use HTTPS (e.g., [Link] to ensure that sensitive information,
like your password, is encrypted and secure from eavesdropping.
Networking
TCP is used when downloading a file from the internet. If any packet is lost during transfer,
TCP ensures it is resent, so the file downloads correctly.
Networking
Online gaming and video streaming often use UDP because a few lost packets (causing a
minor glitch) are preferable to the delay caused by resending packets.
Networking
When you connect to Wi-Fi at a coffee shop, the router assigns your device an IP address
using DHCP, so you can access the internet.
Networking
The MX record for [Link] might direct emails to [Link], allowing the
domain to receive emails.
Networking
The A record for [Link] might map to [Link], so when you type
[Link], you’re directed to that IP address.
Networking
When you see a padlock icon in the browser address bar (usually for HTTPS sites), SSL or
TLS is securing the data between your browser and the website.
Networking
When a DNS server checks the SOA record for [Link], it learns which server is
authoritative for the domain and can contact the administrator if needed.
Networking
In a home network, your router uses NAT to let multiple devices (laptops, phones) share one
public IP address while assigning each device a unique local IP address.
Networking
Port 80 is commonly used for HTTP traffic, and port 443 is used for HTTPS. When you visit
a website, your browser connects to the server’s IP on port 80 or 443.
Networking
When you visit a secure website ([Link] your browser checks the site’s
digital certificate to verify it’s legitimate. If the certificate is valid and trusted, it establishes a
secure (TLS/SSL) connection. The certificate shows the site’s authenticity and that data
exchange will be encrypted.
Networking
Let’s say [Link] wants to secure its website with HTTPS. It requests a certificate
from a CA, like Let’s Encrypt or DigiCert. The CA verifies the identity of [Link] and
issues a certificate. Now, when users visit [Link], their browsers trust that the
certificate is legitimate because it’s signed by a trusted CA.
Networking
DevOps engineers often manage infrastructure with IaC tools like Terraform,
Ansible, or CloudFormation. Misconfigurations in IaC can lead to security
vulnerabilities.
Infrastructure as Code
(IaC) Security
If a security group in AWS is accidentally set to allow open access (e.g., [Link]/0
on SSH), it can expose your infrastructure to attacks. Knowing how to set secure
defaults and review IaC for security issues is critical.
Security
Network Security
Setting up secure VPCs, subnets, and using security groups and firewalls to
control traffic can help protect sensitive data and systems.
Security
Many DevOps pipelines include stages for scanning code and applications
for vulnerabilities. Knowing how to configure and interpret security tools (like
SonarQube, OWASP Dependency-Check, or Snyk) is valuable.
Application Security
Container Security
Using tools like Aqua Security or Twistlock to scan Docker images for
vulnerabilities, managing permissions within Kubernetes, and avoiding running
containers as the root user are all essential container security practices.
Security
Proper IAM ensures that only authorized users and services have access to
resources. Managing permissions correctly and following the principle of least
privilege are crucial.
Security
Proper IAM ensures that only authorized users and services have access to
resources. Managing permissions correctly and following the principle of
least privilege are crucial.
Configuring IAM roles and policies in AWS or other cloud platforms to limit access
based on roles (e.g., giving production access only to certain team members)
helps reduce the risk of unauthorized access.
Security
Setting up monitoring with tools like Prometheus, Grafana, and ELK stack
(Elasticsearch, Logstash, Kibana) helps detect anomalies. Having incident
response protocols in place helps respond quickly to security incidents.
Security
Many industries have regulatory requirements like GDPR, HIPAA, and SOC
2. Knowing these requirements helps ensure that DevOps practices meet
security standards and legal obligations.
Compliance and
Regulatory
Requirements
Many industries have regulatory requirements like GDPR, HIPAA, and SOC
2. Knowing these requirements helps ensure that DevOps practices meet
security standards and legal obligations.
Compliance and
Regulatory
Requirements
Users, processes, and systems should only have the minimum access
necessary to perform their functions.
Principle of
Least
Privilege
(PoLP)
Reduces the attack surface by limiting access to only what’s necessary, preventing
unauthorized access to sensitive resources.
Important Security
Concepts
Encryption (Data
at Rest and Data
in Transit)
Identity and
Access
Management
(IAM)
Vulnerability
Management
Secrets
Management
Protects sensitive data from exposure, especially in CI/CD pipelines where secrets
are frequently used.
Important Security
Concepts
Compliance and
Regulatory
Standards
Secure Coding
Practices
Prevents common vulnerabilities (like SQL injection and cross-site scripting) and
ensures code is secure by design.
Important Security
Concepts
Limits the spread of attacks within a network and restricts access to sensitive
areas, providing layered security.
Important Security
Concepts
Monitoring and
Logging
Incident
Response and
Recovery
Being prepared with an incident response plan helps organizations respond swiftly
and minimize the impact of security breaches.
Important Security
Concepts
Patching and
Update
Management
Helps prevent attackers from exploiting known vulnerabilities and ensures that
systems are up-to-date and secure.
Important Security
Concepts
Threat Modeling
Helps proactively identify and mitigate risks, making security a built-in aspect of the
system’s design.
Important Security
Concepts
Zero Trust
Architecture
Configuration
Management and
Secure Defaults
Ensures all systems start with secure configurations, reducing vulnerabilities from
default or misconfigured settings.
Important Security
Concepts
Security in CI/CD
(DevSecOps)
Shifts security left, allowing issues to be identified and addressed early in the
development cycle, reducing overall risk.
Important Security
Concepts
API Security
APIs are widely used to integrate services and access data, so securing them is
crucial to protect both backend services and sensitive information.
Important Security
Concepts
Container
Security
Containers are widely used in DevOps, and they introduce unique security
challenges that require special handling.
Important Security
Concepts
NAT (Network
Address
Translation) and
IP Masking
Helps prevent direct access to internal network devices, reducing the risk of
external attacks.
Important Security
Concepts
TLS/SSL
Certificates and
Certificate
Management
Certificates ensure data confidentiality and integrity during transmission and help
users verify the authenticity of a website or server.
Important Security
Concepts
Access control defines who can access resources, and MFA adds an extra
layer of security by requiring multiple forms of verification.
Access Control
and Multi-Factor
Authentication
(MFA)
Access control and MFA help prevent unauthorized access, even if passwords are
compromised.
DATABASE
DevOps engineers often need to integrate database changes into the CI/CD
pipeline to ensure that schema migrations and updates are deployed
seamlessly alongside application code.
Infrastructure as
Code (IaC)
Database Monitoring
and Performance
Tuning
Database Security
Understanding SQL
and NoSQL
Databases
Data migrations (moving data from one database to another or from one
version of a database to another) are common in DevOps workflows,
especially when upgrading applications or changing environments. Knowing
how to plan and execute migrations is essential to avoid data loss and
ensure data integrity.
Data Migrations
Setting up read replicas in MySQL to offload read requests from the primary
database, which improves performance for read-heavy applications.
DATABASE
Database
Configuration and
Optimization