You are on page 1of 17

DevOps  DevOps glossary

DevOps glossary
TABLE O F C O NT ENTS 

Amazon Web Services (AWS)


Amazon’s pay-per-use cloud service with worldwide data centers. The service includes:

Virtual machines and networking


Application hosting on servers and virtual containers
Web storage
Databases

See Amazon’s AWS website for more information.

Azure
Microsoft’s pay-per-use cloud service with worldwide data centers. The service includes:

Virtual machines and networking


Application hosting on servers and virtual containers
Web storage
Databases
See Microsoft’s Azure website for more information.

Blue/Green deployments
A popular deployment pattern. A Blue/Green pattern uses 2 production environments that swap
roles between live and staging with each release.

For example, if the live version of an application is on your blue server, you use the green server
for staging and testing before redirecting traffic to it. After cutover, the blue server then acts as
the new staging area.

Build server, build service, or CI service


An automation tool has a huge role in Continuous Integration and Continuous Delivery.

Build servers have 3 purposes:

Compiling committed code from your repository many times a day


Running automatic tests to validate code
Creating deployable packages and handing off to a deployment tool, like Octopus Deploy

Build servers save developers time otherwise spent on manual processes, while process
repetition makes results more predictable.

Examples include Jenkins or GitHub Actions.

Canary deployments
A popular deployment pattern. A canary pattern releases updates to a handful of production
targets for testing before rolling out to the rest.
Named after the old early warning system for miners, it helps detect problems early and without
impacting your whole service.

Chaos Engineering
Chaos engineering is a method that allows for failures while still providing an acceptable
service for users.

Popularized by Netflix (who built a tool called Chaos Monkey that randomly causes production
failures), chaos engineering accepts problems happen and encourages building system
reliance.

Chaos engineering also helps you find:

Weaknesses in your systems


Redundancy - if something goes down and doesn’t affect your users, do you need it?
Where automation can help keep your systems running

Read Chaos engineering and runbooks for more information.

CI/CD
CI/CD describes the combined practices of Continuous Integration and Continuous Delivery.
Together they form DevOps’ most important workflows.

Code promotion
The process of successfully tested code moving through your development environments. For
example, code deployed to a test environment may get promoted to a production environment if
it passes QA testing.

Configuration as Code (CaC)


Config as Code is a way to manage application or operating system settings through text files
in a code repository.

Managing settings through code offers the following benefits:


Save time through standardizaton - why spend time changing settings when adding
identical infrastructure?
Version control - know what’s changed and when, and roll back if needed
Audit logs - see who changed what

Container registry
A container registry catalogs and stores container images. It acts as a directory for team
members and deployment processes.

Container
A lightweight virtual machine that runs or hosts an application. Usually hosted on cloud
services.

Containers are non-changeable and disposable. Developers usually launch new versions of their
products on new containers and destroy the old ones.

Container image
A container image is the definition or template of what will become a running application in a
container.

Continuous Delivery (CD)


Continuous Delivery is the practice of deploying updates as often as possible, rather than in
large batches. Doing so allows you to:

Get faster feedback


Reduce the risk of an update breaking something
Make rollbacks easier
Increase predictability and confidence

Much like Continuous Integration, Continuous Delivery involves automating as many of its
processes as possible. It can also include human steps, such as testing and approvals.

Continuous Delivery is one-half of the workflow we call CI/CD.


Continuous Deployment
Continuous Deployment is a form of Continuous Delivery that is fully automated and deploys
every version instantly.

Continuous Integration (CI)


Continuous Integration is the practice of committing code many times a day. Doing so allows
you to:

Find find faults faster


Lower the risk of updates causing problems
Have more predictable results

Continuous Integration also involves automating processes between code commits and
creation of a deployable artifact.

That includes:

Compiling of code
Automatic testing
Packaging of successful code

Continuous Integration is one-half of the workflow we call CI/CD.

Read An introduction to build servers and continuous integration for more information.

Deployment
A deployment is the process of sending or installing deployable artifacts to targets where
applications will run.

That could include physical and virtual media like servers or cloud solutions.
Deployment pattern
A deployment pattern is a strategy that helps reduce downtime and other problems when
deploying applications.

There are many standard deployment patterns, like Rolling, Blue/Green, and Canary.

Read Common deployment patterns and how to set them up in Octopus for more information.

Deployment target
A deployment target is a physical or virtualized server or cloud service where you deploy your
application for testing or use.

Example deployment targets include:

Windows or Linux servers


Cloud services (Azure, Amazon Web Services, Google Cloud Platform)

DevOps
DevOps is a development methodology that helps tear down barriers in software delivery,
including:

Manual processes
Office politics
Counterintuitive support workflows

Read An introduction to DevOps for more information.

Docker
Docker provides the leading technology for building and running containers. The Docker format,
OCI, is open source and industry standard, supported by all major operating systems.
Docker Hub
Docker Hub is Docker’s container registry service. It allows developers to catalog and store
container images.

DORA metrics
DORA is the DevOps Research and Assessment group.

DORA metrics are a predictive link between DevOps practices and business outcomes. You can
use Dora metrics to measure the progress of DevOps adoption.

Read DORA metrics for more information.

Dynamic infrastructure
Dynamic infrastructure describes resources you can spin up and tear down on demand.
Dynamic infrastructure can include containers or virtual machines.

Read Release management with dynamic infrastructure for more information.

Environments
An environment is a collection of deployment targets. It could include physical or virtual
servers, and cloud services.

