Learn DevSecOps Hands-On: Infrastructure Security, Automation & GitLab CI/CD
In this project, I have designed a comprehensive DevSecOps environment that allows you to learn key concepts, explore various tools, and understand how they integrate seamlessly.
High-Level Overview:
---------------------------------
Network Security: I have deployed a pfSense firewall to secure the infrastructure, manage access control, and regulate inbound and outbound traffic.
Version Control & CI/CD: A GitLab server is set up to handle version control for different configurations and enable a GitLab CI/CD pipeline for automated deployments.
Kubernetes Cluster: The project includes a Kubernetes cluster deployed within the secured firewall. Applications are deployed within this cluster, demonstrating how Kubernetes operates in a production environment.
Automation & Configuration Management: I have used Puppet and Ansible to automate daily tasks and server configurations. Configuration management is handled via Git, allowing for version-controlled infrastructure as code (IaC) and seamless deployment from a centralized system.
Monitoring & Observability: A monitoring system has been installed to track the health and performance of all Linux servers, ensuring infrastructure stability.
Application Deployment: A web application is deployed using GitLab CI/CD. Puppet is used for configuration management, while databases are installed and managed. The application demonstrates frontend-backend interactions, where data entered through the frontend is processed and stored in the backend database.
The purpose of this project is to provide hands-on experience with DevSecOps practices, from infrastructure security to automation, continuous integration/deployment, and monitoring, helping you understand how these technologies function in real-world production environments.
https://forge.puppet.com/
https://www.puppet.com/
https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html
https://www.pfsense.org/
https://about.gitlab.com/
https://docs.gitlab.com/ee/tutorials/
https://kubernetes.io/docs/home/
https://www.netdata.cloud/
All Installation Documentation on my gitlab account:
https://gitlab.com/devsecops1842105/devsecops/-/tree/main