Training 1
Cloud DevOps: Automation and CI/CD
This 3-day workshop will equip participants with the knowledge and skills to implement automation and CI/CD pipelines in a cloud environment.
Target Audience
Developers, Operations professionals, and anyone interested in DevOps practices.
Prerequisites
Basic understanding of cloud computing concepts and development workflows.
Day 1: Foundations
Morning
Introduction to Cloud DevOps
Define Cloud DevOps and its core principles.
Explore the benefits of Cloud DevOps for development and operations teams.
Cloud Infrastructure Fundamentals:
Review different cloud service models (IaaS, PaaS, SaaS).
Understand infrastructure as code (IaC) concepts and benefits
Afternoon
Version Control with Git
Hands-on introduction to Git version control system.
Learn essential Git commands for branching, merging, and collaboration.
Introduction to CI/CD
Define continuous integration (CI) and continuous delivery/deployment (CD).
Understand the benefits of CI/CD pipelines for software delivery.
Day 2: Automation & CI/CD Pipelines
Morning
Cloud Automation Tools
Explore popular cloud automation tools (e.g., AWS CloudFormation, Azure Resource Manager, Terraform).
Hands-on practice with IaC tools to define and provision cloud infrastructure.
CI/CD Tools and Workflows:
Introduction to popular CI/CD tools (e.g., Jenkins, GitLab CI/CD, Azure DevOps Pipelines).
Design and build basic CI/CD pipelines with code building, testing, and deployment stages.
Afternoon
Hands-on Lab:
Participants will build a sample CI/CD pipeline using a chosen toolchain.
The lab will involve building, testing, and deploying a sample application to the cloud.
Security Considerations in CI/CD:
Discuss security best practices for integrating security checks into CI/CD pipelines.
Day 3: Advanced Topics and Best Practices
Morning
Containerization with Docker:
Introduce Docker containers and their benefits for cloud deployments.
Hands-on practice with building and managing Docker containers.
CI/CD with Containers:
Explore using containers in CI/CD pipelines for efficient deployments.
Integrate container registries (e.g., Docker Hub) into the pipeline.
Afternoon
 Monitoring and Observability:
Discuss the importance of monitoring applications deployed in the cloud.
Introduce tools for monitoring application health and performance.
CI/CD Best Practices and Anti-Patterns:
Share best practices for building reliable and secure CI/CD pipelines.
Discuss common pitfalls and anti-patterns to avoid in CI/CD implementations
Wrap Up:
Share best practices for building reliable and secure CI/CD pipelines.
Discuss common pitfalls and anti-patterns to avoid in CI/CD implementations
Training 2
Kubernetes for DevOps: Automating Containerized Deployments (DevOps Professionals)
Target Audience
This course is designed for DevOps professionals with experience in containerization concepts and a basic understanding of CI/CD pipelines.
This course can be delivered in a 3-day intensive workshop Course Objectives: By the end of this course, participants will be able to:
  • Explain the core concepts of Kubernetes and its role in container orchestration.
  • Describe the key components of a Kubernetes cluster architecture.
  • Deploy containerized applications using deployments, pods, and services.
  • Manage container lifecycles with scaling, health checks, and liveness/readiness probes.
  • Configure service discovery and load balancing for containerized applications.
  • Implement secrets management for secure deployment in Kubernetes.
  • Integrate Kubernetes with CI/CD pipelines for automated deployments.
  • Monitor and troubleshoot deployments in a Kubernetes cluster.
Course Outline:
Day 1: Introduction to Kubernetes and Container Orchestration
Module 1.1:
Introduction to DevOps and Containerization
DevOps principles and benefit
Containerization concepts (Docker)
Benefits of containerized deployments
Module 1.2:
Understanding Kubernetes
Introduction to Kubernetes and its architecture
Key components: Pods, Nodes, Services, Deployments, Namespaces
Benefits of using Kubernetes for container orchestration
Module 1.3
Setting Up a Kubernetes Cluster (Hands-on Lab)
Introduction to Minikube or other local Kubernetes environments
Deploying a simple Kubernetes cluster
Verifying cluster health and accessing the Kubernetes API
Deploying and Managing Containerized Applications
Module 2.1
Deploying Containerized Applications
Creating container images for deployments
Using deployments for declarative deployments
Managing container lifecycles (scaling, health checks)
Module 2.2
Service Discovery and Load Balancing
Exposing containerized applications as services
Service discovery mechanisms in Kubernetes
Implementing load balancing for high availability
 Module 2.3
Secrets Management in Kubernetes
Understanding the importance of secrets management
Storing secrets (passwords, keys) securely in Kubernetes
Accessing secrets within containerized applications
 Module 2.4
CI/CD Integration with Kubernetes (Hands-on Lab)
Introduction to CI/CD pipelines (e.g., Jenkins, GitLab CI)
Integrating Kubernetes deployments into CI/CD pipelines
Automating deployments using tools like Helm charts
Day 3: (Advanced Topics):
Module 3.1
Managing Stateful Applications in Kubernetes
Challenges of deploying stateful applications in containers
Persistent Volumes and Persistent Volume Claims
Strategies for managing stateful applications (e.g., databases)
Module 3.1
Monitoring and Troubleshooting Kubernetes Deployments
Monitoring tools for Kubernetes clusters (Prometheus, Grafana)
Identifying and troubleshooting deployment issues
Logging and debugging containerized applications
Module 3.3:
 dvanced Deployment Strategies
Rolling updates and blue/green deployments
Canary deployments for risk-mitigation
Module 3.4:
Scaling and Autoscaling in Kubernetes
Horizontal Pod Autoscaler (HPA) for automatic scaling
Managing resource utilization in Kubernetes clusters
Module 3.5:
Security Best Practices for Kubernetes
Pod Security Policies (PSP) for enforcing security constraints
Network Policies for Controlling Container Network Traffic
Course Assessment:
Hands-on labs throughout the course
Quizzes and assignments to assess understanding of key concepts
Optional final project: Deploying a real-world application using Kubernetes
Real-World Use Cases and Hands-On Projects