Course Outline

Module 1: Microservices Design

• A good Microservice Boundary
• Using Domain Driven Design (DDD)
• Alternatives to Business Domain Boundaries (Volatility, Data, Technology, Organizational)
• Splitting the Monolith
• Premature decomposition
• Decomposition By Layer
• Using Decomposition Patterns (Strangler, Parallel Run, Feature Toggle)
• Data Decomposition Concerns (Performance, Integrity, Transactions)

Module 2: Optimizing Docker and the Runtime

• Choosing the right base image
• Minimizing the number of layers
• Using multi-stage builds
• Image optimization (sort multi-line arguments, etc.)
• Leveraging the build cache
• Pinning image versions
• Fine-tuning resource allocation
• Secure container practices
• Runtime configuration for performance

Module 3: Kubernetes & Release Strategies

Kubernetes Deployments Overview
• Creating and executing an Initial Deployment
• Kubernetes Deployment Options

Performing Rolling Update Deployments
• Understanding Rolling Update
• Creating and executing a Rolling Update
• Rolling Back Deployment

Performing Canary Deployments
• Understanding Canary Deployments
• Creating and executing a Canary Deployment

Performing Blue-Green Deployments
• Understanding Blue-Green Deployments
• Creating and executing a Blue-Green Deployment

Running Jobs and CronJobs
• Creating a Job and CronJob

Performing Monitoring and Troubleshooting Tasks
• Troubleshooting Techniques with kubectl

Module 4: Automation & Operational Efficiency

Using Python to Automate Common Task in Kubernetes
• Using Python to perform administrative operations in Kubernetes
• Using Python to define Configuration objects
• Using Python to create Deployment objects
• Watching Kubernetes Events using Python
• Scaling a Deployment using Python

Understanding the Challenges of Automating Deployments
• Declarative Configuration with Kubernetes
• Managing the Integrity of Configuration

Using the GitOps Approach for Automating Deployments
• GitOps Principles
• Introducing Flux
• Installing Flux to a Kubernetes Cluster

Configuring Flux for Automated Deployments
• Using Notifications
• The Source Repository Structure

Handling Application Updates with Image Automation
• Updating an Application Deployment with Flux
• Scanning Container Image Repositories for Tags
• Defining Policy for Latest Image selection
• Configuring Flux to Perform Automatic Image Updates

Module 5: Observability & Root Cause Clarity

Kubernetes Logging and Tracing Capabilities
• Why Are Logging and Tracing Important
• Accessing the Kubernetes Logs
• Pod and Container Logs
• Control Plane Logs
• Resource Usage of Nodes and Pods

Collecting and Analyzing the Logs
• Log Aggregation
• Log Visualization

Distributed Tracing in Kubernetes
• What is distributed tracing
• Using OpenTelemetry
• Distributed Tracing Tools
• Instrumenting an Application
• Using Tracing to Find Performance Issues

Monitoring with Prometheus and Grafana
• Observability concepts
• Monitoring Tools
• Using Prometheus Instrumentation

Advanced Uses Cases for Logging
• Processing Logs
• Filtering and Enriching the Logs
• Event Sourcing

Module 6: Cluster Crisis Simulation & Incident Response

• Understanding the different types of failures in a cluster environment
• Simulating a Node Failures
• Pod Eviction & Resource Exhaustion Scenario
• Network Issues
• DNS failures to for application timeout handling
• Simulating an API Server Outage
• Simulating high traffic for system stability
• Storage Failure
• Configuration Errors
• Understanding Incident reporting procedures

Module 7: AI To support Troubleshooting

• Benefits of Generative AI for Kubernetes
• K8sGPT CLI architecture
• Install the K8sGPT CLI
• K8sGPT Commands and Usage
• Using K8sGPT Analyzers (podAnalyzer, pvcAnalyzer, rsAnalyzer, etc.)
• Analyzing the Cluster using K8sGPT
• Analyzing Real-Time Issues using K8sGPT
• In-Cluster Operator for K8sGPT

Requirements

  • Basic knowledge of Linux command line
  • Experience with application development or system administration
  • Familiarity with containers (Docker concepts)
  • Basic understanding of Kubernetes concepts (pods, deployments, services)
  • General understanding of software architecture (e.g. APIs, services)

Target audience:

  • DevOps Engineers
  • Site Reliability Engineers (SREs)
  • Backend / Software Developers working with microservices
  • Cloud Engineers and Platform Engineers
  • System Administrators transitioning to Kubernetes environments

     

 49 Hours

Delivery Options

Private Group Training

Our identity is rooted in delivering exactly what our clients need.

  • Pre-course call with your trainer
  • Customisation of the learning experience to achieve your goals -
    • Bespoke outlines
    • Practical hands-on exercises containing data / scenarios recognisable to the learners
  • Training scheduled on a date of your choice
  • Delivered online, onsite/classroom or hybrid by experts sharing real world experience

Private Group Prices RRP from £9500 online delivery, based on a group of 2 delegates, £3000 per additional delegate (excludes any certification / exam costs). We recommend a maximum group size of 12 for most learning events.

Contact us for an exact quote and to hear our latest promotions


Public Training

Please see our public courses

Testimonials (1)

Provisional Upcoming Courses (Contact Us For More Information)

Related Categories