Video description
5+ Hours of Video Instruction
As all companies become software companies, the reliability of software becomes an integral part of a business’ success. Continuous testing is critical for delivering robust software and increasing reliability and confidence when software is released. Without constant validation, failure is imminent.
Continuous integration allows developers to automate the debugging of new code as it is integrated and identify problems early in the release process. Jenkins is a widely used CI/CD platform, but the lack of a thorough understanding of best practices and scalability is pervasive. It is easy to install Jenkins, but it is difficult to get it right. This course walks you through industry standard best practices to deploy and maintain continuous testing with Jenkins.
In this course, you learn how to deploy and configure a Jenkins instance with a real-world use case scenario.
Description
Cloud technology advancement has changed the face of the tech world, with more emphasis on continuous integration and delivery. Learn how to deploy, configure, and take advantage of Jenkins for Continuous Integration and Continuous Delivery (CI/CD) and pipeline-like workflows.
This LiveLesson walks you through the industry standard best practices of deploying Jenkins in a continuous testing environment. Learn to create fully functional Jenkins servers based on Infrastructure as Code (IaC) as well as deploy Jenkins in both AWS and Google Cloud. Learn the advanced features of Jenkins, including the Jenkins Job Builder. Finally, learn several real-world Jenkins deployment case studies.
The associated code can be accessed at:
https://github.com/alfredodeza/static and
https://github.com/alfredodeza/pipeline-jobs
About the Instructor
Noah Gift is a lecturer at UC Davis Graduate School of Management MSBA program, the Graduate Data Science program, MSDS, at Northwestern, the Data Science program at UC Berkeley, and the USF Health Informatics program. 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 include leading a multi-cloud certification initiative for students. Noah is also 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, and Microsoft MTA on Python. Noah was selected to the SME Machine Learning team due to accomplishments in the area of Machine Learning on the AWS platform.
Noah 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, an M.S. in Computer Information Systems from Cal State Los Angeles, and a B.S. in Nutritional Science from Cal Poly San Luis Obispo. Currently, he is consulting startups and other companies on Machine Learning, Cloud Architecture, and CTO-level consulting as the founder of Pragmatic AI Labs. His most recent book is Pragmatic AI: An Introduction to Cloud-Based Machine Learning (Pearson, 2018).
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. He has designed resilient infrastructure for several companies and has instilled his passion for testing in others by automating code checks and production deployments. He often presents at technology conferences, like PyCon, and most recently LatinoWare in Brazil, and upcoming Cephalocon in Spain.
Skill Level
What You Will Learn
- Operate Jenkins and its core concepts: what it is, how it works, how to scale
- Produce repeatable deployments and configuration as code for a production-grade environment
- Automate job creation and maintenance through Jenkins Job Builder and Git
- Deploy Jenkins in various cloud providers like AWS, Google Cloud, and Azure
- Install, update, and manage Jenkins plugins
- Automate further with systemd and other CLI tools to simplify adding nodes
- Properly manage Jenkins with current best practices
- Scale the platform to meet demands
- Understand pipeline workflows to streamline testing and deployments
- Learn best practices to deploy and run Jenkins for a CI/CD workflow
- Configure a Jenkins instance with configuration as code
Who Should Take This Course
- DevOps Engineer (mix of developer and engineer), Software Engineer, Operations (Ops) Engineer
Course Requirements
- Basic understanding of Linux Operating Systems (package installation and configuration), Git
About Pearson Video Training
Pearson publishes expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. These professional and personal technology videos feature world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, Pearson IT Certification, Prentice Hall, Sams, and Que Topics include: IT Certification, Network Security, Cisco Technology, Programming, Web Development, Mobile Development, and more. Learn more about Pearson Video training at http://www.informit.com/video.
Table of Contents
Introduction
Introduction to Jenkins for DevOps: Introduction
Lesson 1: Create a Fully Functional Jenkins Server Based on Configuration as Code
Learning objectives
1.1 Set up Jenkins without automation
1.2 Configure Jenkins Blue Ocean for a pipeline workflow–Part 1
1.3 Configure Jenkins Blue Ocean for a pipeline workflow–Part 2
Lesson 2: Create and Manage Jobs with Jenkins Job Builder
Learning objectives
2.1 Define a layout for scripts, steps, and job configuration
2.2 Source helper scripts from other locations into a job
2.3 Automate job creation for Github pull requests
2.4 Create multiple jobs at the same time with job templates
2.5 Validate syntax problems in job definitions
Lesson 3: Automate Job Updates with Jenkins Job Builder
Learning objectives
3.1 Create a base job as a trigger to JJB repository changes
3.2 Bootstrap a new Jenkins instance with a base JJB job to rebuild everything
3.3 Remove jobs when they are deleted from a repository
Lesson 4: Deploy Jenkins in AWS
Learning objectives
4.1 Set up prerequisites: AWS Account, IAM username and password, EC2 key pair
4.2 Create a security group on EC2
4.3 Install Jenkins
4.4 Configure and install Jenkins Blue Ocean
4.5 Run Jenkins on AWS Spot Instances
4.6 Configure Jenkins Using AWS Cloud9
Lesson 5: Deploy Jenkins in Google Cloud
Learning objectives
5.1 Set up prerequisites
5.2 Create a Jenkins agent image
5.3 Start and configure Jenkins
5.4 Install and configure Jenkins Blue Ocean
Lesson 6: Further Automation and Management
Learning objectives
6.1 Install and manage plugins
6.2 Install plugins via jenkins-cli.jar
6.3 Configure SSH-based job nodes
6.4 Set up JNLP-based nodes
6.5 Access the Jenkins API access via the Python Jenkins library
Lesson 7: Case Studies
Learning objectives
7.1 Build containers with Jenkins and Cloud9
7.2 Deploy to EFS (Elastic File System) on AWS
7.3 Lint, test, and build a Python project
7.4 Deploy a static website with AWS static website
7.5 Create a data pipeline with Jenkins
7.6 Build Machine Learning models with Jenkins
7.7 Use Jenkins with AWS Lambda
7.8 Distributed Jenkins
7.9 Backups
Summary
Introduction to Jenkins for DevOps: Summary