Environments also form a deployment’s lifecycle. Most development teams use at least 3
environments like:

Development
Test
Production
A deployment gets promoted through these environments as it passes checks and testing.

Feature branching
Feature branching is the Git practice of working in distributed development.

This means developers work on new features in separate branches and merge changes into the
main branch when complete.

Read Feature branching web apps for more information.

Google Cloud Platform (GCP)


Google’s pay-per-use cloud service with worldwide data centers. The service includes:

Virtual machines and networking


Application hosting on servers and virtual containers
Web storage
Databases

See the Google Cloud Platform website for more information.

Git
Git is a software and method of source control used for distributed development. Git tracks file
changes, mostly to track source code changes between developers.

GitHub Actions
GitHub Actions is GitHub feature that allows you to perform build functions from your code
repository without a build server.

Read How GitHub Actions is different to traditional build servers for more information.

GitHub
GitHub is a code repository hosting service for Git-controlled source code.

GitHub is one of the most popular code hosting services. It’s popular with both the open-source
community and corporate organizations.

GitOps
GitOps is a framework to automate infrastructure processes using DevOps tools and concepts.
With version control you can manage infrastructure and environment definitions with existing
tooling.

Read What is GitOps for more information.

Google App Engine


The Google App Engine is a website hosting option from Google for ‘monolithic’ sites. It
supports sites written in all major languages.

Read Deploying to Google App Engine for more information.

Helm
Helm is a Kubernetes package manager. Helm uses “Helm Charts” to define and install
applications on a Kubernetes cluster.
I

Infrastructure as Code (IaC)


Infrastructure as Code is a way to define the state of virtual infrastructure using files stored in
source control.

Software tools can use the files to spin up, configure, and tear down infrastructure.

Internal developer platform (IDP)


An internal developer platform is a self-service product that simplifies deployment pipelines
and operations tasks for developers. An IDP is usually part of platform Engineering.

The IDP should reduce complexity and cognitive overload for developers.

Jenkins Pipeline
Jenkins Pipeline is a group of plugins Jenkins recommends for setting up a Continuous Delivery
platform.

Jenkins
Jenkins is an open-source build server, Continuous Integration (CI), and automation platform.

Jenkins will compile and test your code, trigger packaging, and hand off to your deployment
tool.
K

Kubernetes
Kubernetes is a container management tool that can help you scale an application.

Kubernetes can spin up and tear down automatically as your processes or traffic needs
change.

L
N/A

Microservices
Microservices is a software architecture method where you build an application from many
independent services. Users access the software through a single front end, unaware of the
difference.

The benefit of microservices is if one service has a problem, the application can still run
without it. It’s also quicker to recover from problems.

Read Monoliths vs. Microservices and Microservices and Frameworks for more information.

N
N/A
O
N/A

THE DEVOPS ENGINEER'S HANDBOOK 

Platform engineering
Platform Engineering is a DevOps team structure that balances autonomy with standard
processes. It treats ideal tech and an automated deployment pipeline as one product offered to
internal development teams.

Platform Engineering’s benefits are:

Easy self-service
Ensures following of established practices
Less risk caused by decision making

Q
N/A

Release management
Release management is the process of promoting software versions through environments
with version control.
Rolling deployments
A popular deployment pattern. A rolling pattern deploys to one target (or batch of targets) at a
time. This method helps reduce downtime and environment congestion during rollout.

Runbooks
Runbooks are a step-by-step guide to complete a routine or emergency computer process.

Octopus, or other tools, can help you automate runbook processes.

Read Traditional runbooks versus Octopus Runbooks for more information.

Shadow IT 
Shadow IT is when people outside of IT use or install tools that their IT department should
oversee.

Shadow IT reduces resource transparency and control and adds risk to organizations.

Read What is Shadow IT for more information.

Site reliability engineering (SRE)


Site Reliability Engineering (SRE) is a DevOps team structure made popular by Google. SRE
teams help development teams build software in ways that allow the SRE team to adopt the
application support.

As with Platform Engineering, SRE helps development teams build scalable and reliable
applications. Developers use tools provided by SREs, reducing manual work and introducing
capabilities like observability.
T

Tenants
Tenants is an Octopus feature deploying to Software as a Service (SaaS) applications. They
allow you to deliver your package to groups of environments or projects.

Terraform
Developed by Hashicorp, Terraform is a cloud infrastructure management tool. Terraform uses
Infrastructure as Code to automate infrastructure setup and operations.

U
N/A

Version control
Version control is a tool used to track changes to code and other files. It can also store build
processes and infrastructure config.

Git is the most widely used version control system.

W
N/A
X
N/A

Y
N/A

Z
N/A

Help us continuously improve


Please let us know if you have any feedback about this page.

Send feedback

Andy Corrigan, Steve Fenton


Wednesday, July 20, 2022
Andy is a writer and editor who excels in making the complex simple. He has written extensively
on CI/CD, software delivery, and deployment automation.

Tags: Glossary Terms

Categories: DevOps

NEXT ARTICLE 
 Share
Search

More resources

Measuring Platform
Developer
Engineering with
experience metrics
MONK metrics
Read more Read more

CATEGORIES TAGS

Continuous Delivery CI-CD

DevOps Improvement
History Metrics

Platform Engineering Software Delivery

Site Reliability Engineering Teams

QUICK LINKS

Octopus Slack Community

Octopus Deploy

   

Copyright © 2023 Octopus Deploy

Back to top 

You might also like