Engineering Glossary

From fundamental principles to cutting-edge practices, this glossary covers the full spectrum of software engineering terminology.

DevOps
Cloud Computing
Git
Containerization & Orchestration

YAML (Yet Another Markup Language)

Human-readable data serialization standard that can be used in conjunction with all programming languages.
DevOps

YAML Sprawl

Proliferation of YAML configuration files, often leading to maintenance and consistency challenges.
DevOps

Yak Shaving

Seemingly useless activity which, by allowing you to overcome intermediate difficulties, allows you to solve a larger problem.
DevOps

Yarn

Fast, reliable, and secure dependency management tool for Node.js, offering improved performance and additional features over NPM.
DevOps

Yocto

Open-source collaboration project that helps developers create custom Linux-based systems.
DevOps

Yoda Conditions

Programming style where the constant goes before the variable in a conditional statement.
DevOps

You Build it You Run it

DevOps principle where development teams are also responsible for supporting the software in production.
DevOps

Zabbix

Open-source software tool to monitor various IT components, including networks, servers, virtual machines, and cloud services.
DevOps

Zero Downtime Deployment

Deployment method that ensures the application remains available to users during the entire update process.
DevOps

Zero Nines

A measure of system availability where no uptime guarantee is provided. It indicates a service with no specified reliability commitments or expectations.
DevOps

Zero Trust

Security concept centered on the belief that organizations should not automatically trust anything inside or outside its perimeters.
DevOps

Zero-day Attack

Cyber attack exploiting a vulnerability that is unknown to the software vendor or to antivirus vendors.
DevOps

Zipkin

Distributed tracing system that helps gather timing data needed to troubleshoot latency problems in service architectures.
DevOps

Zookeeper

Centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.
DevOps

Zsh (Z Shell)

Extended version of the Bourne Shell with many improvements, including some features of Bash, ksh, and tcsh.
DevOps

iOS Deployment

Process of distributing iOS applications to Apple devices, often through the App Store or enterprise distribution methods.
DevOps

macOS

Apple's Unix-based operating system for Macintosh computers, known for its user-friendly interface and tight integration with Apple hardware.
DevOps
Git Pull --Rebase

Git Pull --Rebase

A variation of Git pull that fetches remote changes and rebases local commits on top of them instead of merging.
Git Push --Force-with-Lease

Git Push --Force-with-Lease

A safer alternative to force push, which only updates the branch if it hasn't been modified since your last fetch.
Git Range-diff

Git Range-diff

A command that compares the changes between two commit ranges, useful for reviewing rebased branches.
Git Read-tree

Git Read-tree

A low-level command that reads tree objects into the index, used in complex merging scenarios.
Git Reflog

Git Reflog

A log of all reference updates in a repository, useful for recovering lost commits or branches.
Git Reflogs

Git Reflogs

Same as Git Reflog, logs that record when the tips of branches and other references were updated in the repository.
Git Refs Storage

Git Refs Storage

The system Git uses to store references (like branches and tags) as files in the .git directory.
Git Refspec

Git Refspec

A string that specifies the mapping between remote and local references when fetching or pushing.
Git Remote Add

Git Remote Add

Adds a new remote repository to your local Git configuration, associating a name with a URL.
Git Remote Prune

Git Remote Prune

A command that removes remote-tracking branches that no longer exist on the remote repository.
Git Remote Remove

Git Remote Remove

Removes a remote repository from your local Git configuration, deleting its associated references.
Git Replace

Git Replace

A feature allowing one Git object to be transparently used in place of another, useful for history rewriting.
Git Rerere (Reuse Recorded Resolution)

Git Rerere (Reuse Recorded Resolution)

A feature that remembers how you resolved merge conflicts and automatically reapplies the resolution.
Git Reset

Git Reset

A command used to undo changes by moving the current branch head to a specific commit.
Git Reset --Hard

Git Reset --Hard

A Git reset option that updates the working directory and staging area to match the specified commit.
Git Reset --Soft

Git Reset --Soft

A Git reset option that moves the HEAD to a specified commit without changing the working directory or staging area.
Git Rev-list

Git Rev-list

A command that lists commit objects in reverse chronological order, often used as a basis for other commands.
Git Rev-parse

Git Rev-parse

A command used to parse Git revision syntax and return the corresponding object name.
Git Revert

