DevOps Terms: A to Z Glossary

Interested in DevOps, but you keep seeing terms unfamiliar to you? This A-to-Z glossary defines key DevOps terms you need to know.

DevOps professionals bring together development and operations expertise to foster collaboration, automate processes, and improve the efficiency and reliability of software development and deployment. They focus on continuous integration and delivery, infrastructure as code, configuration management, monitoring, security, collaboration, and efficient management of cloud infrastructure.

This DevOps glossary can be helpful if you want to get familiar with basic terms and advance your understanding of DevOps.

DevOps Terms: A to Z Glossary

Interested in DevOps, but you keep seeing terms unfamiliar to you? This A-to-Z glossary defines key DevOps terms you need to know.

DevOps professionals bring together development and operations expertise to foster collaboration, automate processes, and improve the efficiency and reliability of software development and deployment. They focus on continuous integration and delivery, infrastructure as code, configuration management, monitoring, security, collaboration, and efficient management of cloud infrastructure.

This DevOps glossary can be helpful if you want to get familiar with basic terms and advance your understanding of DevOps.

Devops Terms

Agile

Agile is an iterative and collaborative approach to software development that emphasizes flexibility, adaptability, and customer satisfaction. In DevOps, Agile methodologies, such as Scrum or Kanban, deliver software in short cycles, enabling continuous feedback, rapid iterations, and early value delivery.

CI/CD (Continuous Integration/Continuous Delivery)

CI/CD, or Continuous Integration/Continuous Delivery, is a set of practices and principles that enable frequent automated software releases. Continuous Integration involves automatically building and testing code changes to ensure Integration and catch issues early. Continuous Delivery focuses on automating the release and deployment processes to deliver software reliably and frequently to production environments.

Configuration Management

Configuration Management is managing and maintaining consistent and reliable configurations of software and infrastructure. It involves tracking and controlling changes, ensuring consistency across environments, and managing configuration items throughout their lifecycle. Configuration Management tools like Puppet or Ansible are commonly used in DevOps to automate and manage configurations.

Deployment

Deployment refers to the process of releasing software or applications into production environments. DevOps's deployment practices focus on automating deployment processes, reducing manual intervention, and ensuring consistency across environments. Deployments can include provisioning resources, configuring services, and rolling out new code changes.

Elasticity

Elasticity in the context of DevOps refers to the ability to scale computing resources up or down dynamically based on demand. It involves leveraging cloud infrastructure or containerization technologies to allocate and deallocate resources in real time, ensuring optimal performance and cost efficiency in response to changing workloads.

Git

Git is a distributed version control system widely used in software development and DevOps practices. It allows multiple developers to collaborate on projects, track changes, and manage source code repositories efficiently. Git provides features like branching, merging, and conflict resolution, enabling seamless collaboration and version control in distributed teams.

Infrastructure as Code (IaC)

Infrastructure as Code is an approach where infrastructure provisioning and management are treated as code artifacts. It involves defining infrastructure configurations in a declarative or programmable format, including servers, networks, and storage. IaC tools, such as Terraform or CloudFormation, enable automation, consistency, and versioning of infrastructure deployments, making managing and replicating infrastructure environments easier.

Incident Management

Incident Management is responding to and resolving incidents or service disruptions in an organization. In DevOps, incident management practices focus on minimizing downtime, restoring services quickly, and learning from incidents to prevent future occurrences. Incident management often involves incident identification, triage, resolution, and post-incident analysis.

Infrastructure Monitoring

Infrastructure Monitoring involves collecting and analyzing data from various infrastructure components, such as servers, networks, and applications, to ensure their performance, availability, and reliability. DevOps teams use monitoring tools and practices to gain visibility into infrastructure health, detect issues, and proactively address potential bottlenecks or failures.

Jenkins

Jenkins is an open-source automation server widely used in DevOps for building, testing, and deploying software applications. It provides a robust platform for continuous Integration and delivery workflows, allowing teams to automate build processes, run tests, and deploy software reliably. Jenkins offers extensibility through a vast plugin ecosystem, making it highly adaptable to diverse DevOps environments.

Kubernetes

Kubernetes is an open-source container orchestration platform that automates containerized applications' deployment, scaling, and management. It provides a framework for managing containers across multiple hosts, ensuring high availability, scalability, and resilience. Kubernetes abstracts the underlying infrastructure and provides a declarative approach to application deployment, making it a popular choice for managing containerized workloads in DevOps environments.

Microservices

Microservices is an architectural approach where applications are built as a collection of small, independent services that work together to deliver specific functionalities. Each microservice focuses on a single business capability and can be developed, deployed, and scaled independently. This modular approach enables teams to develop and maintain services autonomously, increasing flexibility, scalability, and resilience in complex applications.

Orchestration

