
Introduction to the course.
You will need an AWS account, please create an account before proceeding.
https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-creating.html
Download and install Git
Download and install Terraform
Download and install Docker Desktop on our workstation.
Download and install Visual Studio Code (vscode) and Goland.
Download and install AWS Cli.
Create a Github repo to hold all of the deployment code.
You will need to create your own Github account.
Walk through the AWS console and create a VPC and EKS cluster.
Configure Terraform to deploy to an AWS account.
Write Terraform code (HCL) to create a VPC to house an EKS cluster.
Write Terraform code (HCL) to create an EKS cluster.
Checking for vulnerabilities in our HCL code using Trivy.
Deploy an example microservice application to EKS.
Cleaning our project from AWS.
Make a Github Actions workflow to create and destroy our Terraform managed resources.
Make a Github Actions workflow to create and destroy our Terraform managed resources.
Deploy the microservice demo to EKS.
Deploy the microservice demo to EKS.
Deploy Kube-Prometheus-Stack to our kubernetes cluster.
Deploy Kube-Prometheus-Stack to our kubernetes cluster.
Connect to Prometheus and Grafana by port forwarding our local port to the port of the pod.
Explaining and wrapping up what we learned in the course.
In today's rapidly evolving landscape of Software as a Service (SaaS) environments, microservices architecture has emerged as a critical approach for building scalable and resilient applications because of this site reliability engineering (SRE) skillset has become highly desirable in the workforce. This course is designed to equip learners with the essential skills and knowledge needed to deploy a microservice to AWS EKS using Terraform and Github Actions.
Participants will embark on a journey through the core concepts of SRE, understanding its role in bridging the gap between software development and operations. Through a series of hands-on exercises, learners will gain proficiency in applying SRE principles to enhance the reliability and resilience of mission-critical systems.
The course will focus on practical implementation using Terraform, an infrastructure as code (IaC) tool, to provision and manage AWS resources needed for deploying microservices on EKS. Participants will master Terraform's declarative syntax to define infrastructure components such as EKS clusters, networking configurations, and security settings, ensuring consistent and repeatable deployments.
Furthermore, learners will explore the power of Github Actions, a continuous integration and continuous delivery (CI/CD) platform, to automate the deployment pipeline for the infrastructure and accompanying microservice example. They will discover how to configure Github Actions workflows to trigger builds to AWS EKS seamlessly, enabling rapid iteration and deployment cycles. Learners will also take a look at vulnerability scanning so that security issues can be identified and mitigated during the development process.
You will learn the following:
Git
Terraform
AWS
Visual Studio Code
Kubernetes
Containers
Github Actions
CICD Pipeline
Vulnerability scanning
Infrastructure as code