Вы находитесь на странице: 1из 34

Quick Tour of Devops and Automations tools

Hello every one, Thank you for your great support to make me another
Knowledge share about Devops Topics and Automation Tools

1. Devops origin
DevOps is the offspring of agile software development – born from the
need to keep up with the increased software velocity and throughput agile
methods have achieved. Advancements in agile culture and methods over
the last decade exposed the need for a more holistic approach to the end-
to-end software delivery lifecycle.
What is Agile Software Development?

Agile Development is an umbrella term for several iterative and


incremental software development methodologies. The most popular agile
methodologies include Scrum, Kanban, Scaled Agile Frame work (SAF),
Lean Development and Extreme Programming (XP).

While each of the agile methodologies is unique in its specific approach,


they all share a common vision and core values (see the Agile Manifesto).
They all fundamentally incorporate iteration and the continuous feedback
that it provides to successively refine and deliver a software system. They
all involve continuous planning, continuous testing, continuous
integration, and other forms of continuous evolution of both the project
and the software.

They are all lightweight, especially compared to traditional waterfall-style


processes, and inherently adaptable. And what is most important about
agile methods is that they all focus on empowering people to collaborate
and make decisions together quickly and effectively.

In the beginning, agile teams were primarily made up of developers. As


these agile teams became more effective and efficient at producing
software, it became clear that having Quality Assurance (QA) and Dev as
separate teams was inefficient. Agile grew to encompass QA in order to
increase the velocity of delivering software and now agile is once again
growing to encompass the delivery and support members to extend agility
from ideation to delivery.

The DevOps ideals extend agile development practices by further


streamlining the movement of software change thru the build, validate, and
deploy and delivery stages, while empowering cross-functional teams with
full ownership of software applications – from design thru production
support.

DevOps is an IT mind-set that encourages communication, collaboration,


integration and automation among software developers and IT operations
in order to improve the speed and quality of delivering software.
DevOps teams focus on standardizing development environments and
automating delivery processes to improve delivery predictability,
efficiency, security and maintainability. The DevOps ideals provide
developers more control of the production environment and a better
understanding of the production infrastructure. DevOps encourages
empowering teams with the autonomy to build, validate, deliver and
support their own applications. With DevOps, nothing gets “thrown over
the wall.”

2. What Are the Challenges DevOps?


Prior to DevOps application development, teams were in charge of
gathering business requirements for a software program and writing code.
Then a separate QA team tests the program in an isolated development
environment, if requirements were met, and releases the code for
operations to deploy. The deployment teams are further fragmented into
siloes groups like networking and database. Each time a software program
is “thrown over the wall” to an independent team it adds bottlenecks. The
problem with this paradigm is that when the teams work separately:

• Dev is often unaware of QA and Ops roadblocks that prevent the program

from working as anticipated.

• QA and Ops are typically working across many features and have little

context of the business purpose and value of the software.

• Each group has opposing goals that can lead to inefficiency and finger

pointing when something goes wrong.

DevOps addresses these challenges by establishing collaborative cross-


functional teams that share responsibility for maintaining the system that
runs the software and preparing the software to run on that system with
increased quality feedback and automation issues.
Pre-DevOps

The Dev team that has a goal to ship as many features as possible, kicks a
new release “over the wall” to QA. Then the tester’s goal is to find as
many bugs as possible. When the testers bring their findings to Dev, the
developers become defensive and blame the testers that are testing the
environment for the bugs. The testers respond that it isn’t their testing
environment, but the developer’s code that is the problem.

Eventually the issues get worked out and QA kicks the debugged new
release “over the wall” to Ops. The Ops team’s goal is to limit changes to
their system, but they apprehensively release the code and the system
crashes. The finger pointing resumes.

Ops says that Dev provided them faulty artifacts. Dev says everything
worked fine in the test environment. The fire drills begin to debug the
system and get production stable. The production environment isn’t Dev’s
and QA’s responsibility, so they keep hands off while Ops spends all night
fixing the production issues.

3. What Is the Goal of DevOps?


Improve collaboration between all stakeholders from planning through
delivery and automation of the delivery process in order to:

• Improve deployment frequency

• Achieve faster time to market

• Lower failure rate of new releases

• Shorten lead time between fixes

• Improve mean time to recovery


According to the 2015 State of DevOps Report, “high-performing IT
organizations deploy 30x more frequently with 200x shorter lead times;
they have 60x fewer failures and recover 168x faster.”

A Common Pre-DevOps Scenario The software team meets prior to


starting a new software project. The team includes developers, testers,
operations and support professionals. This team plans how to create
working software that is ready for deployment.

