
Explore a GitOps‑driven devops project journey with a seasoned engineer, covering Terraform, Kubernetes, ArgoCD, and more. Use step-by-step guidance, documentation, and the GitHub repo to implement the ten projects.
You can find the documentation related to the Application part of the project below:
You can find the documentation related to the Infrastructure part of the project below:
You can find the documentation related to the Installation part of the project below:
You can find the documentation related to the Checking and Testing part of the project below:
You can find the documentation related to the Rollbacks part of the project below:
You can find the documentation related to the Conclusion part of the project below:
Explore a serverless go-based app architecture that converts HTML to PDF via a React UI, API endpoints, SQS, Lambda, and storage in S3 with DynamoDB and MySQL RDS.
Map a cloud-native infrastructure for a pdf conversion app, from VPC-backed ECS and Nginx ingress to Argo CD deployment, Lambda processing, and S3 and DynamoDB storage with ACM SSL.
Orchestrate a multi-component app with Terraform modules and Helm charts on a Kubernetes cluster, wiring S3, ECR, SQS, RDS, and DynamoDB with Argo CD and GitHub Actions.
Set up a unified local workspace by creating a repos folder, then clone and configure three private GitHub repos (infra, cd, ci) and prepare vs code for project-wide collaboration.
Connect your infra repo to Terraform Cloud, create prod and dev workspaces, configure GitHub authentication, set up variables and sensitive values, and prepare AWS DNS and Datadog integration.
Learn to run a Terraform plan in Terraform Cloud, apply infrastructure across ECS, VPC, Route 53, and Argo CD, and validate Kubernetes access with EKS kubeconfig.
Connect to Argo CD on the updated EKS cluster, log in with admin secret, review the demo app's Kubernetes resources, and sync to recreate the Lambda and event source mapping.
Log into the test app via the ingress url, sign up and sign in, then submit a url to generate a pdf and verify argo pods and logs show success.
Explore end-to-end logging, monitoring, and alerting across AWS and Kubernetes, including lambda logs to CloudWatch, S3 outputs, DynamoDB updates, and Datadog dashboards with PagerDuty alerts.
While studying DevOps methodologies, we encounter many technologies, and it is often challenging to stay updated. Comprehensive research and concrete examples are essential.
Ideally, a sample would encompass everything at once and be functionally interesting. Although assembling everything in one project is not feasible, it is possible to cover as many technologies as possible.
We have prepared such a project to consolidate theoretical knowledge in the field of DevOps. At first glance, it appears to be a simple web application, but it encompasses the maximum number of technologies for this project.
*The course is based on live classes at TENTEK DevOps Bootcamp. Visit our profile for more info.
About the instructor
Ernest Ramirez is a dedicated DevOps Engineer with a comprehensive background in DevOps and software development Over the past two years, he has also been sharing his expertise as an instructor at TENTEK DevOps School, teaching Docker, Kubernetes and various hands-on projects.
Project Overview
This educational project is designed for the practical application of knowledge in cloud technology and DevOps, as well as the deployment of web applications using best practices. The stack aims to cover the maximum number of technologies while also carrying a functional and meaningful load.
The project adopts a declarative approach to infrastructure building and demonstrates the deployment automation process for the entire stack. All components of the project and their interrelationships are examined in detail to understand how the application and its operational services function in the actual cloud environment.
The core of this project is a specially designed web application deployed on AWS infrastructure. The application features a microservice architecture, interacts with various types of databases, resides in a Kubernetes (K8s) cluster, and is optimized for high loads.
The project includes CI/CD tools and instructions, as well as operational services for managing configuration, logging, and monitoring. The infrastructure is described declaratively, with a strong emphasis on this aspect.
Everything is packaged into manifests for deployment automation, and the installation process is illustrated in the course.
Scope Statement
Let's define the scope covered by the documentation provided in the course. It includes a description of the project's entire stack and details for all its components at the functionality level. It also outlines the process of infrastructure deployment and step-by-step application installation.
This course does not address the application development process. Fundamental theory is not included.
Objectives
Understand the stack and all its elements.
Deploy infrastructure on AWS using Terraform/Terraform Cloud.
Deploy the app to AWS EKS cluster using GitHub Actions and ArgoCD.
Test the application and its operational services.
Make changes to the codebase and trigger CI/CD.
Set up logging, monitoring and alerting with DataDog and PagerDuty.
Prerequisites
Essential skills and theoretical knowledge in the following areas are required:
AWS at the cloud practitioner level.
Infrastructure as Code (Terraform).
Kubernetes and Helm charts.
SQL and NoSQL database theory.
Linux Operating System.
Tools: Git, GitHub Actions, ArgoCD, DataDog, PagerDuty.