Git Revert

A command that creates a new commit that undoes the changes made by a previous commit.
Git Rm

Git Rm

A command to remove files from both the working directory and the Git repository.
Git Shallow Clone

Git Shallow Clone

A clone that only fetches a limited number of commits, reducing download size and time for large repositories.
Git Shortlog

Git Shortlog

A command that summarizes git log output, typically used to create release announcements.
Git Signed Commits

Git Signed Commits

Commits that are cryptographically signed to verify the identity of the committer and ensure integrity.
Git Signed Tags

Git Signed Tags

Tags that are cryptographically signed to verify the identity of the tagger and ensure the tag's integrity.
Git Squash

Git Squash

The process of combining multiple commits into a single commit, often used to simplify history before merging.
Git Stash Apply

Git Stash Apply

A command that applies a stored stash to the working directory without removing it from the stash list.
Git Stash Pop

Git Stash Pop

A command that applies a stored stash to the working directory and removes it from the stash list.
Git Status

Git Status

A command that displays the state of the working directory and the staging area.
Git Submodule

Git Submodule

A repository embedded within another repository, allowing you to keep a Git repository as a subdirectory of another Git repository.
Git Submodule Foreach

Git Submodule Foreach

A command that executes a specified shell command for each initialized submodule in a Git repository.
Git Subtree

Git Subtree

A feature for managing nested repositories as subdirectories of a parent repository, an alternative to submodules.
Git Update-index

Git Update-index

A low-level Git command that manipulates the staging area, updating file information and preparing changes for commit.
Git Wire Protocol

Git Wire Protocol

The communication protocol used between Git clients and servers for efficient data transfer.
Git Worktree

Git Worktree

A feature allowing multiple working trees to be attached to the same repository, useful for working on different branches simultaneously.
Git Worktree Add

Git Worktree Add

Creates a new working tree associated with the repository, allowing work on multiple branches simultaneously.
Git Worktree List

Git Worktree List

A command to list details of each working tree associated with the repository, showing paths and branch information.
Git Write-tree

Git Write-tree

A low-level Git command that creates a tree object from the current index, representing a directory structure.
Git archive

Git archive

A Git command used to create an archive (zip or tar) of files from a specified commit, useful for creating release packages.
Git branch naming conventions

Git branch naming conventions

Agreed-upon patterns for naming branches to improve organization and clarity in collaborative projects.
Git cat-file

Git cat-file

A command to examine the contents and type of Git objects, useful for inspecting repository internals.
Git cherry-pick --continue

Git cherry-pick --continue

A command to resume the cherry-pick process after resolving conflicts in a paused cherry-pick operation.
Git config scopes (system, global, local)

Git config scopes (system, global, local)

Levels at which Git configuration can be set: system (all users), global (user), and local (repository).
Git count-objects -v

Git count-objects -v

A command providing detailed statistics about the number and size of objects in a Git repository.
Git credential helpers

Git credential helpers

Mechanisms to securely store and retrieve credentials for Git operations, reducing manual authentication.
Git diff drivers

Git diff drivers

Custom scripts that determine how Git should generate diffs for specific file types.
Git filter-repo

Git filter-repo

A versatile tool for rewriting Git repository history, offering more power and flexibility than git filter-branch.
Git gc aggressive

Git gc aggressive

A more thorough garbage collection process in Git, optimizing repository storage and performance.
Git hash-object

Git hash-object

A low-level Git command that computes the object ID (SHA-1 hash) for a given file or string, used in Git's internal storage.
Git hooks (client-side and server-side)

Git hooks (client-side and server-side)

Scripts triggered by specific events in Git workflows, used to automate tasks or enforce policies.
Git index (staging area)

Git index (staging area)

The intermediate area in Git where changes are prepared before committing, also known as the staging area.
Git loose objects

Git loose objects

Individual, uncompressed Git objects stored separately in the object database before being packed.
Git ls-tree

Git ls-tree

A command to list the contents of a tree object in Git, showing files and subdirectories.
Git merge drivers

Git merge drivers

Custom scripts defining how Git should handle merges for specific file types or patterns.
Git mktree

Git mktree

A low-level Git command that creates a tree object from a specific index or tree listing.
Git object types (blob, tree, commit, tag)

Git object types (blob, tree, commit, tag)