Each day new code is deployed as the developers complete it. Automated
testing ensures the code is ready to be deployed. After the code passes all
the automated testing it is deployed to a small number of users. The new
code is monitored for a short period to ensure there are no unforeseen
problems and it is stable. The new code is then proliferated to the
remaining users once the monitoring shows that it is stable. Many, if not
all, of the steps after planning and development are done with no human
intervention.

4. Where Are You on the DevOps?


The DevOps continuum is a helpful way to look at the different aspects of
DevOps. The bottom horizontal axis represents what people perceive
DevOps to fundamentally be focused on. Some people adamantly feel that
DevOps should focus on culture more than tools, while on the other people
tend to value tools over culture.

The vertical axis depicts the three levels of the DevOps delivery chain:
continuous integration, continuous delivery and continuous deployment.
The DevOps community refers to organizations in the top right of the
DevOps continuum as pink unicorns because there are currently so few of
them that you don’t see them in the wild very often. Popular examples of
these unicorns are companies like Netflix, Etsy, Amazon, Pinterest,
Flicker, IMVU and Google. In a recent poll participants indicated where
their organizations fit on the DevOps continuum:

Thought leaders, coaches and bloggers often portray a vision of DevOps in


the upper-right corner and they will often have a strong bias towards either
DevOps culture or automation tools. While it is ok to have esoteric debates
about whether DevOps culture or tools are more important, the reality is
that you can’t have DevOps without tools and all the tools in the world
won’t help if you don’t have a strong supporting culture.

Another important point is that moving up and to the right takes time and
many organizations’ first step will be a blend of culture, tools and
continuous integration, so don’t be discouraged when you read an article
about how if you're “not doing DevOps” unless you're deploying all the
way into production without any human intervention.

DevOps can be a blend of culture, tools and maturity that make sense for
your organization and what makes sense will most likely evolve over time.
The important thing is to continually strive to break down the walls and
bottlenecks between the phases of software delivery by improving
collaboration and automation. In the following sections we dive deeper
into each aspect of the DevOps continuum to help you better understand
where you fit.

5. What Are the Phases of DevOps?


There are several phases to DevOps maturity; here are a few of the key
phases you need to know.

Waterfall Development

Before continuous integration, development teams would write a bunch of


code for three to four months. Then those teams would merge their code in
order to release it. The different versions of code would be so different and
have so many changes that the actual integration step could take months.
This process was very unproductive.

Continuous Integration

Continuous integration is the practice of quickly integrating newly


developed code with the main body of code that is to be released.
Continuous integration saves a lot of time when the team is ready to
release the code.

DevOps didn’t come up with this term. Continuous integration is an agile


engineering practice originating from the Extreme Programming
methodology. The terms been around for a while, but DevOps has adopted
this term because automation is required to successfully execute
continuous integration. Continuous integration is often the first step down
the path toward DevOps maturity.

The continuous integration process from a DevOps perspective involves


checking your code in, compiling it into usable (often binary executable)
code and running some basic validation testing.

Continuous Delivery

Continuous delivery is an extension of continuous integration. It sits on


top of continuous integration. When executing continuous delivery, you
add additional automation and testing so that you don’t just merge the
code with the main code line frequently, but you get the code nearly ready
to deploy with almost no human intervention. It’s the practice of having
the code base continuously in a ready-to-deploy state.

Continuous Deployment

Continuous deployment, not to be confused with continuous delivery


[DevOps nirvana], is the most advanced evolution of continuous delivery.
It’s the practice of deploying all the way into production without any
human intervention.

Teams that utilize continuous delivery don’t deploy untested code; instead,
newly created code runs through automated testing before it gets pushed
out to production. The code release typically only goes to a small
percentage of users and there’s an automated feedback loop that monitors
quality and usage before the code is propagated further.

There are a very small number of companies that are truly practicing
continuous deployment. Netflix, Etsy, Amazon, Pinterest, Flicker, IMVU
and Google are popular examples of companies doing continuous
deployment.

While DevOps nirvana is often not the end goal for most enterprises, they
often focus on moving towards continuous delivery.
6. What Are the Values of DevOps?
DevOps focuses heavily on establishing a collaborative culture and
improving efficiency through automation with DevOps tools. While some
organizations and people tend to value one more than the other, the reality
is it takes a combination of both culture and tools to be successful. Here’s
what you need to know about these two DevOps values.

DevOps Culture

DevOps culture is characterized by increased collaboration, decreasing


silos, shared responsibility, autonomous teams, improving quality, valuing
feedback and increasing automation. Many of the DevOps values are agile
values as DevOps is an extension of agile.

Agile methods are a more holistic way of delivering software. Agile


