DevOps is an emerging practice supporting fast, sustainable software delivery and infrastructure changes through automation while encouraging collaboration of development and operations teams.
This five day DevOps Practitioner course is designed to give learners from both Dev and Ops teams experience in deploying modern, large scale complex systems in the cloud using a DevOps tools chain to create an end to end pipeline supporting continuous integration, configuration management, system provisioning, containerisation, continuous deployment, continuous delivery and continuous monitoring of software delivery and infrastructure changes.
Day one is an introduction to what DevOps is and how the tools we use can help in its realisation. We then look at cloud-based systems and beginning our pipeline by building and managing a distributed version control system for code collaboration using git.
Day two is concerned with continuous integration and deployment whereby we will automate the testing and packaging of code changes made in a git repository using Jenkins.
Day three focuses on containerisation of code, automating the creation of sustainable and deployable environments using Docker and container orchestration with Docker-compose.
Day four moves onto automation of configuration management and rapid infrastructure provisioning. Terraform and Puppet will be added to the tool chain to support high site reliability.
The final day will consist of exploring The Three Pillars - Measurement, Metrics and Tracing with an introduction to Elasticsearch (ELK) and a practical exploration of continuous monitoring with Zabbix 5 to support the maintenance of a healthy infrastructure.
- Introduction to DevOps - the pillars of the movement
- DevOps Pipeline and the Toolchain in 2020
- Introduction to Cloud computing and AWS EC2
- Introduction to Site Reliability Engineering and DevSecOps
- Introduction to build managers with Maven
- Building projects based on archetypes
- Introduction to CI/CD
- Linking Jenkins 2 to GitLab and Bitbucket repositories
- Using Jenkins 2 to build CI/CD pipelines via scripts
- What is Containerisation
- Introduction to Docker
- Building Docker images with Dockerfiles
- Creating a Jenkins 2 pipeline to integrate with Docker Hub
- Introduction to Docker Compose
- Orchestration and Automation
- Introduction to Terraform
- Using Terraform to Create Infrastructure (IasC)
- Using Puppet Enterprise for Configuration Automation
- Combining Jenkins 2, Docker, and Puppet Enterprise
- The Three Pillars - Measurement, Metrics and Tracing
- An introduction to Elasticsearch (ELK)
- Introduction to Zabbix 5
- Installing and using Zabbix 5
- Some experience as either a developer, operations, or DevOps
- Comfortable with basic terminal commands in Linux - delegates must have knowledge to the level of Nexus' Linux Fundamentals course
- Understand the concepts of source control
- Experience using git
- Experience of using the windows command line
- Programming experience