Hands-on course
Kubernetes Operators, CRDs & Integrations
Build your own Kubernetes Operators and CRDs with Go in two days, extend the Kubernetes API, and automate the lifecycle of stateful applications.
Overview
Developing Kubernetes Operators and Custom Resource Definitions (CRDs) allows extending the Kubernetes API and implementing automated, application-specific workflows. This course provides a practical introduction to operator development and integration with the Kubernetes API.
What you will achieve
Understanding and developing Kubernetes Operators with Go, including using CRDs to extend the API, integrating Admission Webhooks, and gaining hands-on experience with the Kubernetes API. Focus on testing, debugging, orchestrating applications, and addressing challenges and best practices.
Who it is for
This course is aimed at developers and DevOps engineers with solid Kubernetes fundamentals who want to develop their own operators and extend the Kubernetes API programmatically.
Course format
The course is well structured and consists of theoretical explanations and practical exercises. You will be accompanied by an experienced trainer who can assist you in developing operators and integrating with the Kubernetes API.
Requirements
- Solid foundational knowledge of Kubernetes and its concepts.
- Ability to understand and adapt simple Go code.
- Experience with command line and version control (Git).
Course content
In this course, we will learn how to develop our own Kubernetes Operators and CRDs. You will not only understand these concepts but also apply them practically. We will cover the following topics:
- Introduction to Kubernetes Operators
- What are Operators and why are they important?
- Architecture and principles of a Kubernetes Operator.
- Overview of Operator SDKs.
- Creating your first simple Operator.
- Custom Resource Definitions (CRDs)
- Introduction to CRDs.
- Structure and creation of a simple CRD.
- Designing and implementing custom resources.
- Extending the Kubernetes API with custom CRDs.
- Developing Kubernetes Operators with Go
- Basics of Go programming for Operators.
- Creating an Operator from scratch using Go.
- Automating recurring tasks (e.g., backups, upgrades).
- Managing and scaling stateful applications.
- Kubernetes Integrations
- Connecting applications and services with Operators.
- Leveraging external APIs and services within Kubernetes.
- Integration of Admission Webhooks
- Basics of Admission Webhooks in Kubernetes.
- Using Webhooks for validation and mutation of resources.
- Security aspects of Admission Webhooks.
- Testing and Debugging Operators
- Automated testing of Operators.
- Status updates and events.
- Monitoring and metrics.
- Testing and debugging.
- Deployment and lifecycle.
- Best Practices und Challenges
- Pitfalls and common issues with CRDs and integrations.
- Tips for stable and maintainable Operators.
- Efficient structuring and documentation of code.
Bring this course to your team
In-house & on-demand training
We run this course on-site with your team, remotely, or in our course rooms โ tailored to your stack and scheduled on demand. No public dates: talk to us and we build the right programme for you.