Cloud Native Development Bootcamp [CN252]

Duration not available

Corporate training

Course Description

In this cloud native 5-day bootcamp, students will quickly learn the core skills they need to develop high performance, secure containerized applications and orchestrate them on Kubernetes before deep diving into advanced techniques for streamlining the container development process, instrumenting containers for production systems, and building fully containerized continuous integration pipelines. This bundle is meant to accelerate the containerization journey for developers and devops teams, by helping them take full advantage of all the opportunities containerization offers.
 

Objectives

Content

  • Containerization motivations and implementation
    • Usecases
    • Comparison to virtual machines
  • Creating, managing and auditing containers
    • Container implementation from the Linux kernel
    • Container lifecycle details
    • Core container creation, auditing and management CLI
  • Best practices in container image design
    • Layered filesystem implementation and performance implications
    • Creating images with Dockerfiles
    • Optimising image builds with multi-stage builds and image design best practices
  • Single-host container networking
    • Docker native networking model
    • Software defined networks for containers
    • Docker-native single-host service discovery and routing
  • Provisioning external storage
    • Docker volume creation and management
    • Best practices and usecases for container-external storage.
  • Make effective use of pod architecture
  • Deploy workloads as Kubernetes controllers
  • Provision configuration at runtime to Kubernetes workloads
  • Network pods together across a cluster using native services
  • Provision highly available storage to Kubernetes workloads
  • Package an application as a Helm chart
  • Container Development Environments
    • Rapid development with code mounts and automatic reloading
    • Attaching debuggers to containerized processes
    • Installing Kubernetes development environments
  • Container Lifecycle
    • Optimizing image design to take advantage of the container lifecycle
    • Runtime operations to avoid or mitigate
    • Implementing logging, resource management and healthchecks for containers
    • Handling container exit
    • Introduction to developer-driven operational control
  • Containerizing Applications
    • Migrating preexisting applications from VMs to containers
    • Refactoring applications for microservices
    • Hybrid applications (containerized + uncontainerized)
  • Container Health & Monitoring
    • Implementing container healthchecks with Kubernetes
    • Integrating Prometheus monitoring with Kube applications
  • Introduction to Containerized Continuous Integration
    • Differences between traditional and containerized continuous integration
    • Tooling choices for CI chain components
    • Recommended CI chain architecture
  • CI Agent Deployment
    • Designing access control patterns for CI agents
    • Installing and integrating Jenkins with Kubernetes
  • Building Images in CI
    • Implementing build environments
    • Designing reusable image hierarchies
  • Testing in CI
    • Unit and integration testing in containers
    • Testing pipeline design
    • Integrating security scanning in a testing pipeline
  • Releasing Containerized Applications
    • Signing images with content trust
    • Packaging applications with Helm
  • Audience

    Developers, application architects, devops
     

    Certification

    No certification available.

    Prerequisites

    • Familiarity with the bash shell: filesystem navigation and manipulation, command line text editors like vim or nano, common tooling like curl, wget and ping

    Schedules

    Please contact us for upcoming schedules. Email Us