dgt_oss01 – Some relevant projects

Module Title: dgt_oss01 – Some relevant open source projects

Description:

“dgt_oss01 – Some relevant open source projects” is a module on Open Source projects and on DevOps and Site Reliability Engineering (SRE) practices. It covers the main tools and methodologies used in modern software development and infrastructure management.

You will study what each of these projects does and how it works inside. When it is time to use them, you will not write playbooks, PromQL queries or manifests by hand: you will ask the machine, in natural language, to install Prometheus, build a Grafana dashboard or deploy an application on Kubernetes, and then read what it generated, check it against what you learned, and get it corrected where it falls short.

Module Objectives:

  1. Open Source Foundations: Understand the philosophy and benefits of open-source projects. Learn what contributing to or using these resources involves.

  2. DevOps Principles: Explore key DevOps principles, including continuous integration and delivery (CI/CD), automation, and collaboration between development and operations teams.

  3. SRE Practices: Grasp the fundamentals of Site Reliability Engineering, focusing on building scalable and highly reliable software systems and on how they are operated.

  4. Configuration Management Tools: Understand how Ansible, Chef, and Puppet automate server setup and maintenance, then instruct the machine to automate a setup with them and review the playbooks or recipes it produces.

  5. Monitoring and Alerting Systems: Learn how monitoring with Prometheus and AlertManager works, and practise describing to the machine which metrics and alerts you need, then verify that its rules really detect the conditions you care about.

  6. Visualization Tools: Learn how Grafana dashboards visualize complex data to support decision-making, and judge whether a dashboard the machine builds actually answers your questions.

  7. Containerization Technologies: Delve into Docker and Podman to understand containerization, its benefits, and how it provides consistency across development environments.

  8. Orchestration with Kubernetes: Understand how Kubernetes manages containerized applications at scale and the best practices for large-scale workloads, so that you can direct the machine to deploy them and verify the result.

Module Structure:

  • Module 1: Introduction to Open Source, DevOps, and SRE
  • Overview of key concepts
  • The impact of open source in modern IT

  • Module 2: Configuration Management Tools

  • Ansible: automation basics
  • Chef & Puppet: Infrastructure as Code (IaC) approaches

  • Module 3: Monitoring, Alerting, and Visualization

  • Having the machine set up Prometheus for system metrics, and checking its configuration
  • Integrating AlertManager for real-time alerts
  • Dashboards with Grafana: describing what you want to see and reviewing what is built

  • Module 4: Containerization Essentials

  • Docker fundamentals
  • Introduction to Podman as a drop-in replacement for Docker

  • Module 5: Kubernetes Orchestration

  • Basics of Kubernetes architecture
  • Deploying applications on Kubernetes clusters through natural-language instructions
  • Advanced topics: scaling, networking, and security in Kubernetes

Target Audience:

This module is intended for IT professionals, system administrators, developers, and DevOps engineers who manage modern software environments. Participants should have a basic understanding of Linux systems and of how software is built and run.

By the end of this module, participants will be able to direct the machine in building robust, scalable, and reliable solutions with widely used open-source tools, and to verify that those solutions are correct.
The students can push their exercises to the Academy DevOps & SRE Git project. For this module, create a folder with your username as its name in the following subfolder: https://github.com/Garanti-Del-Talento/gdt_academy