DevOps tools, arguably, face a challenge: DevOps itself is one of those tech buzzwords that got widely circulated before it was properly defined. That happens from time to time; a good idea comes along and people run with it before they actually explain what it is.
So given that DevOps itself is still hazy in people’s minds, what of DevOps tools?
So, to be clear: DevOps is a portmanteau of development and operations, because it represents a cultural change in development practice where non-developers are included in the process of software development. IT professionals other than developers are involved in the collaboration and communication process of building an app, giving people who would use the product when it is done a chance to have input on the app’s creation during the development process, rather than after.
Mature DevOps environments tend to follow a common pattern: iterative automation on a flexible, software-defined platform. So many of the DevOps tools employ some kind of repetitive actions. A successful process employing DevOps tools requires both a cultural change within the company and new tools to achieve it. This means a raft of new and old tools across the development lifecycle, from planning to coding to testing to release and monitoring. Here are 20 DevOps tools – by no means all of them – that you should consider having in your toolbox to cover the bases.
-
JIRA software from Altassian is a popular software development tool used in Agile development, a key component of DevOps, to handle multiple steps in a project. This DevOps tool is used for planning, tracking and prioritizing work, handling product release and monitoring performance after the product ships. It integrates with other tools on this list and is available as a cloud-based service.
-
Git is a free and open source distributed version control system designed that can handle individual to large, enterprise projects. It is extremely lightweight and is focused on speed and handling distributed projects. It was born out of Linux kernel development and the company’s GitHub site is a very popular repository for open source projects.
-
There are many DevOps tools – in effect, software development platforms – but none as comprehensive as Microsoft’s Visual Studio, which supports multiple languages including Python, a popular DevOps language, development for the Windows, Android and iOS platforms, and cloud-based collaborative development.
-
Jenkins is a cross-platform, continuous integration and continuous delivery application that allows for constant, steady deliveries of new software builds and increases your productivity. This DevOps tool also makes it easier for developers to integrate changes to the project and use a large number of testing and deployment technologies.
-
Slack is a cloud-based team collaboration DevOps tool that started as an internal tool used by a game development company but now a commercial product on its own. It’s built primarily around a live chat technology similar to Internet Relay Chat but with more controls, direct chat, drag-and-drop file sharing, and development tool integration, so they can all be run from the Slack interface.
-
IBM Security AppScan is for testing Web and mobile application security during the development process, improving not only the security of the app but also checking it for regulatory compliance. The product learns the behavior of an application and develops a program intended to test all of its functions for both common and application-specific vulnerabilities.
-
SolarWinds’s software is for managing network traffic on networks ranging from small businesses to giant enterprises. The Network Device Monitor can monitor any single device on your network for any kinds of alerts or errors. The company focuses on fault and performance management products, configuration and compliance products, and network management tools. It also supports performance for multitenant Oracle databases.
-
The 800 pound gorilla of cloud computing, AWS has many options for developers, such as computing, storage, delivery, databases and networking. It has the analytics for performance management, app services, developer and management tools, and both cloud and hybrid offerings. Those seeking DevOps tools will certainly find them in the AWS environment.
-
One of the premier platform-as-a-service (PaaS) providers, Pivotal is built on VMware Cloud Foundry and can be run on-premises or in the cloud. Apps can scale up to hundreds of instances, and it comes with services like load balancing, automated health management, logging and auditing as well as automatic provisioning.
-
The leader in the container market. Containers are considered smaller, lighter versions of virtual machines with much less overhead, so multiple containers can be run in a single Linux instance. It packages an app and its dependencies on any Linux server, from virtual systems to cloud-based instances.
-
The bulk of cloud and open source products support Linux, but Octopus is a Microsoft product, supporting the deployment of .Net applications. It allows for automated releases of ASP.NET applications and Windows Services into test, staging and production environments, whether they are in the cloud or on-premises.
-
One of the pioneers of DevOps optimization software, the company provides DevOps Release Automation (DORA) solutions that simplify the delivery of software updates to the end user. It automates builds and tests of new versions, handles provisioning, build and release of multi-tiered applications, and standardizes and coordinates new build releases.
-
Another release manager, Puppet Enterprise specifically manages Infrastructure as Code (IAC), a type of IT infrastructure provisioning process where systems are automatically built, managed and provisioned with code instead of a scripting process. Because it’s code, the process is easily repeatable. Puppet makes for easier versioning, automated testing and continuous delivery and can respond to problems or errors quicker.
-
Another popular IAC configuration management tool, users writes “recipes” that describe how Chef configures and manages server applications and utilities. These recipes describe a series of resources that should be in a particular state for apps like Hadoop or MySQL, such as dependencies, packages, files, and services. Chef handles all configuring of the apps, totally automating the process.
-
Unlike Chef and Puppet, Ansible is a configuration and management tool for software deployment and configuration of clients, covering Unix, Linux, and Windows. It uses JSON and YAML instead of IAC and requires no node agent for the installation. It works both on internal systems through OpenStack as well as Amazon EC2.
-
New Relic’s technology is a SaaS-based monitor system Web and mobile applications for iOS and Android in real time, whether they run on-premises, in the cloud, or in a hybrid setting. It monitors application performance to assist in tuning and optimization of the apps, and covers Web applications written in Ruby, Java, .NET, Python, PHP, and Node.js.
-
Another application monitoring product, Dynatrace detects and diagnoses performance problems in applications in real time, drilling down to the problem code like memory leaks or bad database queries while it is being used. It monitors all application transactions and automatically generates an error ticket to the QA and test groups when a problem is found.
-
A competitor of sorts to Docker, Project Atomic brings together a minimal operating system version of Linux that can be atomically updated with rollback, the Docker container format and runtime, and Kubernetes for container orchestration across a scalable pool of servers.
-
What started as a service for automating IT support requests has turned into a $1 billion business and a potential competitor to Salesforce. ServiceNow sells cloud software for automating all kinds of processes, such as collecting approvals for a legal contract. Its DevOps side is focused on the ServiceNow Service Automation Platform to build and deploy applications from scratch or on existing content, share the content and accelerate the development of new applications. The App Creator tool allows business people without any knowledge of programming to develop self-services programs.
-
Splunk can best be described as Google for logfiles. Servers generate massive amounts of log data but who wants to read through the logfiles of an entire data center to determine the state of the servers or software? Using its own search algorithm, Splunk looks for things like slow apps, slow servers, times when performance may suffer or when the load is increased.