The four fundamental object types used by Git to store repository data and history.
Git pack-refs

Git pack-refs

A command to pack references into a single file for improved performance in repositories with many references.
Git packfiles

Git packfiles

Compressed files containing multiple Git objects, optimizing storage and transfer efficiency in repositories.
Git post-receive hooks (server-side)

Git post-receive hooks (server-side)

Server-side scripts that run after commits have been accepted, often used for notifications or deployments.
Git pre-receive hooks (server-side)

Git pre-receive hooks (server-side)

Server-side scripts that run before pushed commits are accepted, used to enforce policies or checks.
Git protocol v2

Git protocol v2

An improved version of the Git transfer protocol, offering better performance and feature negotiation.
Git rebase --onto

Git rebase --onto

A command to move a series of commits to a new base commit, useful for changing the parent of a branch.
Git reflog expire

Git reflog expire

A command to remove old entries from the reflog, useful for cleaning up Git history and freeing space.
Git repack

Git repack

A command to combine all loose objects in a repository into packfiles, improving storage efficiency.
Git reset (soft, mixed, hard)

Git reset (soft, mixed, hard)

Commands to undo changes in Git, with varying impacts on the working directory and staging area.
Git secret management

Git secret management

Techniques and tools for securely storing and accessing sensitive information in Git repositories.
Git show-ref

Git show-ref

A command that lists references in a Git repository along with their associated commit hashes.
Git sparse-checkout

Git sparse-checkout

A feature allowing users to check out only a subset of files from a repository, saving space and time.
Git verify-pack

Git verify-pack

A command to validate the contents of Git pack files, ensuring data integrity in the object database.
GitHub App

GitHub App

An application that can be installed directly on organizations and user accounts to extend GitHub's functionality.
GitHub Flavored Markdown

GitHub Flavored Markdown

A version of Markdown with additional features specifically supported on GitHub.
GitHub Importer

GitHub Importer

A tool for importing repositories to GitHub from other version control systems or source code hosts.
GitHub Issues

GitHub Issues

A feature in GitHub for tracking tasks, enhancements, and bugs for a project.
GitHub Jobs

GitHub Jobs

A platform for posting and finding software development jobs, integrated with GitHub profiles, that was discontinued in 2021.
GitHub Marketplace

GitHub Marketplace

A platform for developers to sell and buy integrations for GitHub, enhancing workflow and productivity.
GitHub Pages

GitHub Pages

A static site hosting service that takes files directly from a GitHub repository to publish websites.
GitHub Wiki

GitHub Wiki

A collaborative documentation feature in GitHub repositories, allowing easy creation and editing of project documentation.
GitHub flow

GitHub flow

A lightweight, branch-based workflow that supports teams and projects where deployments are made regularly.
GitLab flow

GitLab flow

A version control workflow that combines feature-driven development and feature branches with issue tracking.
Gitflow

Gitflow

Branching model for Git that defines a strict branching model designed around project releases.
Gitk (Git Repository Browser)

Gitk (Git Repository Browser)

A graphical interface for viewing Git repositories, providing a visual representation of commit history.
GraphQL

GraphQL

Query language for APIs and a runtime for executing those queries with existing data.
HEAD

HEAD

A pointer in Git that refers to the latest commit in the current checked-out branch.
Hello, World

Hello, World

A simple program often used as an introduction to a new programming language or environment, including Git tutorials.
Hotfix branching

Hotfix branching

A method for quickly patching production releases by branching directly from the main branch or a tag.
Index

Index

Also known as the staging area, where changes are prepared before committing in Git.
Issue templates

Issue templates

Predefined structures for creating new issues in Git repositories, ensuring consistent and complete information.
Jekyll

Jekyll

A static site generator often used with GitHub Pages to create websites from Markdown files in a Git repository.
Jekyll Theme Chooser

Jekyll Theme Chooser

A tool in GitHub Pages that allows users to easily select and apply pre-designed themes to their Jekyll sites.
LFS

LFS

Git Large File Storage, an extension for versioning large files in Git repositories.
Linguist

Linguist

A library used by GitHub to detect the programming languages used in repositories.
Markdown

Markdown

A lightweight markup language commonly used for documentation in Git repositories.
Master

Master

Formerly the default name for the primary branch in Git repositories, now often replaced by 'main'.
Merge

