August 23, 2022

DevOps Tools That Can Support Your DevOps Initiatives

DevOps
How to & Use Cases

Whether you’re edging toward a full DevOps initiative or simply looking for ways to better communicate and collaborate across functions, you and your IT organization can take advantage of a wide variety of free and proprietary DevOps tools to help you along.

Back to top

What is a DevOps Initiative?

A DevOps initiative is really a set of cultural principles and technical practices intended to speed development and deployment of software while improving the quality of that software. A DevOps initiative consists of aligning the entire development and delivery process with the business goals of the organization.

DevOps is also a way of thinking and working that provides a meaningful bridge between the competing priorities of operations and development: Operations is tasked with making things stable and dependable, while developers are tasked with responding quickly to the changing needs of customers and the marketplace.

Back to top

How DevOps Tools Help Create a DevOps Initiative

DevOps tools and practices are supposed to encourage sharing of information, resources and responsibilities, and to end (or in the interim, significantly erode) the toss-it-over-the-wall mentality that prevents operations, development and security teams from thinking more broadly and working together. The right tools aid and promote the sharing that must happen if you really want to speed the delivery of better-quality code.

No single "DevOps tool" can get you to a fully realized DevOps initiative. Still, the tools that bring about sharing and convergence can help change the organizational mindset that holds you back and prevents DevOps practices from taking root.

Don't forget: if you’re not looking for ways to better automate, measure and share, you can be sure your competitors are, regardless of the industry you’re in. So don’t be afraid to dive in and try some of these DevOps tools, many of which are free.

Back to top

Key DevOps Tool: Wikis

The greatest advantage of an organizational wiki isn’t that it’s a central clearinghouse for information, but that it’s actually easy to use. I’ve rarely met anyone who enjoys the task of documenting IT practices, so it simply doesn’t get done in most organizations. What isn't documented can’t be shared, and that will hurt any DevOps effort. The following wiki platforms make it easy for everyone across your organization to create living documentation.

MediaWiki

If you’ve used Wikipedia, you’re familiar with the look and feel of MediaWiki because it was built on MediaWiki. The scale of Wikipedia should give you a good sense of how well MediaWiki handles lots of information across lots of topic areas (and languages), but it’s also notable for its ease of use. You don’t need any programming skills to make it work, and it’s easy to create and edit content pages. It can use MySQL, PostgreSQL, Oracle or SQLite as its database. Free.

Confluence

Confluence is a part of the family of products from Atlassian which notably, includes ticketing system Jira and HipChat. If your organization is looking for something to track the work that leads to the documentation you create, and thinks it would be valuable to have all these things tightly integrated, then you should take a closer look. Confluence is not free, but is has a flexible pricing structure that includes on-premises self-hosted installations, plus a SaaS offering.

TikiWiki

If you’re looking for a more business-minded wiki, TikiWiki bills itself as that option, complete with wiki, blog, forum, calendar and other features. It also employs WYSIWYG editing and RSS, with make both contributing and sharing easy. Free.

DokuWiki

If you’re keen on managing your documentation as files, not in a database, DokuWiki or PmWiki may be your best choices. The data files are stored in plain text, which means you can read (and create) them without the wiki. Free.

PmWiki

Like DokuWiki, PmWiki uses plain text files to store page data. It also features access control, and built-in mobile support with plenty of plugins to manage a wide array of documentation needs.

Back to top

Key DevOps Tool: ChatOps Tools

Just as instant messaging changed how people communicate in real time, ChatOps offers similar capabilities for business, with features that make it more useful for organizations looking to improve sharing and collaboration quickly and easily, in real time.

IRC

IRC (internet relay chat), the mother of all ChatOps, is an open source chat platform that's been around since before public adoption of the internet (or World Wide Web, as we once called it). IRC is still widely used today on a multitude of sites, including freenode (where Puppet provides community support), as well as IRCnet and others. Free.

Slack

Slack is a popular platform that enables you to organize conversations by teams, and create public and private channels that make information as transparent as you want. Free. The paid version is $80 per year per user.

Microsoft Teams

For those already using Microsoft Office 365, Microsoft Teams is their chat platform. Like other collaboration tools, it allows you to engage your team and others, overlapping components as needed, even creating internal and external groups.

Back to top

Key DevOps Tools: Automation Tools

An important part of DevOps is moving quickly, and if you’re still doing a lot of basic configurations by hand, you’re going to be hard pressed to make systemic changes at any scale. With a tool like Puppet, you can quickly and reliably create users and groups, configure firewalls, and ensure key services are in place everywhere you need them — and nowhere you don’t.

Puppet

Of course, I advocate Puppet as the go-to automation tool because it can not only automate the mundane stuff you and your ops team have to do, but also be easily read and understood by people beyond ops. Puppet's straightforward declarative language abstracts the details of configuration management across different operating systems and other technologies, allowing you to start with something simple and engage more people inside and outside your team as you move forward. This helps you become more transparent about all the work your teams do.

What's the Difference Between Open Source Puppet and Puppet Enterprise?

🤔 DOWNLOAD THE GUIDE

A graphic of a guide by Puppet. Title: A Business Guide to Open Source Puppet vs. Puppet Enterprise

In fairness, I should also list Puppet under the Culture section, because it lends itself to a work process that can positively change how you tackle work. The open-source version is free, as is Puppet Enterprise for up to 10 nodes. Pricing for larger Puppet Enterprise deployments starts at about $100 per node, but varies depending on size of deployment and other factors.

