Top Banner
Teams involved? CI/CD? Agile and DevOps? Cloud and DevOps? Why DevOps Matters? Benefits of DevOps for an organization? Different tools used by DevOps? Importance of Automation?
7
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: DevOps

Teams involved?

CI/CD?

Agile and DevOps?

Cloud and DevOps?

Why DevOps Matters?

Benefits of DevOps for an organization?

Different tools used by DevOps?

Importance of Automation?

Page 2: DevOps

DevOps Matters :

Why is the DevOps in such a high demand .

Technology is moving at a very fast pace. And with technology coding and development of programs, software, and applications is resident. The rapid creation and delivery of these necessities are achieved when the method of Agile software development is applied .

Everyone / Every company has a different fantasy and expectation of Devops.

Simply put . Devops is the machine that turns out the end product, while maintaining sustainable life-cycle.

Page 3: DevOps

Benefits of DevOps Collaboration :

When applying sophisticated methods and efficient process to self-organized, cross-functional software development teams this creates adaptive planning, evolutionary development, early delivery, continuous improvement, with rapid and flexible response to change.

Cross-functional :

• Collaboration between IT operations and Development.• Development masters the code• Operations masters the infrastructure . • The Collaboration between IT operations and

Development will create a cross-functionality and the result is Developers with an understanding of the infrastructure and IT Operations with an understands the code development requirements. = DevOps

Page 4: DevOps

Almost everyone and every company has a different fantasy and expectation of Devops – with the overall goal being to: Deliver as fast as possible

“In the era of rapid technology evolution, it is not the biggest that survives, but the fastest. The sooner the end product is delivered without major defects”

Reference for more info: http://en.wikipedia.org/wiki/DevOps#Overview

“The term “DevOps” typically refers to the emerging professional movement that advocates a collaborative working relationship between Development and IT Operations, resulting in the fast flow of planned work (i.e., high deploy rates)…” – Gene Kim http://itrevolution.com/11devops/ 

References and links: http://www.slideshare.net/devopsguys/dev-opsguys-brighttalk-devops-itil-and-antifragility-to-protect-or-to-serve

Page 5: DevOps

Tools and Skillsets used by DevOps

•Scripting languages: • Bourne Shell (bash)• Python• Perl

In order of the most common Compilers, Debuggers and Diagnostics

•Source Code Management & Revision Control :• Git, Subversion(SVN), Open Source Version

Control(CVS). • Gerrit for Git

•Build Automation Tools : • Jenkins Hudson Build Bot / CI• Continuous Deployment • Continuous Delivery

Reference Link for a large list: http://en.wikipedia.org/wiki/List_of_build_automation_software

•Configuration Management : • Puppet• Chef• Foreman• Ansible• Salt• ZooKeeper

•Collaboration and BUG Tracking Tools• Confluence• Bug Tracker• Fish Eye• Jura

•Virtualization : • Test platforms are virtual machines rather

than commodity hardware whenever possible.

Page 6: DevOps

The Importance of Automation !

Many of the tasks that a developer will perform could take quite some time to complete. The amount of time that a developer spends on a specific task will change the delivery time/expected release date. If possible automation can be applied to any task that is repeated more than twice by more than one developer or engineer. Integrated CI/CD automation tools will use servers as “build bots” that will perform task automatically as soon as the developers code is uploaded.Example:

Developer has completed the project and will push the changes into the repository.With the source code management integration in place, once the developer has submitted a code change and/or a code change is pushed to the repository , the build nodes / bots / will schedule a new build to be run as soon as possible.

A specific server type or operating system is required, and a virtual machine is built in the cloud automatically.

This can come before or after the Automated stress and integration testing .

Automated stress, integration and regression testing that cover a wide variety of hardware/operating system combination - This is Continuous

Note: Depending on the configuration , this can be automated or performed manually by the engineer / developer.It is the responsibility, as a core developer, to check the automatic build results after a push or change to the

repository. Understanding the results of a build and how various kinds of failures can be explained and diagnosed is necessary a necessary skillset

Page 7: DevOps

•Types of Build Automation• On-Demand automation such as a user running a script at the command

line• Scheduled automation such as a continuous integration server running a

nightly build• Triggered automation such as a continuous integration server running a

build on every commit to a version control system.Reference for a list: http://en.wikipedia.org/wiki/List_of_build_automation_software