development teams measure progress in terms of working software.
Product owners, developers, testers and UX people work closely together
with the same goals.

DevOps is just adding the operations’ mindset and maybe a team member
with some of those responsibilities into the agile team. Whereas before
DevOps progress is measured in terms of working software, with DevOps
progress is measured in terms of working software in the customer’s
hands.

To achieve this, Dev and Ops must break down the silos and collaborate
with one another, share responsibility for maintaining the system that runs
the software, and prepare the software to run on the system with increased
quality feedback and delivery automation.

DevOps Tools

DevOps tools consist of configuration management, test and build


systems, application deployment, version control and monitoring tools.
Continuous integration, continuous delivery and continuous deployment
require different tools. While all three practices can use the same tools,
you will need more tools as you progress through the delivery chain.
7. What Tools Are Used in DevOps?
Earlier we briefly discussed some of the tools used in DevOps; here are
some of the key tools and practices you need to know.

Source Code Repository

A source code repository is a place where developers check in and change


code. The source code repository manages the various versions of code
that are checked in, so developers don’t write over each other’s work.

Source control has probably been around for forty years, but it’s a major
component of continuous integration. Popular source code repository tools
are Git, Subversion, Cloudforce, Bitbucket and TFS.

Build Server

The build server is an automation tool that compiles the code in the source
code repository into executable code base. Popular tools are Jenkins,
SonarQube and Artifactory.

Configuration Management

Configuration management defines the configuration of a server or an


environment. Popular configuration management tools are Puppet and
Chef.

Virtual Infrastructure

Amazon Web Services and Microsoft Azure are examples of virtual


infrastructures. Virtual infrastructures are provided by cloud vendors that
sell infrastructure or platform as a service (PaaS). These infrastructures
have APIs to allow you to programmatically create new machines with
configuration management tools such as Puppet and Chef.

There are also private clouds. For example, VMware has vCloud. Private
virtual infrastructures enable you to run a cloud on top of the hardware in
your data center.
Virtual infrastructures combined with automation tools to empower
organizations practicing DevOps with the ability to configure a server
without any fingers on the keyboard. If you want to test your brand-new
code, you can automatically send it to your cloud infrastructure, build the
environment and then run all of the tests without human intervention.

Test Automation

Test automation has been around for a long time. DevOps testing focuses
on automated testing within your build pipeline to ensure that by the time
that you have a deployable build, you are confident it is ready to be
deployed. You can’t get to the point of continuous delivery where you’re
fairly confident without any human intervention that your code is
deployable without an extensive automated testing strategy. Popular tools
are Selenium and Water.

Pipeline Orchestration

A pipeline is like a manufacturing assembly line that happens from the


time a developer says, “I think I’m done,” all the way to the time that the
code gets deployed in the production or a late-stage pre-production
environment.

Unifying Enterprise Software Development and Delivery

Version One VS unifies agile application lifecycle management and


DevOps, providing a full picture of your entire software delivery pipeline
in a single platform. Version One Continuum for DevOps is an enterprise
continuous delivery solution for automating, orchestrating, and visualizing
the flow of change throughout the software delivery cycle.

8.What Is the History of DevOps?


2007

Patrick Debois, a software development consultant, had a goal of learning


all aspects of IT. Over fifteen years, Patrick had taken on many different
roles in IT in order to work in every role of an IT organization and gain a
holistic understanding of IT. He worked as a developer, network specialist,
system administrator, tester and project manager.

Patrick had taken a consulting job for a large datacenter migration. He was
in charge of the testing, which meant he was spending a lot of time with
Dev and Ops. Patrick had always been bothered by the differences
between how Dev and Ops worked, but he became particularly frustrated
with the challenges of managing work across the two groups on this
datacenter migration.

Continuous integration was gaining popularity in the agile community and


was moving Dev closer to deployment, but there was still nothing out there
that fully crossed the divide of Dev and Ops. Patrick was sure there had to
be a better way for these two teams to work together.

2008

Andrew Shafer posted an idea for an agile infrastructure “birds of a


feather” session at the Agile 2008 Conference. Patrick Debois saw the post
and went to the session. Unfortunately, he was the only one who showed
up. The idea was so poorly received that Andrew didn’t even show up to
his own discussion.

Fortunately, Patrick was so excited to see that someone else was interested
in solving the challenges of Dev and Ops working together that he tracked
down Andrew and they decided to start a Google group named Agile
System Administration.

2009

John Allspaw, senior vice president of technical operations at Flickr, and


Paul Hammond, director of engineering at Flickr, gave a presentation at
the O’Reilly Velocity Conference in San Jose, “10+ Deploys per Day: Dev
and Ops Cooperation at Flickr.” The presentation laid the groundwork for
how Dev and Ops can effectively work together to improve software
deployment.

