This blog post gathers some of the most useful and commonly used DevOps tools and technologies. Throughout the article, we will look into different tools, technologies, frameworks, products, and platforms that can make your life easier as a DevOps or Cloud Engineer.
As you might have heard by now, DevOps and Cloud Engineering aren’t about obsessing over specific tools. It’s about fostering a continuous improvement culture and focusing on best practices and fundamental concepts to build architectures that fit your needs. Having said that, we have to leverage different tools and technologies during this journey, so use this list as a compass and not as a tool comparison.
This list contains many technologies across different focus areas and categories and is heavily opinionated based on my taste and experiences. I know I have left out many more great tools from this collection, so if your favorite product isn’t mentioned here, drop a comment below and let us know about your favorite technology or tool.
DevOps Tools categories:
- Version Control Systems & Code Repository Management
- Containerization
- Infrastructure as Code (IaC)
- Configuration Management
- Container Orchestration
- Continuous Integration & Continuous Delivery (CI/CD)
- Cloud Providers
- Observability
- Log Management
- Collaborative Infrastructure
- Software Testing & Quality Assurance
- Developer Environment
- Integrated Development Environment (IDE)
- Security & Vulnerability Scanning
- Service Mesh
- Secret Management
- Infrastructure Access Management
- Application Deployment & Progressive Delivery
- Serverless Solutions
- Chaos Engineering
- AI-Powered Code Completion tools
1. Spacelift
Spacelift is a modern collaborative infrastructure delivery tool focused on flexibility and user experience. It works with multiple infrastructure tools (Terraform, CloudFormation, Pulumi, Ansible, etc.) and supports self-hosted on-prem workers, workflow customization, drift detection, policies, and more to assist you with automating the whole infrastructure provisioning lifecycle. Here you can learn more about How Spacelift Can Improve Your Infrastructure Orchestration.
This section contains version control systems to track and manage source code and cloud-based hosting options for managing code repositories.
2. Git
Git is the most commonly used tool in DevOps and the clear winner because of powerful features like branching and merging, enabling seamless collaboration and version management in complex projects. It’s a free, open-source version control system that is easy to get started with a minimal footprint and fast performance.
3. GitHub
GitHub is the default and most broadly used code repository management system. It provides an easy way to manage distributed version control projects along with many more features and functionalities such as feature requests, task management, CI/CD, wikis, and more to enable developers.
4. GitLab
Another excellent code repository management system is GitLab. It’s a fully featured DevSecOps platform that can assist developers with productivity and shorten software development cycle times.
5. BitBucket
BitBucket is another commonly used code repository management system with native Jira integration and built-in CI/CD capabilities. It offers a lot of integrations with other tools and collaboration capabilities as part of Atlassian’s Open DevOps solution.
This area refers to tools and technologies used for building and packaging containers.
6. Docker
One of the tools that pioneered the containerization revolution, Docker is one of the most widely used tools to deliver software in packages called containers. It’s pretty simple to use with a vast ecosystem of users and has a free and premium tier.
7. Kaniko
Kaniko is a newer tool purpose-built for building container images from a Dockerfile inside a Kubernetes cluster. Check out this article for a more in-depth analysis of the tool and its functionalities.
This section gathers tools that allow us to declare infrastructure components as code.
8. Hashicorp Terraform
Terraform by Hashicorp is one of the most widely adopted modern IaC tools and enables safe and predictable infrastructure changes at scale. It’s cloud-agnostic and allows provisioning both on the cloud and on-premises. It has its own declarative configuration language, integrates with most cloud providers, and offers excellent reusability and code-sharing opportunities. If you work with Terraform on a daily basis, here you can see best practices on How to Manage Terraform at Scale.
9. OpenTofu
OpenTofu is an open-source version of Terraform that will expand on Terraform’s existing concepts and offerings. It is a viable alternative to HashiCorp’s Terraform, being forked from Terraform version 1.5.6.
10. AWS CloudFormation
AWS CloudFormation lets you model, provision, and manage AWS and third-party resources with infrastructure as code principles. Provides native integrations with other AWS services to build a robust infrastructure management pipeline. Here you can see a detailed CloudFormation vs. Terraform comparison.
11. AWS CDK
The AWS Cloud Development Kit(CDK) allows you to define cloud application resources and infrastructure components using programming languages. It enables developers to use the same language for building applications and infrastructure with the same language they are familiar with.
12. Pulumi
Pulumi is an open-source IaC tool that allows developers to write IaC in their favorite programming language. It provides integrations with most cloud providers and many more features for managing infrastructure at scale. Here you can find a detailed tool overview and the Pulumi features described.
13. ARM Templates & Bicep
ARM Templates is Azure’s solution for implementing infrastructure as code. The templates use declarative syntax in JSON format to define the configuration of projects and infrastructure components. Azure has also introduced Bicep, a new language with similar capabilities that is more user-friendly and easier to write and the recommended approach for new projects.
If we are talking about IaC tools, we strongly encourage you to read: 7 Most Useful Infrastructure as Code Deployment Tools.
Download The Practitioner’s Guide to Scaling Infrastructure as Code
This part mentions two tools related to configuration management and automation of IT tasks.
14. Ansible
Backed by RedHat, Ansible is a flexible and powerful tool to automate configuration tasks and infrastructure management. It can work with cloud and on-premises resources and has become one of the favorite tools of IT operators. If you are interested in Ansible, here you will find useful Ansible content.
15. Chef
Chef is another outstanding tool focused on configuration management. It can assist teams with automation, drift elimination, applying security policies, and validating states across systems.
16. Puppet
Puppet is a robust infrastructure delivery tool and one of the industry standard tools for IT automation. It can work with hybrid infrastructure setups and assist teams with configuration management, automation, and compliance efforts.
17. Salt
Salt is a great automation and infrastructure management tool with an extensive and active open-source community. It can assist teams with configuration management, data-driven orchestration, and remove execution across any environment and infrastructure.
This section contains my favorite modern technologies for orchestrating and running container workloads.
18. Kubernetes
Kubernetes is an open-source system for container orchestration, automating deployments, and managing container apps. Its powerful orchestration system enables applications to scale seamlessly and achieve high availability. Each of the three most used cloud providers offers its own Kubernetes distribution; AWS has EKS, Azure AKS, and Google Cloud GKE.
19. Amazon ECS & AWS Fargate
Amazon Elastic Container Service(ECS) helps us to run highly secure, reliable, and scalable container systems on the AWS platform. Combined with Fargate, we can run serverless container systems securely and at scale without managing servers.
20. Azure Container Apps
Azure Container Apps allows developers to quickly build and deploy modern applications and microservices using a serverless container service. It’s a fully managed service that simplifies infrastructure management and accelerates developer productivity at scale.
Check our list of the 12 Most Useful Container Orchestration Tools.
Some of the most used and battle-tested CI/CD tools.
21. Circle-CI
Circle-CI is one of the world’s most popular CI/CD systems and provides an easy-to-start model and different hosting and pricing options.
22. GitLab CI/CD
The CI/CD functionality of the GitLab platform is really easy to get started and use and integrates seamlessly with other features of the GitLab DevSecOps platform.
23. GitHub Actions
Similarly, GitHub Actions is GitHub’s native CI/CD tool that allows developers to create any custom workflow and integrates nicely with other GitHub features.
24. Jenkins
Jenkins is an open-source automation server tool that facilitates continuous integration and delivery. One of the most widely used and battle-tested tools in the CI/CD space.
More on CD tools you can find in this article: Top Continuous Delivery Tools.
This part lists the three leading cloud computing platforms.
25. Amazon Web Services(AWS)
AWS is the most widely adopted cloud computing platform that innovates relentlessly and offers reliable, scalable, and inexpensive cloud computing services to assist you in building virtually any workload.
26. Google Cloud Platform
Google Cloud Platform, built by Google, is a collection of robust and powerful cloud computing services that runs on the same infrastructure that Google uses for its other products.
27. Microsoft Azure
Azure, operated by Microsoft, is a flexible cloud computing service for application management that fosters efficiency and developer productivity.
This section gathers excellent tools for monitoring, alerting, and dashboarding.
28. Prometheus
Prometheus is an open-source monitoring system preferred by many developers and operators with a dimensional data model and a flexible query language. It features a time series database and a great alerting model.
29. Grafana
Grafana is one of the most popular visualizations and analytics tools. It provides a user-friendly user interface to build graphs, dashboards, charts, alerts, and more and connects to various data sources.
30. Datadog
Datadog is a tool that has grown a lot over the last few years and provides a feature-rich observability platform that can handle your monitoring and alerting needs across applications and infrastructure components.
31. Amazon CloudWatch
Amazon CloudWatch is AWS native monitoring and observability tool for infrastructure and applications in the cloud and on-premises. Offers seamless integration with many AWS services to simplify the monitoring experience.
32. Komodor
Komodor approaches the monitoring of Kubernetes systems with a fresh perspective, focusing on easier troubleshooting and making the life of developers and operators easier.
33. Lens
Lens is an IDE with an integrated dashboard for Kubernetes that enables easier management, monitoring, and observability for clusters. It’s a standalone application and is available on all platforms.
This part gathers a few tools around storing and managing application and infrastructure logs.
34. Elastic Stack(ELK)
The Elastic Stack combines tools such as ElasticSearch, Logstash, Kibana, and, lately, Beats. It’s open source and one of the world’s most popular and influential log management solutions.
35. Grafana Loki
Loki is an open-source, highly scalable, multi-tenant log aggregation system inspired by Prometheus. It’s easy to use and operate and designed to store and query logs from apps and infrastructure.
36. Fluentd
Fluentd is an open-source data collector which lets you unify the data collection and consumption for better use and understanding of data. It has an active community and offers an extensive selection of integrations and built-in reliability.
This section talks about collaborative infrastructure delivery tools.
37. Atlantis
Atlantis is an open-source and self-hosted Terraform “pull request-based” automation tool. It offers an easy way to automate the Terraform workflow using pull request comments. One of its advantages is that it doesn’t add a new user interface (UI) but integrates nicely with your choice’s version control system (VCS) provider.
38. Terraform Cloud
Terraform Cloud provides a scalable solution to automate infrastructure delivery, handle compliance, and manage resources in a cloud-agnostic way utilizing Terraform. It is Hashicorp’s SaaS-managed service offering targeting the Terraform workflow. Here you can see a detailed comparison between Terraform Cloud and Atlantis.
39. Env0
Env0 enables managing, deploying, scaling, and controlling all your Terraform, Terragrunt, Pulumi, and related frameworks. It provides automation, governance, cost management, and self-service components for your infrastructure management at scale.
40. Scalr
Scalr is a Terraform Automation and Collaboration Software with full CLI support, OPA integration, a hierarchical configuration model & quality of life features.
This part gathers a few tools for software testing and quality assurance.
41. TestRail
TestRail is a web-based test case management tool that helps to automate software testing. It provides visibility into QA processes, enables high-quality software releases, is easy to set up and get started, and offers many customization capabilities.
42. Katalon Studio
Katalon Studio is a modern, comprehensive quality management platform that enables automation testing based on Selenium and Appium frameworks.
43. k6
k6 powered by Grafana Labs is an open-source tool focusing on load testing and improving user experience for development and QA teams.
44. Selenium
Selenium is an open-source suite of tools for web automation primarily used for testing, although its capabilities extend beyond that. It supports various languages and can assist with automation across different operating systems and browsers.
This section contains two products focusing on providing development environments in a frictionless way.
45. Hashicorp Vagrant
Vagrant by Hashicorp is an open-source software product that enables developers to create and configure lightweight and reproducible development environments.
46. Gitpod
Gitpod is an open-source developer platform focused on remote development. It fosters remote collaboration and secure access to environments without sacrificing developer experience.
This category consists of some of my favorite code editors and their use cases.
47. VScode
Visual Studio Code is one of the most used code editors optimized for developing and debugging modern web and cloud applications.
48. IntelliJ IDEA
IntelliJ IDEA is another widely used code editor tool focused on code development in JVM-based languages.
49. PyCharm
PyCharm is Python’s most common integrated development environment with many handy built-in features to make your life easier.
50. AWS Cloud9
AWS Cloud9 is a cloud-based IDEA for developing, running, and debugging code from a browser. It provides code pairing features, support for serverless application development, and direct terminal access to AWS.
This section contains two products targeting the security and vulnerability scanning space.
51. Snyk
Snyk is a developer security platform that efficiently finds and automatically fixes vulnerabilities in code and containers. It supports various languages and integrates with other tools, CI/CD pipelines, and workflows.
52. Trivy
Trivy by Aqua Security is a sophisticated, fast, easy-to-use security scanner. It scans containers, code repositories, and Kubernetes clusters for vulnerabilities, misconfigurations, and sensitive information.
53. Tenable One
Tenable One is a cloud-based platform with an analytics-focused security and exposure management approach. It can assist with vulnerability management, cloud and identity security, and mitigating cyber risks.
54. BridgeCrew
BridgeCrew is a code security platform focusing on shipping code that’s secure by default. It embeds security natively into tools, workflows, and codebases to secure cloud-native applications,
55. Oak9
Oak9 is a security as a code platform for cloud-native infrastructure built into application design. It dynamically and automatically secures infrastructure as code and deployed workloads on the cloud.
This part discusses three of the most popular service mesh technologies currently available.
56. Istio
Istio is one of the most popular service mesh products and provides a dedicated infrastructure layer to assist with observability, traffic management, and security. It’s a powerful tool designed for extensibility and backed by a large ecosystem of contributors.
57. Linkerd
Linkerd is a lightweight and performance-focused service mesh that adds security, observability, and reliability to Kubernetes with minimal overhead.
58. Hashicorp Consul
Consul by Terraform is an open-source service networking solution for service discovery, enabling network configurations and securing connectivity across environments.
This category lists some of my favorite technologies for managing secrets and sensitive information for software systems.
59. Hashicorp Vault
Vault by Hashicorp is one of the most used and preferred secret management solutions. It assists developers with securing, storing, and managing access to sensitive information and secrets for modern systems.
60. AWS Secrets Manager
AWS Secrets manager allows users to manage the lifecycle of secrets and sensitive information centrally. Similarly to other AWS services, it integrates seamlessly with most primary AWS offerings.
61. Doppler
Doppler is a SecretOps platform that enables developers and security teams to keep their secrets and app configuration in sync and secure across devices and teams.
This section talks about accessing infrastructure, tools, and services securely.
62. Teleport
Teleport provides a single source of truth for accessing infrastructure components and environments with a zero-trust model. It focuses on user experience and gives users a unified and secure way of accessing tools, infrastructure, and services.
63. Hashicorp Boundary
Hashicorp Boundary provides an easy way to access applications and other systems based on identity and fine-grained authorizations without exposing networks and managing accounts.
This category collects the two most widely used products that enable GitOps.
64. ArgoCD
ArgoCD is a declarative GitOps delivery tool for Kubernetes. It continuously monitors applications running in Kubernetes clusters and automates the deployment of the desired application states.
Read more about this tool in our ArgoCD – Practical Tutorial With Kubernetes article.
65. Flux
Flux is another excellent and versatile GitOps and Kubernetes-focused tool that enables application deployment and progressive delivery through automatic reconciliation.
This part gathers products that enable developers to run serverless applications and event-driven solutions without the need to provision any infrastructure.
66. AWS Lambda
AWS Lambda is a pioneer in the serverless space and allows developers to build event-driven serverless applications without thinking about servers. It runs code in response to events, integrates nicely with the AWS ecosystem, and abstracts from the user any underlying computing resources needed.
67. Google Cloud Functions
Google Cloud Functions allow you to run your code in the cloud with no servers or containers to manage with our scalable, pay-as-you-go functions as a service (FaaS) product.
68. Google Cloud Run
Google Cloud Run is a fully managed platform for running and scaling containers. It focuses on quick deployment and ease of use to allow developers to spend time writing code and not managing infrastructure. It has a pay-per-use model and automatically scales containers with support for concurrent requests.
69. OpenFaaS
OpenFaaS is an open-source project that brings serverless functions as a service to Kubernetes. It makes it easy to deploy functions and existing code on any private or public cloud at scale.
This category contains two tools from the Chaos Engineering space focused on testing distributed systems and reliability.
70. Chaos Monkey
Chaos Monkey is a tool produced and open-sourced by Netflix that randomly terminates instances and containers to expose single points of failures and components that aren’t fault-tolerant.
71. AWS Fault Injection Simulator
AWS Fault Injection Simulator is a service for load testing and fault injection experiments to improve the reliability and resilience of applications and environments.
This section looks into two artificial intelligence-powered code completion tools that promise to improve developers’ productivity dramatically.
72. GitHub Copilot
GitHub Copilot leverages OpenAI to suggest code and functions in real-time while coding from your IDE. It has been trained with billions of lines of code from GitHub repositories and turns comments into coding blocks across many languages.
See: How to use GitHub Copilot with Terraform
73. Amazon CodeWhisperer
Amazon CodeWhisperer is an ML-powered coding companion for developers that aims to assist with developer productivity by automating repeating code and generating code suggestions based on text and contextual information right in the IDE.
Thank you for reading, and I hope you found some inspiration from this list of widely used and battle-tested tools, technologies, and products. We explored various modern tools across different areas and categories to accelerate your projects and processes.
The Most Flexible Management Platform for IaC
Spacelift is the most flexible orchestration solution for IaC development. It delivers enhanced collaboration, automation and controls to simplify and accelerate the provisioning of cloud-based infrastructures.