Continuous Integration With Jenkins

34
View DevOps course details at www.edureka.co/devops DevOps: Continues integration with Jenkins

Transcript of Continuous Integration With Jenkins

View DevOps course details at www.edureka.co/devops

DevOps: Continues integration with Jenkins

Slide 2 www.edureka.co/devops

Objectives

At the end of this module, you will be able to

Introduction of DevOps

DevOps Life cycle

Different stages in DevOps

Continuous Integration

Introduction to Jenkins

Demo on Jenkins

Slide 3 www.edureka.co/devops

What is DevOps

DevOps is a software development method that stresses communication, collaboration and integration betweenSoftware developers and information technology ( Operations ) professionals to enable rapid evolution of products or services.

Slide 4 www.edureka.co/devops

Development & Operation (DevOps)

“Dev” is used as a shorthand for developers inparticular, but in practice it is even wider and itmeans that “all the people involved indeveloping the product,” that include theproduct, QA, and other kinds of disciplines

“Ops” is a blanket term for systems engineers,system administrators, operations staff, releaseengineers, DBAs, network engineers, securityprofessionals and various other sub-disciplinesand job titles”

Slide 5 www.edureka.co/devops

Development & Operation (DevOps)

DEVOPS

Development

(Software Engineering)

Quality Assurances

Technical Operations

Slide 6 www.edureka.co/devops

Roles of Developers :

Add or modify features

Try with new technologies

Roles of Operations :

Create stability

Create or enhance services

Development & Operation

Slide 7Slide 7Slide 7 www.edureka.co/devops

Why DevOps?

Customers RequirementsDev and

Testing TeamOperations

Gap Between Developers and

Operations

Slide 8Slide 8Slide 8 www.edureka.co/devops

Why DevOps?

Development

Operations

Change

» Developer always looks for changes» They try to implement every new

techniques introduced

» Change is the enemy for Operations» It is not reliable and leads to

instability

Slide 9Slide 9Slide 9 www.edureka.co/devops

Dev Tools Ops Tools

» Difficult to integrate the tools

» Very less interest in learning others tools

» Different implementation of similar tools

Why DevOps?

Slide 10Slide 10Slide 10 www.edureka.co/devops

During Deployment

Send out the artifacts based on the requirement received from clients

Manually hacks the scripts received and changes the configuration files to reflect

changes in production environment leading to bugs leading to recover

Development Operations

Why DevOps?

Slide 11Slide 11Slide 11 www.edureka.co/devops

All the artifacts are fine, the error is because of admin issue. Tester

was given wrong set up

Developer gave faulty artifacts

Development

Operations

Day 1: Loss of Work

Why DevOps?

Slide 12Slide 12Slide 12 www.edureka.co/devops

Developer is working on his machine but he is facing some firewall issue for a local tool because of which he is unable to work

Development

He reaches out to local IT team and they point him to the infrastructure team and finally the issue is resolved

Day 2: Loss of Work

Firewall

Why DevOps?

Slide 13Slide 13Slide 13 www.edureka.co/devops

After deployment ,during testing after few scenario tester sees some anomalies

and raises some defects

Day 3: After Deployment

Operations

developer checks in and figures out that correct DB was not deployed

Development

Why DevOps?

Slide 14 www.edureka.co/devops

DevOps as the SolutionInstead of seeing these two groups as silos who pass things along but don’t really work together, DevOps recognizes the interdependence of software development and IT operations and helps an organization to produce software and IT services more rapidly, with frequent iterations

DevOps bridges the gap between agile software development and operations

Slide 15 www.edureka.co/devops

DevOps Skills

DevOps Tools – Ability to administer and customize them

Scripting Skills – Demonstrates the traditional scripting skills to IT operations

Coding Skill – Should possess developer skills in using automation

Process re-engineering Skills – Reflects the holistic view of IT and development as a single system, instead

of two different functions

Skills Products

Linux/Unix Commands & Administration

Shell Scripting Bash, Sed/Awk

Coding Perl, Python, Ruby

Configuration Management Puppet, SaltStack, Chef

Bare Metal Configuration Cobbler, Foreman, PXE, DHCP, DNS

DevOps Skill Matrix

Slide 16 www.edureka.co/devops

DevOps Cycle

Slide 17 www.edureka.co/devops