Patrick Debois watched the presentation in Belgium via a live stream and
was inspired to start his own conference, DevOpsDays, in Ghent, Belgium.
The conference brought together an energetic group of forward-thinking
minds trying to improve software deployment. What may be even more
important is that this group of people kept the conversation going on
Twitter with the hashtag DevOpsDays. In an effort to save Twitter
character space, people soon dropped days and the hashtag became
#DevOps.

2010

The following year, DevOpsDays were held in Australia and the U.S. Over
time, there were more and more DevOpsDays that were hosted in different
countries and cities around the world. The face-to-face meetings ignited
more and more people to get energized about DevOps until it had become
a full-on grassroots movement.

2011

Up until 2011, the DevOps movement has been fueled by individuals and
open source tools with little attention from analysts or vendors. But in
2011, the movement began to go mainstream, catching the attention of
analysts like Cameron Haight from Gartner and Jay Lyman of 451
Research. Big vendors started to market DevOps.

2012

By 2012 DevOps was quickly turning into a buzzword and DevOpsDays


continued to grow.

2013

The public thirst for DevOps information inspired several authors to write
books on the topic. Notable examples are The Phoenix Project by Gene
Kim, Kevin Behr and George Spafford and Implementing Lean Software
Development by Mary and Tom Poppendiek.

2014 Large companies such as Target, Nordstrom and LEGO became


some of the first companies to bring DevOps into the enterprise.
Best Practice

Understand the collaboration and shared tools strategy for the Dev, QA,

and infrastructure automation teams

DevOps teams need to come up with a common tools strategy that lets
them collaborate across development, testing, and deployment (see Figure
1). This does not mean that you should spend days arguing about tooling;
it means you work on a common strategy that includes DevOps...

• Processes
• Communications and collaboration planning
• Continuous development tools
• Continuous integration tools
• Continuous testing tools
• Continuous deployment tools
• Continuous operations and Cloud Ops tools
Coming up with a common tools strategy does not drive tool selection —
at least not at this point. It means picking a common share strategy that all
can agree upon and that is reflective of your business objectives for
DevOps.

The tool selection process often drives miscommunication within teams. A


common DevOps tools strategy must adhere to a common set of objectives
while providing seamless collaboration and integration between tools. The
objective is to automate everything: Developers should be able to send
new and changed software to deployment and operations without humans
getting in the way of the processes.
Use tools to Identify the Plans

No ad hoc work or changes should occur outside of the DevOps process,


and DevOps tooling should capture every request for new or changed
software. This is different from logging the progress of software as it
moves through the processes. DevOps provides the ability to automate the
acceptance of change requests that come in either from the business or
from other parts of the DevOps teams.

Examples include changing software to accommodate a new tax model for


the business, or changing the software to accommodate a request to
improve performance of the database access module.

Use agile Kanban project management for automation and DevOps

requests that can be dealt with in the tooling

Kanban is a framework used to implement agile development that matches


the amount of work in progress to the team's capacity. It gives teams more
flexible planning options, faster output, clear focus, and transparency
throughout the development cycle.

Kanban tools provide the ability to see what you do today, or all the items
in context with each other. Also, it limits the amount of work in progress,
which helps balance flow-based approaches so that you don’t attempt to do
too much at once. Finally, Kanban tools can enhance flow. In Kanban,
when one work item is complete, the next highest item from the backlog
gets pushed to development.

Use tools to log metrics on both manual and automated processes

Select tools that can help you understand the productivity of your DevOps
processes, both automated and manual, and to determine if they are
working in your favor. You need to do two things with these tools. First,
define which metrics are relevant to the DevOps processes, such as speed
to deployment versus testing errors found. Second, define automated
processes to correct issues without human involvement. An example
would be dealing with software scaling problems automatically on cloud-
based platforms.

Implement test automation and test data provisioning tooling

is more than just automated testing; it’s the ability to take code
Test automation
and data and run standard testing routines to ensure the quality of the code,
the data, and the overall solution. With DevOps, testing must be
continuous. The ability to toss code and data into the process means you
need to place the code into a sandbox, assign test data to the application,
and run hundreds — or thousands — of tests that, when completed, will
automatically promote the code down the DevOps process, or return it
back to the developers for rework.

Perform acceptance tests for each deployment tooling

Part of the testing process should define the acceptance tests that will be a
part of each deployment, including levels of acceptance for the
infrastructure, applications, data, and even the test suite that you’ll use. For
the tool set selected, those charged with DevOps testing processes should
to spend time defining the acceptance tests, and ensuring that the tests
meet with the acceptance criteria selected.

