Introduction to Jenkins for DevOps
Learn how to deploy, configure, and take advantage of Jenkins for CI/CD and pipeline-like workflows
Learn all about deploying, configuring, and taking advantage of Jenkins for CI/CD and pipeline workflows. Although Jenkins is quite popular for building CI/CD infrastructure, it is usually not done in a way that can scale, or that follows best practices. It is easy to get started with, but can get complicated if lacking a good foundation.
Using real-world examples in production today, the focus will be on demonstrating how proper configuration can be automated and maintained, and scale out.
What you'll learn-and how you can apply it
This training covers an introduction to the Jenkins platform, with a focus on best-practices based on real-world usage, deployment, configuration, and automation of the platform. There is a strong emphasis on pipelines.
Jenkins is a widely used CI/CD platform but the lack of a thorough understanding of best practices and scalability is pervasive: it is very easy to install Jenkins and run it, but it is difficult to set it right, with automation, to scale out and maintain it with ease. This training takes you there.
- Learn how to deploy Jenkins for CI/CD and pipeline-like workflows.
- Master the configuration to take full advantage of features
This training course is for you because...
- You work as a software engineer, and you are exposed to an existing CI infrastructure that could use best practices for configuration and management.
- You work as a DevOps or Operations Engineer, and want to introduce a robust Jenkins instance for continuous integration or continuous delivery to the organization.
- You work as a DevOps or Operations Engineer in an organization that has an existing CI solution that is difficult to manage or is not scaling out, and want to understand how to properly deploy, configure, and manage Jenkins with the best standards.
- Basic understanding of AWS
- Familiarity with Jenkins and/or CI/CD is a plus - but not mandatory.
- Free AWS Account: https://aws.amazon.com
- Free Azure account: https://azure.microsoft.com/en-in/account/
- Free Github account: https://github.com
About your instructor
Noah Gift is lecturer and consultant at both UC Davis Graduate School of Management MSBA program and the Graduate Data Science program, MSDS, at Northwestern. He is teaching and designing graduate machine learning, AI, Data Science courses and consulting on Machine Learning and Cloud Architecture for students and faculty. These responsibilities including leading a multi-cloud certification initiative for students. He has published close to 100 technical publications including two books on subjects ranging from Cloud Machine Learning to DevOps. Gift received an MBA from UC Davis, a M.S. in Computer Information Systems from Cal State Los Angeles, and a B.S. in Nutritional Science from Cal Poly San Luis Obispo.
Professionally, Noah has approximately 20 years’ experience programming in Python. He is a Python Software Foundation Fellow, AWS Subject Matter Expert (SME) on Machine Learning, AWS Certified Solutions Architect and AWS Academy Accredited Instructor, Google Certified Professional Cloud Architect, Microsoft MTA on Python. He has worked in roles ranging from CTO, General Manager, Consulting CTO and Cloud Architect. This experience has been with a wide variety of companies including ABC, Caltech, Sony Imageworks, Disney Feature Animation, Weta Digital, AT&T, Turner Studios and Linden Lab. In the last ten years, he has been responsible for shipping many new products at multiple companies that generated millions of dollars of revenue and had global scale. Currently he is consulting startups and other companies.
Alfredo Deza is a former professional athlete and Olympian, with 10 years of professional Python and DevOps experience, creating large CI/CD environments for testing and deployments, has designed resilient infrastructure for several companies, and has instilled his passion for testing to others by automating code checks and production deployments. Often presenting at technology conferences, like PyCon, and most recently LatinoWare in Brazil, and upcoming Cephalocon in Spain. He is currently writing a book on DevOps for O’reilly.
The timeframes are only estimates and may vary according to how the class is progressing
Part 1: Create Manage and Deploy Jenkins Length (90 min)
- Create a fully functional Jenkins server based on configuration as code
- Create and manage Jobs with Jenkins Job Builder
- Managing Jobs with Jenkins Job Builder
- Creating a base job as a trigger to JJB repository changes
- Deploy Jenkins in AWS
- Q&A (15 min)
- Break (15 min)
Part 2: Further automation and Management Length (45 min)
- 6.1. Plugin installation and management overview
- 6.2. Plugin installation via jenkins-cli.jar
- 6.3 SSH-based job nodes
- 6.4. JNLP-based nodes using systemd
- 6.5 API access via the Python Jenkins library
- Q&A (10 min)
- Break (5 min)
Part 3: Case Studies Length (45 min)
- Building Containers with Jenkins
- Deploying to EFS (Elastic File System) on AWS
- Linting, testing and building a Python project
- Deploy a static website with AWS static website
- Q&A (15 min)