673ec13a44f93d90f9b55444 RoadMap
673ec13a44f93d90f9b55444 RoadMap
with
AWS
https://www.joindevops.com/devsecops-with-aws-siva-82s
12+ Years Experience 6500+ Students Trained
Sivakumar Reddy M., Founder & CEO of Joindevops & Linuscode Technologies,
is an expert in strategic leadership with extensive experience in DevOps, cloud
computing, Java development, IoT, telecom, banking, media, and R&D. He
specializes in modern cloud-native application development, guiding businesses
through legacy-to-cloud migrations, and ensuring robust cloud security and cost
optimization. Sivakumar is a leader in integrating DevSecOps practices across
projects and excels at optimizing performance in modern architectures. With a
passion for exploring advancements in cloud technologies and modern
development practices, he is committed to driving innovation and delivering
cutting-edge solutions for his clients.
https://www.joindevops.com/devsecops-with-aws-siva-82s
DevOps vs DevSecOps
DevOps and DevSecOps are both practices that aim to enhance the software development and
deployment process, but they have distinct focuses and approaches. Let’s break down the key
differences between them:
https://www.joindevops.com/devsecops-with-aws-siva-82s
Tools and Technologies
Covered in this course
Ready to dive in? Join us at JoinDevOps.com and take the first step
toward mastering DevSecOps with AWS!
https://www.joindevops.com/devsecops-with-aws-siva-82s
Start Here
This is a step-by-step roadmap crafted from the perspective of a DevSecOps
professional and instructor. It outlines the most effective path for becoming a
DevSecOps expert with AWS, built on practical insights and real-world experience.
With this roadmap, I hope to guide you on this rewarding yet challenging journey
into DevSecOps.
We've designed this course to make it more personalized based on your current
background as you transition into DevOps or DevSecOps. So whether you're
coming from:
System Administrator
Software Developer
Test Automation Engineer
Network Engineer
Individuals with limited or no IT knowledge
https://www.joindevops.com/devsecops-with-aws-siva-82s
Understanding Software
Development
As a DevOps professional, you won’t necessarily be
writing code, but you’ll work closely with
development teams to improve and automate their
processes. To be effective, it’s essential to understand
the Software Development Life Cycle (SDLC) and
why DevOps has become vital in modern
development.
And generally understand what the whole software development lifecycle covers from
idea to code, all the way to releasing it to the end users!
Waterfall Method:
A traditional, linear
approach where each
stage of development
must be completed
before the next begins.
Agile Methodology:
A more dynamic, iterative
approach where
development happens in
sprints, allowing for
frequent adjustments
based on feedback.
https://www.joindevops.com/devsecops-with-aws-siva-82s
Linux and OS Basics
Linux Commands
Linux File System & Permissions To set up and secure your infrastructure, it
helps to have a basic understanding of
Editors networking and security. Here are a few
things you’ll learn:
Package & Network Management
Basics of IP addresses, ports, and DNS
SSH Key Management HTTP/HTTPS
Security Groups
Launching EC2 Machine
User and Service management
What is Computer?
Client - Server Architecture
Linux Advantages over windows
Quick Tip: You don’t need to be a full-on SysAdmin for DevSecOps. Just focus on
the essentials – leave the deeper server management to the pros. Your goal is to
know enough to get things up and running securely.
https://www.joindevops.com/devsecops-with-aws-siva-82s
Manual Deployment of
3-tier Web Application
Here, we’re diving into a hands-on project that will teach you how to manually deploy a
fully functional 3-tier web application. This is a powerful learning experience because
you’ll be setting up every layer of the application by yourself, from the database to the
backend and frontend – all hosted on your own custom domain!
https://www.joindevops.com/devsecops-with-aws-siva-82s
Shell Scripting
Since you are closely working with developers and system administrators to also automate
tasks for development and operations, you will need to write scripts and small applications
to automate them.
You’ll start with the basics and work your GitHub Setup: How to set up an
way up to industry-level techniques. By account and create a repository to
the end of this section, you’ll know how store your scripts.
to automate the setup and deployment Key Commands:
git add: Add changes to be
of your own 3-tier web application.
committed
git commit: Save your changes
What You’ll Learn: with a message describing what
you did
Shell Scripting Basics and Advanced git push: Upload your changes to
Concepts GitHub
Special Variables
This will allow you to manage different
Conditions
versions of your scripts, collaborate with
Functions
others, and keep a history of your work.
Colors
Exit Status
Loops
Logs and Redirectors
Idempotency
Monitoring and Backup scripts
https://www.joindevops.com/devsecops-with-aws-siva-82s
Automating Deployments
with Ansible
https://www.joindevops.com/devsecops-with-aws-siva-82s
Infrastructure as Code
(IaC) with Terraform
Manually creating and maintaining
infrastructure is not only time-consuming
but also prone to errors—especially when
you need to replicate environments, like
Development, Testing, and Production. To
overcome these challenges, we use 1. Key Terraform Commands
Infrastructure as Code (IaC), where we 2. To manage infrastructure effectively, you’ll
write code to manage and configure use commands such as:
infrastructure. This approach brings terraform init
consistency, automation, and reliability. terraform plan
terraform apply
terraform destroy
3. Advanced Commands and Concepts
Upgrade & Format (upgrade, fmt)
State Management (show state, import,
Why Terraform Over Ansible for Infrastructure
taint, remote state, state locking)
Provisioning?
Variables (tfvars, locals) configurations
Ansible is a powerful tool for managing configurations, reusable and more readable.
but it has limitations when it comes to provisioning Workspaces
complex infrastructure. Terraform, on the other hand, is
Loops and Conditionals
purpose-built for provisioning infrastructure, which
makes it more efficient for tasks like setting up cloud Provisioners
resources, networking, and scaling. Here’s how they 4. Hands-On: Creating Infrastructure and
differ: Deploying the Web Application
Ansible: Great for configuration management—think
5. Once you understand the concepts, you’ll
of setting up software and managing server settings. create infrastructure for your 3-tier web
application:
Terraform: Ideal for provisioning—creating and
Set up networking components like
managing cloud infrastructure such as servers,
databases, and networking. Virtual Private Clouds (VPCs), subnets,
and security groups.
Configure elastic IPs, NAT gateways,
Learning Terraform from Basics to Advanced Concepts and load balancers to distribute traffic
We’ll start by understanding the basics of how
Terraform works, and we’ll move step-by-step into
efficiently.
more advanced topics. Here’s what you’ll learn: Deploy your backend, frontend, and
File and Folder Structure database layers with complete
Learn how Terraform’s files and folders are
automation using Terraform.
organized.
Writing Custom Modules
Modules are reusable pieces of Terraform code.
https://www.joindevops.com/devsecops-with-aws-siva-82s
CI/CD Pipelines:
Automating Deployments
with Jenkins
CI/CD (Continuous Integration and
Continuous Deployment) is at the core of
DevOps. It helps automatically build, test,
and deploy new code changes, making the
process fast, repeatable, and reliable.
When developers make changes—like
adding a feature or fixing a bug—the Jenkins is one of the most popular
CI/CD pipeline ensures that the updated tools for setting up these
code gets tested and deployed seamlessly. pipelines. It allows you to
automate each step, from testing
Key Topics We’ll Cover: to deploying, ensuring consistency
and reducing manual errors.
Jenkins Pipeline Jobs: Learn to create jobs to Alongside Jenkins, we also use
automate testing and deployment of code.
tools like SonarQube for checking
Master-Agent Setup: Understand how Jenkins’
code quality and Veracode for
Master-Agent setup allows scalability.
SonarQube Integration: Use SonarQube to
security scans.
automatically check for code quality issues and
vulnerabilities.
Static and Dynamic Security Testing: Learn how
SAST (Static Application Security Testing) and
DAST (Dynamic Application Security Testing) help
secure your applications.
By the end of this module, you’ll be able to set up automated pipelines that take code from a developer’s push
to deployment—all with Jenkins, ensuring high quality and secure software releases.
https://www.joindevops.com/devsecops-with-aws-siva-82s
Cloud Provider
AWS has loads of services, but you only need to learn the services you/your company actually
needs. E.g. when the K8s cluster runs on AWS you need to learn the EKS service as well.
Once you learn one IaaS platform, it's easy to learn others
https://www.joindevops.com/devsecops-with-aws-siva-82s
Containerization with
Docker
system, which makes them more flexible than bare metal Docker Compose: Use Docker Compose to run multiple
but still resource-heavy. containers together—essential for deploying more
Containers: Containers virtualize only the application
complex applications with databases, backends, and
layer. This makes them lightweight and faster, as they
frontends.
don’t need to run a full OS for every instance.
https://www.joindevops.com/devsecops-with-aws-siva-82s
Container Orchestration
with Kubernetes
Why Kubernetes Over Docker Alone?
With Docker, managing a few containers is easy. But as
applications grow and we need to run multiple services,
scaling becomes a challenge. Kubernetes automates the
deployment, scaling, and management of containerized
applications, making it easier to maintain large systems. That’s Kubernetes, also known as K8s, is the
why we use Kubernetes alongside Docker for better scalability most popular tool for managing
and reliability. containers at scale. While Docker helps
us create and run individual containers,
Kubernetes comes into play when you
need to orchestrate hundreds or even
thousands of containers across multiple
We’ll use Amazon EKS (Elastic Kubernetes Service), which
servers, ensuring that everything works
helps us manage Kubernetes without worrying too much
together seamlessly.
about the underlying infrastructure.
https://www.joindevops.com/devsecops-with-aws-siva-82s
Version Control with
Git
https://www.joindevops.com/devsecops-with-aws-siva-82s
Scripting Language
Since you are closely working with developers
and system administrators to also automate tasks
for development and operations, you will need to
write scripts and small applications to automate
Python is one of the most popular
them.
programming languages and easy to
learn
For that, you will need some scripting or basic
programming skills.
Scripting Options:
OS-Specific Scripting Languages:
Bash, PowerShell: Great for automating
tasks within their respective environments.
OS-Independent Languages:
Python, Ruby, JavaScript, Go: These are
versatile, powerful, and more in demand in
DevOps.
These languages are more powerful and flexible. If you know one of these, it will make you much
more valuable as a DevOps engineer.
https://www.joindevops.com/devsecops-with-aws-siva-82s
ArgoCD
course will guide you through deployments. It integrates directly with Git,
You’ll also learn to write YAML configurations for projects, set up sync policies to
keep applications up-to-date automatically, and understand the best practices for
using ArgoCD effectively to maintain consistency and automation in your
deployments.
By the end of this module, you'll be able to use ArgoCD to manage Kubernetes
clusters effortlessly with a clear GitOps workflow.
https://www.joindevops.com/devsecops-with-aws-siva-82s
Monitoring &
Observability
Once software is in production, it is
important to monitor it to track the
performance, discover problems in your Prometheus and Grafana:
infrastructure and the application. Prometheus is a time-series database that helps
collect metrics from your systems. We’ll use Node
Exporter to gather metrics such as CPU utilization,
RAM, disk usage, and network activity.
We’ll also cover Prometheus Rules for creating
alerts and use the Alert Manager to notify you of
any critical issues.
Grafana will be used to create visual dashboards
for real-time monitoring of system health.
4 Golden Signals:
Latency: How long it takes for
requests to be processed.
Errors: The number of failed requests.
Traffic: The overall load on the
ELK Stack for Log Management:
system. Elasticsearch helps store and search log data.
Saturation (e.g., CPU usage, RAM, Kibana provides visual insights into logs.
etc.): How "full" your resources are. Filebeat collects logs, while Logstash processes
them to provide structured data for analysis.
https://www.joindevops.com/devsecops-with-aws-siva-82s
on your
DevOps journey!