Provisioning Configuration Integration

Load Balancer

WebServer WebServer

DB Master

DB Slave DB Slave

Load Balancer

WebServer WebServer

DB Master

DB Slave DB Slave

DevOps Life Cycle

Slide 18 www.edureka.co/devops

DevOps Tools

Tools for DevOps can be categorized based on the layer of Automation you choose

Each layer has its own tools to build Automation

Infrastructure Automation 1. Cobbler2. Foreman3. Crowbar

Configuration Management 1. Puppet2. SaltStack3. Chef

Continuous Integration 1. Jenkins, Hudson2. SVN, Git, Perforce3. Ant, Maven

Continuous Deployment 1. Capsitrano2. Custom Tools 3. Yum, Deb, RPM

Monitoring 1. Nagios, Sensu, Zabbix2. Custom Tools

Slide 19 www.edureka.co/devops

Revision control System 1. Git

2. Cvs3. Subversion

Software Configuration Management 1. Clearcase2. perforce3. Accurev

virtualization management Software 1. Vcentre2. Hyper-V

DevOps Tools (Contd.)

Slide 20Slide 20Slide 20 www.edureka.co/devops

Integration Engineer Cloud Specialist

Automation Engineer Release Engineer

DevOps Roles

Slide 21Slide 21Slide 21 www.edureka.co/devops

The most common DevOps challenges are:

Cultural mindset as “How the typical mindset of people could be taken off “

Transitions as “How quickly an organization can build the skill set and cross train people”

DevOps is not a technical problem, it is a business problem as “stake holders are engaged more often”

DevOps is not about cool tools

Other DevOps Challenges

Slide 22 http://www.edureka.co/devops

“Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible”

– Martin Fowler

Continuous Integration

Slide 23 http://www.edureka.co/devops

At a regular frequency (ideally at every commit), the system is:

Integrated

All changes up until that point are combined into the project

Built

The code is compiled into an executable or package

Tested

Automated test suites are run

Archived

Versioned and stored so it can be distributed as is, if desired

Deployed

Loaded onto a system where the developers can interact with it

Continuous Integration

Slide 24 http://www.edureka.co/devops

Immediate bug detection

No integration step in the lifecycle

A deployable system at any given point

Record of evolution of the project

Continuous Integration - Benefits

Slide 25 http://www.edureka.co/devops

Code Repositories

SVN, Mercurial, Git

Continuous Build Systems

Jenkins, Bamboo, Cruise Control

Test Frameworks

JUnit, Cucumber, CppUnit

Artifact Repositories

Nexus, Artifactory, Archiva

Continuous Integration - Tools

Slide 26 http://www.edureka.co/devops

Jenkins provide continuous Integration services for software development. It’s container is based on Tomcat and can work with various revision control systems like SVN, CVS, Git, etc.

This originally started as Hudson and then after Oracle’s claim, the name Jenkins was coined

It includes a feature-rich web user interface that provides the ability to trigger builds, customize builds, manage resources, manage plugins, and many other features

Jenkins

Slide 27 http://www.edureka.co/devops

Builds can be started by:

» Commit in a version control system

» Scheduling via a cron-like mechanism

» Building when other builds have completed or by requesting a specific build URL

Jenkins (Contd.)

Slide 28 http://www.edureka.co/devops

Components of Build

Slide 29 http://www.edureka.co/devops

Jenkin Flow

Slide 30 www.edureka.co/devops

Demo on Jenkins

Slide 31 www.edureka.co/apache-spark-scala-training

LIVE Online Class

Class Recording in LMS

24/7 Post Class Support

Module Wise Quiz

Project Work

Verifiable Certificate

Course Features

Slide 32 www.edureka.co/apache-spark-scala-training

Questions

Slide 33 www.edureka.co/devops

Module 1

» Introduction to DevOps and its Necessities

Module 2

» Understand Common Infrastructure Servers

Module 3

» Implement Automated Installations and Deployments

Module 4

» Understand Performance tuning aspects and basic Security for Infrastructure

Course Topics

Module 5

» Basics of Bash/Python Scripting

Module 6

» Basics of Virtualization and it's Concepts

Module 7

» Monitoring And Logging

Module 8

» The Useful DevOps Tools & Commands

Slide 34 www.edureka.co/apache-spark-scala-training