These tests may be changed at any time by development or operations.


And as applications evolve over time, you'll need to bake new
requirements into the software, which in turn should be tested against
these new requirements. For example, you might need to test changes to
compliance issues associated with protecting certain types of data, or
performance issues to ensure that the enterprise meets service-level
agreements.
Ensure continuous feedback between the teams to spot gaps, issues,
and inefficiencies

Finally, you'll need feedback loops to automate communication between tests


that spot issues, and tests that process needs to be supported by your
chosen tool. The right tool must identify the issue using either manual or
automated mechanisms, and tag the issue with the artifact so the
developers or operators understand what occurred, why it occurred, and
where it occurred.

The tool should also help to define a chain of communications with all
automated and human players in the loop. This includes an approach to
correct the problem in collaboration with everyone on the team, a
consensus as to what type of resolution you should apply, and a list of any
additional code or technology required. Then comes the push to
production, where the tool should help you define tracking to report
whether the resolution made it through automated testing, automated
deployment, and automated operations.

Tools :
Pick up the Automation Tools to execute the flow of work deliver for the
project driven based

The major tool categories include:

• Version control: Tools that track software versions as they are


released, whether manually or automatically. This means
numbering versions, as well as tracking the configuration and
any environmental dependencies that are present, such as the
type, brand, and version of the database; the operating system
details; and even the type of physical or virtual server that’s
needed. This category is related to change management tools.
• Build and deploy: Tools that automate the building and
deployment of software throughout the DevOps process,
including continuous development and continuous integration.
• Functional and non-functional testing: Tools that provide
automated testing, including best practices listed above. Testing
tools should provide integrated unit, performance, and security
testing services. The objective should be end-to-end automation.
• Provisioning and change management: Tools to provision the
platforms needed for deployment of the software, as well as
monitor and log any changes occurring to the configuration, the
data, or the software. These tools ensure that you can get the
system back to a stable state, no matter what occurs.
Quick Tour of Devops Tools

DevOps is a software development and delivery process. It emphasizes


communication, collaboration between product management, software
development, and operations professionals.

QuerySurge is the smart data testing solution that is the first-of-its-kind


full DevOps solution for continuous data testing.

Key Features

• Robust API with 60+ calls


• Seamlessly integrates into the DevOps pipeline for continuous
testing
• Verifies large amounts of data quickly
• Validates difficult transformation rules between multiple source and
target systems
• Detects requirements and code changes, updates tests accordingly
and alerts team members of said changes
• Provides detailed data intelligence & data analytics

Buddy

Buddy is a smart CI/CD tool for web developers designed to lower the
entry threshold to DevOps. It uses delivery pipelines to build, test and
deploy software. The pipelines are created with over 100 ready-to-use
actions that can be arranged in any way – just like you build a house of
bricks.

• 15-minute configuration in clear & telling UI/UX


• Lightning-fast deployments based on changesets
• Builds are run in isolated containers with cached dependencies
• Supports all popular languages, frameworks & task managers
• Dedicated roster of Docker/Kubernetes actions
• Integrates with AWS, Google, DigitalOcean, Azure, Shopify,
WordPress & more
• Supports parallelism & YAML configuration

Jenkins

Jenkins a DevOps tool for monitoring execution of repeated tasks. It helps


to integrate project changes more easily by quickly finding issues.

Features:

• It increases the scale of automation


• Jenkins requires little maintenance and has built-in GUI tool for easy
updates.
• It offers 400 plugins to support building and testing virtually any
project.
• It is Java-based program ready to run with Operating systems like
Windows, Mac OS X, and UNIX
• It supports continuous integration and continuous delivery
• It can easily set up and configured via web interface
• It can distribute tasks across multiple machines thereby increasing
concurrency.
Download link: https://jenkins.io/download/

Vagrant
• Vagrant is a DevOps tool. It allows building and managing virtual
machine environments in a single workflow. It offers easy-to-use
workflow and focuses on automation. Vagrant lowers development
environment setup time and increases production parity.

Features:

• Vagrant integrates with existing configuration management tools


like Chef, Puppet, Ansible, and Salt
• Vagrant works seamlessly on Mac, Linux, and Window OS
• Create a single file for projects to describe the type of machine and
software users want to install
• It helps DevOps team members to have an ideal development
environment

Download link: https://www.vagrantup.com/downloads.html

Pager Duty:

PagerDuty is a DevOps tool that helps businesses to enhance their brand


reputation. It is an incident management solution supporting continuous
delivery strategy. It also allows DevOps teams to deliver high-performing
apps.

Key Features:

• Provide Real-time alerts


