New to the world of DevOps? Lucky for you, we’ve scoured the internet to put together The DevOps Dictionary. This is the first in a series of blog posts full of important terms and DevOps definitions, beginning with letters A-I. Read further with parts two and three.
ACK (to acknowledge)
To ACK means to acknowledge the reception of some kind of information. Usually in this context, this means some type of deployment or incident data. “ACK is the name of a signal that data has been received successfully.” (TechTarget)
“Artificial intelligence is the simulation of human intelligence processes by machines, especially computer systems. These processes include learning (the acquisition of information and rules for using the information), reasoning (using the rules to reach approximate or definite conclusions), and self-correction. Particular applications of AI include expert systems, speech recognition, and machine vision.” (TechTarget)
“API is the acronym for Application Programming Interface, which is a software intermediary that allows two applications to talk to each other. Each time you use an app like Facebook, send an instant message, or check the weather on your phone, you’re using an API.” (MuleSoft)
DevOps automation ensures a consistent and repeatable deployment process, allowing application enhancements to be developed, tested, implemented securely, and managed across all environments—including production. This enables IT to support the needs of the business more directly while stimulating revenue growth, customer loyalty, and innovation. (Chef)
A Git branch allows each developer to branch out from the original code base, work independently, and isolate their work from affecting others.
“Branch is essentially an independent line of development. You can take advantage of branch when working on new features or bug fixes as it helps to isolate your work from that of other team members.” (Backlog)
ChatOps is an approach that allows teams to collaborate and manage many aspects of their infrastructure, code, and data from the comfort and safety of a chat room. Through the use of chatbots and scripts, teams can execute commands, query information, and distribute knowledge across not only technical teams, but an entire organization.
By allowing a chatbot to take action on our behalf, we can safely execute commands, query databases and so much more—all in the same space where everyone on your team communicates throughout the incident lifecycle. This not only shares the information you have at your disposal with everyone on your team, but also teaches them how to obtain the same should they have a need in the future.
We’re “putting tools right in the middle of the conversation” as Jesse Newland of GitHub puts it. In this case, we’re putting the CLI right in the middle of the conversation. (Jason Hand, VictorOps)
“The cloud is not a physical entity, but instead is a vast network of remote servers around the globe which are hooked together and meant to operate as a single ecosystem. These servers are designed to either store and manage data, run applications, or deliver content or a service such as streaming videos, web mail, office productivity software, or social media. Instead of accessing files and data from a local or personal computer, you are accessing them online from any Internet-capable device—the information will be available anywhere you go and anytime you need it.” (Microsoft Azure)
“Cloud-based is a term that refers to applications, services or resources made available to users on demand via the Internet from a cloud computing provider’s servers. Companies typically utilize cloud-based computing as a way to increase capacity, enhance functionality or add additional services on demand without having to commit to potentially expensive infrastructure costs or increase / train existing in-house support staff.” (Webopedia)
“Continuous Automation is the practice of automating every aspect of an application’s lifecycle to build and deploy software and changes quickly, consistently, and safely. It integrates automation of infrastructure, applications, and compliance, defining elements as code to make it easy to manage multiple versions, test for a variety of conditions, change when needed, and apply at scale. It is a sophisticated approach to building, deploying, and managing software.” (Dan Hauenstein, Chef Blog)
Continuous Delivery (CD)
“Continuous delivery (CD) is a software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any tim. It aims at building, testing, and releasing software faster and more frequently. The approach helps reduce the cost, time, and risk of delivering changes by allowing for more incremental updates to applications in production. A straightforward and repeatable deployment process is important for continuous delivery.” (Wikipedia)
“Continuous Delivery is the ability to get changes of all types, including new features, configuration changes, bug fixes and experiments—into production, or into the hands of users, safely and quickly in a sustainable way.” (continuousdelivery.com)
Continuous Improvement (CI)
“Continuous improvement, sometimes called continual improvement, is the ongoing improvement of products, services or processes through incremental and breakthrough improvements.” (ASQ)
“Continuous improvement, or Kaizen, is a method for identifying opportunities for streamlining work and reducing waste. The practice was formalized by the popularity of Lean / Agile / Kaizen in manufacturing and business, and it is now being used by thousands of companies all over the world to identify savings opportunities.” (Leankit)
Customers (not clients)
In the end, it should always come back to the customer - whether you’re providing them with an actual product or technical support - because they are the reason you’re here. (Bryce Ambraziunas, VictorOps)
“The pipeline breaks down the software delivery process into stages. Each stage is aimed at verifying the quality of new features from a different angle to validate the new functionality and prevent errors from affecting your users. The pipeline should provide feedback to the team and visibility into the flow of changes to everyone involved in delivering the new features.”
“A typical CD pipeline will include the following stages: build automation and continuous integration; test automation; and deployment automation.” (devops.com)
“Deployments represent state changes to systems.” To deploy means to get a program to a stable, running state in whatever environment you’re working in. You may make multiple deployments to testing environments throughout development. (Hannah Klemme, VictorOps)
“DevOps is the practice of operations and development engineers participating together in the entire service lifecycle, from design through the development process to production support.” (The Agile Admin)
“DevOps is the combination of cultural philosophies, practices, and tools that increases an organization’s ability to deliver applications and services at high velocity: evolving and improving products at a faster pace than organizations using traditional software development and infrastructure management processes. This speed enables organizations to better serve their customers and compete more effectively in the market.” (AWS)
“The term has its origin in reference to computer networks. The endpoint is a device or node that is connected to the LAN or WAN and accepts communications back and forth across the network. In a traditional sense, an endpoint can be a modem, hub, bridge, or switch. It also could be data terminal equipment (such as a digital telephone handset, router, or printer) or a host computer (such as a workstation or a server).” (Jennifer Deming Burnham, Druva)
External metrics may be things such as “latency, saturation, errors, and traffic. External metrics are metrics that will be influenced by external factors (most likely your customers). Monitoring these will help you reconstruct a detailed picture of a system’s state after an incident.” (Dan Holloran, VictorOps)
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. (Git)
“‘Instrumentation refers to an ability to monitor or measure the level of a product’s performance, to diagnose errors and to write trace information – Wikipedia.’ In that context, ‘instrumentation’ is the word you use when talking about how you’re recording data to be viewed and monitored.” (Mark McDonnell, Integralist)
“Monitoring throughput, success, error, and overall performance of a system. These metrics are incredibly important for overall system functionality and ensure the systems or networks, on which your organization depends, are available and actively doing what they were set up to do.” (Dan Holloran, VictorOps)
“The IT Infrastructure Library (ITIL) is a library of volumes describing a framework of best practices for delivering IT services. ITIL’s systematic approach to IT service management can help businesses manage risk, strengthen customer relations, establish cost-effective practices, and build a stable IT environment that allows for growth, scale and change.” (CIO)
ITSM (IT Service Management)
“IT service management (ITSM) refers to the entirety of activities – directed by policies, organized and structured in processes and supporting procedures – that are performed by an organization to design, plan, deliver, operate and control information technology (IT) services offered to customers. It is thus concerned with the implementation of IT services that meet customers’ needs, and it is performed by the IT service provider through an appropriate mix of people, process and information technology.” (Wikipedia)
In the DevOps ecosystem, managing incidents and building reliability is essential. Sign up for a 14-day free trial to see for yourself how VictorOps makes on-call responsibilities suck less.
Don’t forget to check out parts two and three of The DevOps Dictionary as well: