CN230: Kubernetes Native Application Development
You will learn to build enterprise-grade containerized applications in this Cloud Native course. The curriculum covers containerized application architecture, development process streamlining, testing, debugging, and instrumentation with health checks, monitoring, and logging. The course also covers building container-native continuous integration pipelines with Jenkins and Kubernetes. Master the essential techniques for containerized application development and deployment with this course.
per person
Level
Duration
Training Delivery Format
Face-to-face / Virtual Class
per person
Level
Duration
Training Delivery Format
Face-to-face (F2F) / Virtual Class
Class types
Public Class
Private Class
In-House Training
Bespoke
About this course
This course is designed to teach developers how to build high-quality containerized applications that are suitable for enterprise-level production environments. You’ll learn about containerized application architecture, how to streamline the development process, testing and debugging techniques, and how to use health checks, monitoring, and logging tools. Additionally, the course covers building container-native continuous integration pipelines using Jenkins and Kubernetes.
Learn how to build container-native applications and continuous integration chains powered by Kubernetes. By completing the course, you’ll be able to master the essential techniques required for containerized application development and deployment.
Who should attend?
This course is targeted at students with the following:
- Motivations: Develop container-native applications, and implement fully containerized CI
- Roles: Developers, application architects, devops
Prerequisites
- CN120 course and prerequisites therein, or equivalent experience
- Familiarity with the Bash shell
- Filesystem navigation and manipulation
- Command line text editors like vim or nano
- Common tooling like curl, wget and ping
- Familiarity with the Bash shell
- Familiarity with YAML and JSON notation
- Basic familiarity with common software development patterns and tools like version control, testing, continuous integration and logging.
Course Content
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
At this time, this course is available for private class and in-house training only. Please contact us for any inquiries.