📺 Watch how to Expand Beyond Open Source Puppet

Docker

I list Docker under automation, because as you look for ways to speed deployment, Docker is a great option, particularly for dev environments. By creating your own images — or modifying existing ones to meet your needs — you get environments that are consistent, lightweight, quick to deploy and repeatable.

Docker also integrates well with Puppet, so you can use the more than seven million lines of Puppet code that already exist to build robust images. These Docker-Puppet integrations allow you to bring up an entire Docker or Puppet environment in minutes. There's a free version of Docker, and various paid versions are available, too.

APIs

As more and more services move to the cloud, an added benefit are their robust APIs that allow you to push and pull data to and from everything from Dropbox to Salesforce. Though not strictly automation, I’d argue that using the APIs for on- and off-premises cloud apps can give you excellent centralized data management that can be shared across your organization via intranet pages or custom dashboards. In fact, everyone can benefit from using the built-in dashboard and reporting tools available in most cloud-based tools.

Back to top

How to Measure Your DevOps Initiatives

Measuring and auditing are important in any IT organization. They take on even greater value as a DevOps tool because measurement enables transparency, information sharing and actionable data.

Splunk

Whether you’re new to Splunk or you’ve been using it for some time, most would agree it’s a powerful way to monitor and dig into machine-generated data. Its ability to quickly index any data — even different data types — makes Splunk an ideal DevOps tool for getting a bird's-eye view of your systems and for sharing this information. Free for open-source version; various licensed versions start at $162 for 1Gb per month.

Read more >> How Splunk and Puppet work together and how Bolt improves Splunk reports.

Graphite

As an intelligence tool, Graphite does a great job of turning rather archaic machine-generated data into on-demand graphs. When used with your data-collection agents (which might be as simple as Cron jobs set to echo some data to the Graphite server), it will render dashboards and graphs, which can be deployed on other web pages or apps with the JSON-based API. Free.

Back to top

Additional DevOps Tools

Perforce Helix Core

A version control system (VCS) is a foundational element of the DevOps toolchain, enabling better collaboration, continuous integration, and deployment processes.

Like most VCS solutions, Perforce Helix Core is used to manage and track changes to files. Because it's a centralized version control system, it gives users quick access to the latest version of a file. Its sophisticated branching mechanism allows teams to visualize the flow of changes and develop in parallel without interfering with each other's work — which is crucial when scaling DevOps and implementing continuous integration/continuous delivery (CI/CD) pipelines.

Helix Core also provides audit trails and version history; supports huge codebases, complex workflows, and large file sizes common in enterprise DevOps; and is available in self-hosted, cloud-hosted, and SaaS versions. Helix Core is free for small teams, with premium options available.

Git

Most Linux users are familiar with the command line Git tool for managing version control of software projects. Even new users can get up to speed quickly, particularly if your first goal is to share master versions of application files to distributed teams. Free.

GitHub

GitHub is a company that provides hosting for Git repositories. It also provides some nice graphical tools that make sharing across an organization a lot easier. After all, not everyone feels all that comfortable running a command line app, which in itself can serve as a barrier between teams. The Git website also features some other graphical tools. GitHub offers both public repositories (free) and private repositories starting at $7 per month. Read more: How to manage GitHub Protocol changes on your Puppet code deployments.

Mercurial

Like Git, Mercurial is a version control tool that’s a little less wonkish than the others. It has some unique features, like an instant graphing tool, but its distributed nature is perhaps its greatest selling point Mercurial is a lot like Git in that neither relies on a central repository but like GitHub for Git you can use Bitbucket from Atlassian (Free and Paid) to host your repository.

Gerrit

If you like the idea of having your code repositories and code review happen in the same place, Gerrit makes that happen. It’s a web-based code review and repository management for the Git version control system.

GoCD

A key principle of DevOps is continuous delivery, which is all about releasing code in short, reliable cycles rather than big dumps. Go is a continuous integration tool that provides visibility into your end-to-end workflow. It allows you to compare builds, and with dozens of handy plugins, you can do some interesting things right out of the gate. Free. Expert support available for a fee.

GitLab

In keeping with the idea that more is better, GitLab offers users a unified tool built around Git, including code review, wiki documentation, APIs and even an IDE (integrated development environment) with the integration of Koding. Because everything’s integrated, everything’s transparent. That makes it easy for team members to see, weigh in and participate. Free for Community Edition. Enterprise versions start at $3.25 per month.

Jenkins

Jenkins can be used as either a simple continuous integration server or a continuous delivery hub for your projects. It offers users hundreds of plugins to support building, deploying and automating any project, and the new Blue Ocean sub-project offers a slick way to build, run and analyze project pipelines that integrate with your Git repository and even post updates. (There's even a Puppet Enterprise plugin for Jenkins Pipeline.) Jenkins is free.

Back to top

Find the DevOps Tools That Work for Your Organization's DevOps Initiative

I hope this post gives you a taste of some handy tools that can help you with your work while helping you think more broadly about how you work. Remember, choose the tools that fit in with your organization and the kind of work it does. No matter how popular a tool may be, if it doesn't work well for your group, it's not going to help you improve.

READ THE ANNUAL DEVOPS REPORT

Learn More

This blog was originally published on May 5, 2017, and has since been updated for relevance and accuracy.

Back to top