Merge

The process of combining changes from different branches into a single branch, integrating multiple lines of development.
OAuth app

OAuth app

An application that uses the OAuth protocol to access Git platform APIs on behalf of users.
OAuth token

OAuth token

A secure string used for authentication in Git operations, allowing access to resources without sharing passwords.
Origin

Origin

The default name for the remote repository from which a local repository was cloned.
Patch

Patch

A file describing changes between versions, used to share and apply modifications across different Git repositories.
Pull

Pull

A Git command that fetches changes from a remote repository and merges them into the current branch.
Pull Request

Pull Request

A method of submitting contributions to a Git project, proposing changes from a forked repository or branch.
Pull request templates

Pull request templates

Customizable files that automatically populate the body of new pull requests, guiding contributors.

Workflows as Code

Defining and managing complex business processes using code in cloud environments.

Workload Placement Optimization

Techniques for efficiently distributing applications and data across cloud resources.

Workload Portability

Ability to move applications and data between different cloud environments with minimal modifications.

Workload-Aware Data Placement

Optimizing data storage location based on application requirements in cloud environments.

Zero Trust Network Access (ZTNA)

Security model that requires strict identity verification for every person and device accessing cloud resources.

Zero Trust Security Model

Approach assuming no automatic trust, requiring continuous verification in cloud environments.

Zero UI Cloud Interactions

Interfacing with cloud services through ambient intelligence, without traditional user interfaces.

Zero-Knowledge Proof Services

Cloud-based cryptographic methods allowing data verification without revealing the data itself.

Zero-Knowledge Proof Systems

Cryptographic protocols enabling data verification without disclosing the actual data in cloud environments.

Zero-Trust Microsegmentation

Fine-grained network segmentation approach in cloud environments, limiting lateral movement of threats.

Zero-Trust Network Access (ZTNA)

Security framework requiring strict authentication and authorization for all cloud network access.

Zoned Namespaces (ZNS) SSDs

Storage devices optimized for cloud workloads, improving performance and reducing write amplification.

eBPF (extended Berkeley Packet Filter)

Technology for running sandboxed programs in the Linux kernel, often used in cloud environments.

eBPF-based Networking

Using eBPF technology to enhance network performance and security in cloud environments.

5G MEC Integration

Integration of 5G mobile edge computing with container platforms for low-latency applications and services at network edges.

AIOps for Container Environments

Application of AI and machine learning for automated operations, monitoring, and management of containerized environments.

API Deprecation Policy

Guidelines for phasing out older API versions in Kubernetes, ensuring smooth transitions for users.

API Extensions

Mechanisms to extend the Kubernetes API with custom resources and functionalities, enhancing platform capabilities.

API Gateway Pattern

Containerized service that acts as a single entry point for all client requests to a microservices architecture.

API Server

Core component of Kubernetes that exposes the cluster's API and handles all administrative operations.

API Server Aggregation

Kubernetes feature allowing the API server to be extended with additional APIs without modifying core Kubernetes code.

API-First Development

Approach prioritizing API design before implementation, crucial for developing scalable containerized microservices.

AWS Fargate

Serverless compute engine for containers, allowing you to run containers without managing the underlying infrastructure.

Adapter Pattern

Design pattern in containerized microservices that wraps a service's interface to make it compatible with other services.

Admission Controllers

Plugins that intercept requests to the Kubernetes API server before object persistence, enforcing policies or modifying objects.

Admission Controllers for Security

Admission controllers specifically focused on enforcing security policies and validating security-related configurations.

Admission Webhooks

HTTP callbacks that receive admission requests and can modify or validate objects before they are persisted.

Admission Webhooks in Operators

Use of admission webhooks within Kubernetes operators to enforce custom policies or modify resources.

Advanced Audit

Kubernetes feature providing detailed logging of all requests processed by the API server for security and compliance.

Aggregated API Servers

Extension of the Kubernetes API server to include custom resources and functionalities without modifying core Kubernetes.

Aggregated ClusterRoles

Combination of multiple ClusterRoles into a single role, simplifying RBAC management in Kubernetes.

Air-gapped Registries

Container registries isolated from public networks, used in secure or restricted environments.

Akri

Open-source project for exposing heterogeneous leaf devices as resources in Kubernetes clusters.

Alertmanager Configuration

