Duration
CI/CD Tool Administration (Jenkins)
2 days
Overview
This course focuses on administering Jenkins for efficient CI/CD pipelines, covering installation, configuration, pipeline management, and ongoing maintenance. Participants will learn how to configure Jenkins pipelines, integrate with tools, and ensure smooth CI/CD operations. The course includes hands-on sessions for configuring pipelines, managing jobs, and maintaining Jenkins environments.
Learning Objectives
- Understand Jenkins’ role in CI/CD pipelines.
- Learn how to install, configure, and maintain Jenkins for effective CI/CD.
- Configure and manage Jenkins pipelines using Jenkinsfile.
- Optimize pipeline automation for building, testing, and deploying code.
- Manage user roles and security settings.
- Integrate Jenkins with version control and deployment tools.
- Troubleshoot and maintain Jenkins environments for long-term performance.
Day 1:
- Introduction to Jenkins & CI/CD Concepts
- Overview of Continuous Integration/Continuous Delivery (CI/CD).
- Introduction to Jenkins and its role in automating CI/CD processes.
- Jenkins Installation & Configuration
- Installing Jenkins on various platforms (Linux/Windows).
- Initial configuration: Security, resources, and plugins.
- Optimizing Jenkins settings for performance.
- Pipeline Configuration in Jenkins
- Introduction to Jenkins pipelines (freestyle vs. declarative pipelines).
- Creating pipelines using Jenkinsfile.
- Pipeline syntax, stages, and steps: Defining build, test, and deployment phases.
- Configuring multi-branch pipelines.
- Pipeline triggers: Automating builds based on code changes, schedules, and more.
- Managing environment variables and shared libraries in pipelines.
- Error handling and notifications in pipelines.
- Managing Jenkins Jobs and Pipelines
- Creating and managing Jenkins jobs (freestyle and pipeline).
- Automating build, test, and deployment workflows.
- Monitoring and managing build artifacts and logs.
- Plugins & Integrations for Jenkins Pipelines
- Essential Jenkins plugins for pipeline automation.
- Integrating Jenkins pipelines with version control systems (Git, GitHub, Bitbucket).
- Configuring pipelines for deployment environments (Docker, Kubernetes, AWS, etc.).
- User Management and Security in Jenkins
- Managing users, roles, and permissions in Jenkins.
- Implementing security controls: Role-based access, matrix-based security.
- Best practices for securing Jenkins pipelines and environments.
Day 2: Advanced Jenkins Use Cases and Practical Applications
- Use Case 1: Continuous Integration for Multiple Environments
- Automating builds for multiple environments (e.g., dev, staging, production).
- Using parameterized builds and environment variables for flexibility.
- Use Case 2: Automated Testing Pipelines
- Setting up unit, integration, and system tests within Jenkins.
- Reporting test results and handling test failures.
- Use Case 3: Automated Deployment with Rollback Capabilities
- Configuring pipelines to deploy to cloud environments (AWS, Azure).
- Implementing rollback steps in case of failed deployments.
- Use Case 4: Building and Publishing Docker Images
- Creating Jenkins pipelines to build, tag, and push Docker images.
- Integrating with Docker Hub or a private Docker registry.
- Use Case 5: Infrastructure as Code (IaC) Automation
- Using Jenkins to manage IaC tools like Terraform or Ansible.
- Automating infrastructure deployment and configuration updates.
- Use Case 6: Security Scanning and Compliance Checks
- Integrating security scanning tools (e.g., SonarQube, OWASP ZAP).
- Automating compliance and vulnerability checks in pipelines.
- Use Case 7: Cross-Team Collaboration with Jenkins Pipelines
- Setting up shared libraries and templates for team-wide usage.
- Managing permissions and access across different teams.
Prerequisites
- Basic understanding of software development and CI/CD concepts.
- Familiarity with version control systems (e.g., Git).
- Prior experience with system administration and scripting (recommended but not mandatory).
Programme scope, delivery arrangements and suitability are confirmed during enquiry.