• Reliable & Rich Alerting facility
• Event Grouping & Enrichment
• Gain visibility into critical systems and applications
• Easily detect and resolve incidents from development through
production
• It offers Real-Time Collaboration System & User Reporting
• It supports Platform Extensibility
• It allows scheduling & automated Escalations
• Full-stack visibility across development and production
environments
• Event intelligence for actionable insights

Download link: https://www.pagerduty.com/

Prometheus:

Prometheus is 100% open source free to use service monitoring system. It


offers support for more than ten languages.

Key Features:

• Flexible query language for slicing collected time series data to


generate tables, graphs, and alerts
• Stores time series, streams of timestamped values belonging to the
same metric, and the same set of labeled dimensions
• Stores time series in memory and also on local disk
• It has easy-to-implement custom libraries
• Alert manager handles notifications and silencing

Download link: https://prometheus.io/download

Ganglia:

Ganglia DevOps tool offers teams with cluster and grid monitoring
capabilities. This tool is designed for high-performance computing
systems like clusters and grids.

Key Features:

• Free and open source tool


• Scalable monitoring system based on a hierarchical design
• Achieves low per-node overheads for high concurrency
• It can handle clusters with 2,000 nodes
Download link: http://ganglia.info/?page_id=66

8) Snort:

Snort is a very powerful open-source DevOps tool that helps in the


detection of intruders. It also highlights malicious attacks against the
system. It allows real-time traffic analysis and packet logging.

Key Features:

• Performs protocol analysis and content searching


• It allows signature-based detection of attacks by analyzing packets
• It offers real-time traffic analysis and packet logging
• Detects buffer overflows, stealth port scans, and OS fingerprinting
attempts, etc.

Download link: https://www.snort.org/downloads

Splunk:

• Splunk is a tool to make machine data accessible, usable, and


valuable to everyone. It delivers operational intelligence to DevOps
teams. It helps companies to be more productive, competitive, and
secure.

Key Features:

• Data drive analytics with actionable insights


• Next-generation monitoring and analytics solution
• Delivers a single, unified view of different IT services
• Extend the Splunk platform with purpose-built solutions for security

Download link: https://www.splunk.com/


Nagios

Nagios is another useful tool for DevOps. It helps DevOps teams to find,
and correct problems with network & infrastructure.

Key Features:

• Nagios XI helps to monitors components like applications, services,


OS, network protocols
• It provides complete monitoring of desktop and server operating
systems
• It provides complete monitoring of Java Management Extensions
• It allows monitoring of all mission-critical infrastructure
components on any operating system
• Its log management tool is industry leading.
• Network Analyzer helps identify bottlenecks and optimize
bandwidth utilization.
• This tool simplifies the process of searching log data

Download link: https://www.nagios.com/

Chef :

Chef is a useful DevOps tool for achieving speed, scale, and consistency.
It is a Cloud based system. It can be used to ease out complex tasks and
perform automation.

Features:

• Accelerate cloud adoption


• Effectively manage data centers
• It can manage multiple cloud environments
• It maintains high availability

Download link: https://downloads.chef.io/


Sumo Logic:

Sumo Logic helps organizations to analyze and make sense of log data. It
combines security analytics with integrated threat intelligence for
advanced security analytics.

Key Features:

• Build, run, and secure Azure Hybrid applications


• Cloud-native, machine data analytics service for log management
and time series metrics
• Monitor, secure, troubleshoot cloud applications, and infrastructures
• It has a power of elastic cloud to scale infinitely
• Drive business value, growth and competitive advantage
• One platform for continuous real-time integration
• Remove friction from the application lifecycle

Download link: https://www.sumologic.com/

OverOps:

OverOps is the DevOps tool that gives root-cause of a bug and informs
about server crash to the team. It quickly identifies when and why code
breaks in production.

Key Features:

• Detects production code breaks and delivers the source code


• Improve staff efficiency by reducing time wasted sifting through
logs
• Offers the complete source code and variable to fix any error
• Proactively detects when deployment processes face errors
• It helps DevOps team to spend more time in delivering great features

Download link: https://www.overops.com/


Consul:

• Consul is a DevOps tool. It is widely used for discovering and


configuring services in any infrastructure. It is a perfect tool for
modern, elastic infrastructures as it is useful for the DevOps
community.

Key Features:

• It provides a robust API


• Applications can easily find the services they should depend upon
using DNS or HTTP
• Make use of the hierarchical key or value store for dynamic
configuration
• Provide Supports for multiple data centers

Download link: https://www.consul.io/downloads.html

Docker:

• Docker is a DevOps technology suite. It allows DevOps teams to


