Duration
14 hours (usually 2 days including breaks)
Requirements
- An understanding of DevOps
Audience
- DevOps Engineers
Overview
Gitlab is a DevOps lifecycle platform that provides CI/CD features for project planning and management. Kubernetes is an orchestration system for automating application deployment. Using Gitlab and Kubernetes, users can automate builds and deployment to containerized cloud environments.
This instructor-led, live training (online or onsite) is aimed at DevOps engineers who wish to use Kubernetes and Gitlab to automate the DevOps lifecycle.
By the end of this training, participants will be able to:
- Automate application builds, tests, and deployments.
- Create an automated build infrastructure.
- Deploy an application to a containerized cloud environment.
Format of the Course
- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request a customized training for this course, please contact us to arrange.
Course Outline
Introduction
Continuous Integration and Continuous Delivery Overview
- What is CI?
- What is CD?
Gitlab at a Glance
- What is Gitlab?
- Gitlab features
- Gitlab CI
Preparing the DevOps environment
- Installing and configuring Auto DevOps in Gitlab
Kubernetes
- Integrating Kubernetes
- Creating Kubernetes clusters
- Creating a Kubernetes instance
- Using Gitlab SSH keys
Stages, Artifacts, and Dependencies
- Placing jobs into stages
- Using cache
- Defining and using Artifacts
Gitlab Auto DevOps
- Working with Helm
- Using Auto DevOps
- Configuring Gitlab runner
- Adding repository
Automated Deployment
- Deploying to Kubernetes
Debugging
- Handling errors
Testing
- Integration and functional testing
Monitoring
- Using Prometheus
- Gathering metrics
Securing
- Hardening pipelines and pipeline systems
Troubleshooting
Summary and Next Steps