Orchestration in DevOps refers to the automated coordination and management of multiple tasks, services, and components to achieve a desired outcome. It involves defining workflows, dependencies, and sequences of actions to ensure smooth execution and Integration across different systems and processes. Orchestration tools enable teams to automate complex deployment, provisioning, and configuration tasks, reducing manual effort and ensuring consistency.

Pipeline

In the context of DevOps, a Pipeline refers to a series of interconnected steps and actions orchestrated to build, test, and deploy software applications. DevOps pipelines automate the software delivery process, enabling teams to achieve continuous Integration and Delivery. They include stages such as code compilation, testing, artifact creation, deployment, and monitoring, ensuring a streamlined and reliable software delivery lifecycle.

Observability

Observability is the practice of gaining insights into a system's internal state and behavior by analyzing its outputs, logs, metrics, and traces. In DevOps, observability is crucial for understanding applications and infrastructure's health, performance, and behavior. Observability tools and practices provide visibility into the system's internals, allowing teams to detect issues, troubleshoot problems, and optimize performance.

Provisioning

Provisioning in DevOps refers to setting up and configuring infrastructure, resources, and dependencies required for application deployment. Automated provisioning involves using infrastructure-as-code tools to define and deploy resources, ensuring consistency and reproducibility across environments. Provisioning can include spinning up virtual machines, configuring networks, and installing required software packages.

Quality Assurance (QA)

Quality Assurance ensures that software products and services meet specified requirements and adhere to predefined quality standards. In DevOps, QA practices focus on integrating quality checks and testing activities into the software delivery pipeline. This includes automated testing, continuous monitoring, and feedback loops to detect and address quality issues throughout the development and deployment lifecycle.

Release Management

Release Management is the process of planning, scheduling, and coordinating the deployment of software releases into production environments. DevOps teams employ release management practices to ensure smooth and controlled software deployments, minimizing user impact and maximizing system stability. It involves release planning, change management, version control, and rollback strategies.

Service Level Agreement (SLA)

A Service Level Agreement is a contractual agreement between a service provider and a customer outlining the expected service level and performance level. In DevOps, SLAs define service and application quality, availability, and reliability targets. They serve as a basis for measuring and monitoring service performance, establishing accountability, and ensuring service delivery meets customer expectations.

Test Automation

Test Automation involves automating the execution of tests to validate software functionality, performance, and reliability. In DevOps, test automation is essential for achieving continuous testing and enabling rapid feedback on code changes. Automated testing frameworks and tools like Selenium or JUnit allow teams to create and run tests automatically, reducing manual effort, increasing test coverage, and accelerating the overall software delivery process.

Version Control

Version Control, also known as Source Code Management, tracks and manages changes to source code files. DevOps teams use version control systems, such as Git or Subversion, to store and track different versions of their codebase, enabling collaboration, maintaining a history of changes, and facilitating easy Integration and rollback of code changes. Version control ensures code integrity, teamwork, and efficient code management in software development.

Virtualization

Virtualization is creating virtual instances or environments of computer resources, such as servers, operating systems, or networks. It allows multiple virtual machines or containers to run on a single physical machine, enabling efficient resource utilization, isolation, and flexibility. DevOps teams leverage virtualization technologies, like hypervisors or containerization platforms (e.g., Docker), to create reproducible and scalable development and deployment environments.

Workflow

A Workflow in DevOps refers to the tasks, activities, and steps performed to achieve a specific outcome or deliver a software product. Workflows define the sequence and dependencies of actions, ensuring consistent and repeatable processes throughout the software development and delivery lifecycle. DevOps teams streamline workflows through automation, enabling efficient collaboration, faster time-to-market, and improved overall productivity.

Conclusion

Congratulations on completing the A-Z glossary of DevOps terms! You now have a comprehensive understanding of key concepts and terminologies in DevOps. Whether you're a DevOps engineer, software developer, or IT professional, this glossary will be a valuable resource to enhance your knowledge and excel in your DevOps journey. Remember to apply these terms in practical scenarios, embrace automation and collaboration, and continue to explore the evolving landscape of DevOps practices and tools.

Learn in-demand DevOps skills from industry leaders.

DevOps CoursesOpens in a new tab | Kubernetes CoursesOpens in a new tab | Docker CoursesOpens in a new tab | Automation CoursesOpens in a new tab | Cloud Computing CoursesOpens in a new tab

CommunityJoin a community of over 100 million learners from around the world
CertificateLearn from more than 200 leading universities and industry educators.
Confidence70% of all learners who have stated a career goal and completed a course report outcomes such as gaining confidence, improving work performance, or selecting a new career path.
All courses include:
  • 100% online
  • Flexible schedule
  • Mobile learning
  • Videos and readings from professors at world-renowned universities and industry leaders
  • Practice quizzes

Can’t decide what is right for you?

Try the full learning experience for most courses free for 7 days.

Register to learn with Coursera’s community of 87 million learners around the world