build, ship, and run distributed applications. This tool allows users to
assemble apps from components and work collaboratively.

Key Features:

• CaaS Ready platform running with built in orchestration


• Flexible image management with a private registry to store, manage
images and configure image caches
• Isolates apps in containers to eliminate conflicts for enhancing
security

Download link: https://store.docker.com/editions/enterprise/docker-ee-trial

Stackify Retrace:

Stackify is a lightweight DevOps tool. It shows real-time logs, errors


queries, and more directly into the workstation. It is an ideal solution for
intelligent orchestration for the software-defined data center.

Key Features:

• Detailed trace of all types of web request


• Eliminate messy configuration or code changes
• Provides an instant feedback to check what .NET or Java web apps
are doing
• Allows to find and fix bugs before production
• Integrated container management with Docker Datacentre of all app
resources and users in a unified web admin UI
• Flexible image management with a private registry to store and
manage images
• It provides secure access and configures image caches
• Secure multi tenancy with granular Role Based Access Control
• Complete security with automatic TLS, integrated secrets
management, security scanning and deployment policy
• Docker Certified Plugins Containers provide tested, certified and
supported solutions
Download link: https://saltstack.com/saltstack-downloads/

CFEngine:
CFEngine is a DevOps tool for IT automation. It is an ideal tool for
configuration management. It helps teams to automate large-scale complex
infrastructure.

Key Features:

• Provides rapid solution with the execution time less than one second
• An open source configuration solution with an unmatched security
record
• It conducted billions of compliance checks in large-scale production
environments
• It allows deploying a model-based configuration change across
50,000 servers in very few minutes

Download link: https://cfengine.com/product/free-download/

Artifactory:

• Artifactory is the enterprise-ready repository manager. It provides


end-to-end, automated solution for tracking artifacts from
development to production.

Features:

• It supports software packages created using any technology or


language
• Supports secure, clustered, high-availability Docker registries
• Remote artifacts are cached locally for reuse this eliminates the need
for downloading them repeatedly.

Download link: https://www.jfrog.com/download-artifactory-pro/

Capistrano:
Capistrano is another useful remote server automation tool for DevOps
teams. This tool supports scripting and executing arbitrary tasks.

Features:

• Allows to deploy web application to any number of machines


• Helps to automate common tasks in software teams
• Interchangeable output formatters
• Allows to script arbitrary workflows over SSH
• Easy to add support for many source control management software
• Host and Role filters for partial deploys or cluster maintenance
• Recipes for the database integration and Rails asset pipelines

Download link: http://capistranorb.com/

Monit:
Monit is an Open Source DevOps tool. It is designed for managing and
monitoring UNIX systems. It conducts automatic maintenance, repair, and
executes meaningful actions in error situations.

Features:

• Executes meaningful causal actions in error situations


• Monit helps to monitor daemon processes or similar programs
running on localhost
• It helps to monitor files, directories, and file systems on localhost
• This DevOps tool allows network connections to various servers

Download link: https://mmonit.com/monit/#download

Supervisor:

• Supervisor is a useful DevOps tool. It allows teams to monitor and


control processes on UNIX operating systems. It provides users a
single place to start, stop, and monitor all the processes.

Features:
• Supervisor is configured using a simple INI-style config file which
is easy to learn
• This tool provides users a single place to start, stop, and monitor all
the processes
• It uses simple event notification to monitor programs written in any
language
• It is tested and supported on Linux, Mac OS X, FreeBSD, Solaris,
etc.
• It does not need compiler because it is written entirely in Python

Download link: http://supervisord.org/installing.html

Ansible:

• Ansible is a leading DevOps tool. It is a simple way to automate IT


for automating entire application lifecycle. It makes it easier for
DevOps teams to scale automation and speed up productivity.

Key Features:

• It is easy to use open source deploy apps


• It helps to avoid complexity in the software development process
• IT automation eliminates repetitive tasks that allow teams to do
more strategic work
• It is an ideal tool to manage complex deployments and speed up
development process

Download link: https://www.ansible.com/tower-trial

Code Climate:

Code Climate is a DevOps tool that monitors the health of the code, from
the command line to the cloud. It helps users to fix issues easily and allows
the team to produce better code.

Features:
• It can easily integrate into any workflow
• It helps to identify fixes, and improve team's skills to produce
maintainable code
• With the Code climate, it is easy to increase the code quality
• Allow tracking progress instantly

Download link: https://codeclimate.com/

Icinga

Icinga is a DevOps tool that consists of two branches in parallel: Icinga


and Icinga2. It allows DevOps engineers to select best suits for their
project.

Key Features:

• Monitor network services, host resources, and server components