Setup and management of Prometheus Alertmanager for handling alerts from monitoring systems.

Amazon Elastic Container Registry (ECR)

Fully managed Docker container registry provided by AWS for storing, managing, and deploying container images.

Ambassador Pattern

Microservices design pattern where a dedicated service acts as an API gateway for other services.

Ambient Mesh

Service mesh implementation that doesn't require sidecars, reducing resource overhead and simplifying deployment.

Anchore Engine for Image Scanning

Open-source tool for deep inspection of container images, including vulnerability scanning and policy enforcement.

Ansible-based Operators

Kubernetes operators implemented using Ansible for automating application lifecycle management.

Antrea Network Policies

Network policies specific to the Antrea CNI plugin, offering fine-grained control over pod-to-pod communication.

Antrea for Open vSwitch-based Networking

Kubernetes networking solution using Open vSwitch for improved performance and advanced networking features.

Apache OpenWhisk

Open-source serverless platform that executes functions in response to events or direct invocations.

AppArmor Profiles

Security profiles for Linux that restrict program capabilities, enhancing container isolation and security.

Application-level Logging

Logging implemented within applications, providing detailed insights into application behavior and performance.

Aqua Security

Platform providing security and compliance for container-based and cloud-native applications throughout their lifecycle.

Aqua Security Platform

Comprehensive security solution for containerized and cloud-native environments, offering vulnerability management and runtime protection.

Argo CD

GitOps continuous delivery tool for Kubernetes, automating application deployment and lifecycle management.

Argo Rollouts

Kubernetes controller for advanced deployment strategies like canary and blue-green deployments.

ArgoCD

Declarative GitOps tool for Kubernetes, automating application deployment and synchronization with Git repositories.

Artifact Management

Process of storing, organizing, and managing container images and related artifacts in container registries.

Athenz for Fine-grained Access Control

Open-source platform for fine-grained access control and authentication in distributed systems.

Attribute-Based Access Control (ABAC)

Access control paradigm where authorization decisions are based on attributes of users, resources, and environment.

Audit Annotations

Additional metadata added to Kubernetes audit events for enhanced context and analysis, improving audit trails.

Audit Backends

Components responsible for processing and storing Kubernetes audit logs, supporting various storage and analysis options.

Audit Events

Records of requests and activities within a Kubernetes cluster, used for security monitoring and compliance.

Audit Levels

Configurable detail levels for Kubernetes audit logs, ranging from metadata-only to full request and response details.

Audit Logging

Process of recording API server requests and responses for security, troubleshooting, and compliance purposes.

Audit Logs

Detailed records of activities and operations within a Kubernetes cluster, used for security and compliance monitoring.

Audit Policy

Configuration defining which events should be recorded in Kubernetes audit logs and at what level of detail.

Audit Profile

Predefined set of audit policy rules for common use cases in Kubernetes, simplifying audit configuration.

Audit Stages

Different phases of request processing where audit events can be generated in Kubernetes, providing comprehensive auditing.

Audit Webhook Configuration

Setup for sending Kubernetes audit events to external webhook endpoints for processing or analysis.

Auditing

Process of systematically recording and examining activities within a Kubernetes cluster for security and compliance purposes.

Authenticating Proxy

Intermediary service that handles authentication before forwarding requests to the Kubernetes API server.

Authentication Modules

Pluggable components in container orchestration platforms for verifying user identities using various methods.

Authorization Policies

Rules defining access permissions for users and services in container orchestration platforms.

Azure Container Instances

Serverless container hosting service in Azure, offering rapid deployment of containers without cluster management.

Azure Container Registry

Managed Docker registry service for storing and managing container images in Azure cloud environments.

BGP (Border Gateway Protocol) in Containers

Implementation of Border Gateway Protocol within containerized network environments for advanced routing.

BGP in Container Networks

In container networks, BGP (Border Gateway Protocol) manages routing information between containers and external networks for efficient traffic routing.

Backend for Frontend (BFF) Pattern

Microservices design pattern where a dedicated service acts as an API gateway for specific frontend needs.

Backup and Restore

Processes for preserving and recovering container data and configurations in orchestration platforms.

Base Image

Foundation Docker image upon which other images are built, containing core OS and runtime components.

Base Image Selection

Process of choosing appropriate foundation images for container builds, balancing size, security, and functionality.

