Course Title: dgt_k8s07 – Storage
The advanced course “dgt_k8s07 – Storage” covers storage solutions within the Kubernetes ecosystem and is intended for Kubernetes practitioners. The course gives you the knowledge needed to manage, deploy and optimize persistent storage in containerized environments, and teaches you to put it into practice by instructing an AI agent in natural language.
Course Overview:
This course covers various aspects of Kubernetes storage, describing the key technologies and strategies that enable scalable and resilient data management for container workloads. Participants study both foundational concepts and more advanced solutions. In the labs, you describe to the machine the storage your application needs (capacity, access mode, performance class, backup policy); it writes the PVCs, StorageClasses and Velero schedules and applies them, and you read those manifests, check them against what you learned and make sure the volumes really bind, survive pod restarts and can be restored.
Key Modules:
- Introduction to Kubernetes Storage Concepts
- Understand the fundamental storage principles within Kubernetes.
- Explore Persistent Volumes PV and Persistent Volume Claims PVC.
-
Learn about different access modes such as ReadWriteOnce, ReadOnlyMany, and ReadWriteMany.
-
Dynamic Provisioning with StorageClass
- Discover how StorageClasses enable automatic provisioning of storage resources.
- Ask the machine to set up dynamic provisioning in a Kubernetes cluster and verify that claims are bound to correctly provisioned volumes.
-
Specify the StorageClass parameters your application needs and review the ones the machine chooses.
-
Advanced Storage Solutions: Rook and OpenEBS
- Introduction to Rook: learn how distributed storage systems like CEPH are deployed and managed with Rook.
- Explore OpenEBS: understand its architecture and deployment for stateful applications in Kubernetes.
-
Compare and contrast the features, use cases, and benefits of Rook and OpenEBS.
-
CEPH as a Storage Backend
- Dive into CEPH’s role as a scalable storage solution within Kubernetes environments.
- Direct the machine in configuring and managing CEPH clusters with Kubernetes-native tools, and check cluster health from what it reports.
-
Performance tuning and best practices for deploying CEPH with Kubernetes.
-
Data Backup and Disaster Recovery: Velero
- Learn how robust backup strategies are built with Velero.
- Have the machine perform live backups, restores and workload migrations between clusters, and verify that the restored data is complete.
-
Understand the importance of disaster recovery planning in a cloud-native environment.
-
Natural-Language Workshops and Labs
- Interactive labs in which you instruct the machine to deploy storage solutions, configure dynamic provisioning and run backup strategies, then review every manifest and result it produces.
- Apply theoretical knowledge to real-world scenarios, including spotting and correcting the machine’s mistakes.
Target Audience:
This course is intended for Kubernetes administrators, DevOps engineers, cloud architects and IT professionals who manage Kubernetes storage. It is particularly relevant for those planning to adopt advanced storage solutions like Rook, OpenEBS and CEPH within their organizations.
Learning Outcomes:
Upon completion of this course, participants will be able to:
– Explain how persistent storage works in Kubernetes and direct the machine to manage it effectively.
– Describe dynamic provisioning requirements and verify the StorageClass configuration the machine produces.
– Guide the implementation of enterprise-grade storage with Rook and OpenEBS and judge whether it is correct.
– Define backup and disaster recovery strategies with Velero and confirm that restores actually work.
– Make informed decisions about access modes based on application requirements.
The course “dgt_k8s07 – Storage” covers the storage requirements of containerized applications running on Kubernetes.
The students can push their exercises to the Academy DevOps & SRE Git project. For this module, create a folder with your username as its name in the following subfolder: https://github.com/Garanti-Del-Talento/gdt_academy/tree/main/dgt_k8s07__storage