• Notify through email, SMS, or phone call
• With the RESTful API of Icinga 2, it is certainly easy to update
configurations
• When any issue occurs, the user will be notified. Using e-mail, text
message or mobile message applications
• Apply rules to hosts and services for creating continuous monitoring
environment
• Report with chart graphs, measure SLA and helps to identify trends

Download link: https://www.icinga.com/download/

New Relic APM:

New Relic APM is a useful DevOps tool. It gains end to end visibility
across customer experience and dynamic infrastructure. It allows DevOps
team reduce the time for monitoring applications.
Features:

• Monitor performance of External Services


• It allows full-stack alerting
• Organize, visualize, evaluate with in-depth analytics
• Provide a precise picture of dynamically changing systems.
• The external service's dashboard offers charts with response time
• Create customized queries on metric data and names
• Key Transactions monitor feature to manage and track all the
important business transactions
Download link: https://www.newrelic.com/signup

Juju:

Juju is an open source application modelling DevOps tool. It deploys,


configure, scales and operate software on public & private clouds. With
Juju, it is possible to automate cloud infrastructure and deploy application
architectures.

Key Features:

• DevOps engineers can easily handle configuration, management,


maintenance, deployment, and scalability.
• It offers powerful GUI and command-line interface
• Deploy services to targeted cloud in seconds
• Provide detailed logs to resolve issues quickly
Download link: https://jujucharms.com/new/

ProductionMap:

ProductionMap is an Integrated Visual platform for DevOps engineers. It


helps to make automation development fast and easy. This orchestration
platform backed by dedicated to IT professionals.
Features:

• Allows users planning the automation process


• Java Script editor backed by a full Object Model
• Each execution is automatically documented
• The Admin can control map execution
• User can trigger an execution of a map from remote events

Download link: https://xebialabs.com/technology/productionmap/

Scalyr:

Scalyr is a DevOps platform for high-speed server monitoring and log


management. Its log aggregator module collects all application, web,
process, and system logs.

Features:

• Start monitoring and collecting data without need to worry about


infrastructure
• Drop the Scalyr Agent on any server
• It allows to Import logs from Heroku, Amazon RDS, and Amazon
CloudWatch, etc.
• Graphs allow visualizing log data and metrics to show breakdowns
and percentiles
• Centralized log management and server monitoring
• Watch all the new events arrive in near real-time
• Search hundreds of GBs/sec across all the servers
• Just need to click once to switch between logs and graphs
• Turn complex log data into simple, clear, and highly interactive
reports

Download link: https://www.scalyr.com/signup

Rudder:
• Rudder is a DevOps solution for continuous configuration and
auditing. It is easy to use web-driven solution for IT automation.

Key Features:

• Workflow offers various user options like non-expert users, expert


users, and managers
• Automate common system administration tasks such as installation
and configuration
• Enforce configuration over time
• Provide Inventory of all managed nodes
• Web interface for configuring and managing nodes
• Compliance reporting by configuration or by node

Download link: https://www.rudder-project.org/site/get-rudder/downloads/

Puppet Enterprise:

Puppet Enterprise is a DevOps tool. It allows managing entire


infrastructure as code without expanding the size of the team.

Features:

• Puppet enterprise tool eliminates manual work for software delivery


process. It helps developer to deliver great software rapidly
• Model and manage entire environment
• Intelligent orchestration and visual workflows
• Real-time context-aware reporting
• Define and continually enforce infrastructure
• It inspects and reports on packages running across infrastructure
• Desired state conflict detection and remediation

Download link: https://puppet.com/download-puppet-enterprise

Graylog:
Graylog is a powerful log management and DevOps tool. It has many use
cases for monitoring SSH logins and unusual activities. Its basic version is
a free and open source.

Features:

• Automatically archive the data so that user don't need to do that


frequently
• Graylog Enterprise also offers Audit Log capabilities.
• It records and stores actions taken by a user or administrator that
make changes in the system
• Receive enterprise-grade support by allowing support requests
directly from the engineers
Download link: https://www.graylog.org/download

UpGuard:

UpGuard helps DevOps teams around the world to gain visibility into their
technology.It integrates seamlessly with popular automation platforms
such as Puppet, Chef, and Ansible.

Features:

• UpGuard helps businesses around the world to gain visibility into


their technology
• This DevOps tool allows increasing in speed of software delivery. It
is accomplished through the automation by numbers of processes
and technologies.
• It allows users to trust a third-party with sensitive data
• The procedures used to govern assets are as important as the
configurations themselves

Thank you So much for viewing, Hope you have get some good
experience to know about Devops and Automations tools.

Senthilkumar.Sivakumar

Вам также может понравиться