Best Effort QoS

Kubernetes quality of service class for pods with no resource guarantees, scheduled when resources are available.

Blue-Green Deployments

Deployment strategy using two identical environments to minimize downtime and risk during updates.

Bootstrap Tokens

Temporary tokens used for secure cluster initialization and node joining in Kubernetes, simplifying cluster setup.

Bottlerocket OS

Minimalist Linux-based operating system optimized for running containers in cloud environments.

BuildKit

Advanced container image building toolkit offering improved performance and caching capabilities.

BuildKit for Advanced Image Building

Use of BuildKit for efficient, concurrent, and cache-optimized container image creation, improving build performance.

Bulkhead Pattern

Isolation technique in microservices to contain failures and prevent system-wide cascading failures.

Bulkhead Pattern in Microservices

The Bulkhead Pattern in microservices isolates failures by dividing services into separate compartments, preventing issues in one from affecting others.

Burstable QoS

Kubernetes quality of service class for pods that can use more resources than requested when available.

CIS Benchmarks for Containers

Security configuration guidelines for deploying containers securely in various environments.

CNI Plugin Chaining

Technique of using multiple Container Network Interface plugins together for advanced networking capabilities.

CPU Manager

Kubernetes feature for fine-grained CPU resource management and allocation to containers, optimizing performance.

CPU Throttling

Technique to limit CPU usage of containers to prevent resource monopolization and ensure fair allocation.

CQRS (Command Query Responsibility Segregation)

Architectural pattern separating read and write operations in distributed systems, often used in microservices.

CQRS (Command Query Responsibility Segregation) Pattern

Architectural pattern separating read and write operations in distributed systems, often used in microservices.

CRI (Container Runtime Interface) Specification

Standard interface between container runtimes and Kubernetes, allowing pluggable runtime implementations.

CRI Image Management

Functionality within CRI for pulling, inspecting, and removing container images, standardizing image operations.

CRI Logging

Standardized logging interface for container runtimes implementing the Container Runtime Interface.

CRI Metrics

Performance and resource usage data exposed by container runtimes adhering to the CRI specification.

CRI Runtime Class

Kubernetes feature allowing selection of different runtime configurations for containers, enabling specialized runtimes.

CRI Socket

Unix domain socket used for communication between Kubelet and the CRI-compatible container runtime.

CRI Validation Testing

Process of verifying that a container runtime correctly implements the CRI specification, ensuring compatibility.

CRI-O

Lightweight container runtime specifically designed for Kubernetes, implementing the CRI specification.

CRI-O Internals

Core components and architecture of the CRI-O container runtime, including its interaction with Kubernetes.

CRI-O as Container Runtime

Use of CRI-O, a lightweight container runtime, as the primary runtime in a Kubernetes cluster.

CSI Controller Plugin

Component of CSI responsible for volume provisioning and attachment operations in container orchestration systems.

CSI Drivers

Plugins implementing the Container Storage Interface for various storage systems in Kubernetes.

CSI Ephemeral Volumes

Short-lived volumes in Kubernetes, created and deleted alongside a pod using CSI drivers, for temporary storage.

CSI Migration

Process of transitioning from in-tree volume plugins to CSI drivers in Kubernetes, improving storage extensibility.

CSI Node Plugin

Component of CSI responsible for mounting volumes and making them available to containers.

CSI Topology

Feature allowing storage provisioning based on topology constraints in Kubernetes, optimizing data locality.

Cache-Aside Pattern

Caching strategy where the application checks the cache before retrieving data from the main data store.

Caching Strategies for Containers

Techniques for implementing and managing caches in containerized applications for improved performance.

Calico

Open-source networking and network security solution for containers, providing a rich set of security policies.

Calico eBPF Datapath

High-performance networking mode in Calico using extended Berkeley Packet Filter for packet processing.

Canary Deployments

Technique of releasing new versions to a subset of users or servers to minimize risk and gather feedback.

Capabilities

Fine-grained privileges that can be assigned to containers, enhancing security by limiting root-level access.

Capability Controls

Mechanisms for managing and restricting Linux capabilities assigned to containers for improved security.

Categories

Groupings or classifications of container-related resources or components for easier management and discovery.

Ceph RBD

Ceph's block storage system, often used for persistent volumes in container orchestration platforms.