bregman-arie/devops-exercises
Devops Exercises
This project is a comprehensive educational curriculum designed to build proficiency across modern infrastructure, cloud-native technologies, and systems administration. It functions as a reference library and interview preparation resource, offering a structured collection of conceptual questions, practical coding challenges, and hands-on scenarios that cover the full spectrum of software delivery and operational workflows.
The repository distinguishes itself through a modular, domain-specific structure that links instructional problem statements with verified implementation examples. By employing a standardized documentation schema, it provides a predictable learning path for mastering complex technical concepts, ranging from infrastructure-as-code patterns and container orchestration to cloud platform administration and security best practices.
The content spans a wide array of technical domains, including automated configuration management, distributed system monitoring, database operations, and version control. It provides deep dives into specific tooling for cloud provisioning, container networking, and service deployment, ensuring that learners can validate their technical skills through isolated, practical exercises.
All instructional materials are organized into a unified taxonomy of markdown-based documents, allowing users to navigate and study specific technical topics at their own pace.
Features
- Compute Orchestration Engines - <details> <summary>Can you describe Nova in detail?</summary><br><b> * Used to provision and manage virtual instances * It supports Multi-Tenancy in different levels - logging, end-user control, auditing, etc. * Highly s
- Software-Defined Networking Services - <details> <summary>Explain Neutron in detail</summary><br><b> * One of the core component of OpenStack and a standalone project * Neutron focused on delivering networking as a service * With Neutron, users can set up net
- Systems Administration Guides - A practical guide offering hands-on scenarios and solutions for managing operating systems, networking protocols, and security best practices.
- DevOps Learning Curricula - A comprehensive collection of structured exercises and instructional materials designed to build proficiency across modern infrastructure and cloud-native technologies.
- Technical Learning Paths - Explore curated repositories containing instructional materials and documentation to help developers learn specific technical concepts through guided examples and structured learning paths.
- Technical Interview Preparation - A curated repository of conceptual questions and practical coding challenges focused on core systems engineering, cloud architecture, and operational workflows.
- Object Storage Services - <details> <summary>Explain Swift in detail</summary><br><b> * Swift is Object Store service and is an highly available, distributed and consistent store designed for storing a lot of data * Swift is distributing data acr
- Virtual Machines - <details> <summary>Do we need virtual machines in the age of containers? Are they still relevant?</summary><br><b> Yes, virtual machines are still relevant even in the age of containers. While containers provide a lightw
- Ansible Execution Strategies - [](#ansible---execution-and-strategy)
- ReplicaSets - [](#replicaset)
- ArgoCD Integrations - [](#argocd-helm)
- Infrastructure as Code Training - Practicing the automation of cloud resource provisioning and configuration management to ensure consistent, repeatable, and version-controlled infrastructure deployments.
- Terraform Providers - [](#providers)
- DevOps Training Programs - Mastering infrastructure, cloud, and automation tools through structured, hands-on exercises and practical problem-solving scenarios for professional growth.
- Operating System Exercises - |Name|Topic|Objective & Instructions|Solution|Comments| |--------|--------|------|----|----| |Fork 101|Fork|[Link](topics/os/fork_101.md)|[Link](topics/os/solutions/fork_101_solution.md) |Fork 102|Fork|[Link](topics/os/f
- Cloud Infrastructure Engineering - Learning to architect, deploy, and manage scalable resources across major cloud providers using industry-standard configuration and provisioning tools.
- Authentication and Authorization - [](#security---authentication-and-authorization)
- Container Orchestration Training - Developing proficiency in managing containerized workloads, service discovery, and deployment strategies within complex distributed system environments.
- CI/CD Orchestrators - [](#cicd---jenkins)
- Container Runtimes - [](#running-containers)
- ArgoCD Introductory Guides - [](#argocd-101)
- Exercise-Solution Pairings - Links instructional problem statements with verified implementation examples to facilitate self-paced learning and practical validation of technical skills.
- Labels and Selectors - [](#labels-and-selectors)
- Cloud Identity Providers - [](#iam)
- Supply Chain Security - [](#software-supply-chain--security)
- Time-Series Monitoring Systems - <details> <summary>What is Prometheus? What are some of Prometheus's main features?</summary><br><b> Prometheus is a popular open-source systems monitoring and alerting toolkit, originally developed at SoundCloud. It is
- Log Visualization Tools - <details> <summary>What can you find under "Discover" in Kibana?</summary><br><b> The raw data as it is stored in the index. You can search and filter it. </b></details> <details> <summary>You see in Kibana, after clicki
- Cloud Service Orchestrations - <details> <summary>Describe each of the following services * Swift * Sahara * Ironic * Trove * Aodh * Ceilometer </summary><br><b> * Swift - highly available, distributed, eventually consistent object/blob store * Sahara
- Image Management Services - <details> <summary>Explain Glance in detail</summary><br><b> * Glance is the OpenStack image service * It handles requests related to instances disks and images * Glance also used for creating snapshots for quick instanc
- OpenStack Deployment Tools - <details> <summary>Have you deployed OpenStack in the past? If yes, can you describe how you did it?</summary><br><b> There are several ways to deploy OpenStack, depending on the scale and complexity of the environment.
- Log Ingestion Pipelines - <details> <summary>What are Logstash plugins? What plugins types are there?</summary><br><b> * Input Plugins - how to collect data from different sources * Filter Plugins - processing data * Output Plugins - push data to
- Elasticsearch Clusters - <details> <summary>What is a data node?</summary><br><b> This is where data is stored and also where different processing takes place (e.g. when you search for a data). </b></details> <details> <summary>What is a master
- Argo Rollouts - [](#argo-rollouts)
- CI/CD Orchestration Tools - [](#zuul)
- Dependency Management - [](#dependencies)
- Secret Management Integrations - [](#argocd-secrets)
- Ansible Inventory Guides - [](#ansible---inventory)
- Infrastructure Provisioners - [](#provisioners)
- Declarative Configuration Models - Uses infrastructure-as-code patterns to demonstrate how system states are defined, managed, and reconciled across various cloud and container platforms.
- Infrastructure as Code Tutorials - [](#variables-hands-on)
- Infrastructure Engineering Guides - A reference library providing guided learning paths for mastering automation, container orchestration, database management, and cloud platform administration.
- SQL Exercises - |Name|Topic|Objective & Instructions|Solution|Comments| |--------|--------|------|----|----| | Functions vs. Comparisons | Query Improvements | [Exercise](topics/sql/improve_query.md) | [Solution](topics/sql/solutions/im
- System Administration Training - Building foundational knowledge in operating systems, networking, and security to effectively maintain and troubleshoot robust server-side environments.
- Version Control Tutorials - [](#rebase)
- Topic-Based Learning Paths - Organizes educational content into modular, domain-specific directories that allow users to navigate complex technical concepts through isolated learning paths.
- Kubernetes Services - [](#service)
- Pod Architectures - [](#pods)
- Schedulers - [](#scheduler)
- Identity Service Providers - <details> <summary>Can you describe the following concepts in regards to Keystone? - Role - Tenant/Project - Service - Endpoint - Token </summary><br><b> - Role - A list of rights and privileges determining what a user o
- Configuration Management - [](#kustomize)
- Ansible Collections - [](#ansible---collections)
- Elastic Stack - <details> <summary>How do you secure an Elastic Stack?</summary><br><b> You can generate certificates with the provided elastic utils and change configuration to enable security using certificates model. </b></details>
- Log Forwarders - <details> <summary>What is Filebeat?</summary><br><b> Filebeat is used to monitor the logging directories inside of VMs or mounted as a sidecar if exporting logs from containers, and then forward these logs onward for fu
- Ansible Testing Frameworks - [](#ansible-testing)