Kubernetes & DevOps Dictionary
The worlds of Kubernetes and DevOps are filled full of jargon and acronyms that can be a minefield for everyone, not just newbies! Here’s a handy reference list of some of the most common terms and their meanings.
Continuous Deployment (CD)
Continuous Deployment (CD) is a software development practice in which code changes are automatically built, tested, and deployed to production without manual intervention. It is an extension of Continuous Delivery, but with the added step of automatically deploying every change that passes the automated tests to production environments. Continuous Deployment...
Read More
Continuous Integration (CI)
Continuous Integration (CI) is a software development practice in which developers regularly integrate their code changes into a shared repository, usually several times a day. Each integration triggers an automated process that builds and tests the code to detect and resolve issues early in the development cycle. The goal of...
Read More
Custom Resource Definitions (CRD)
What is a Custom Resource Definition? A Custom Resource Definition (CRD) in Kubernetes is a way to extend the Kubernetes API to include custom resource types. It allows users to define and manage their own resources that behave like native Kubernetes objects. With CRDs, developers can create, configure, and manage...
Read More
DaemonSet
What is a DaemonSet?A DaemonSet is a Kubernetes resource that ensures a specific pod runs on all or selected nodes in a cluster. It is used to deploy system-level services like log collectors, monitoring agents, or storage daemons that need to run consistently across the entire cluster or a subset...
Read More
Deployment
What is a Deployment?A Deployment is a Kubernetes resource that provides a declarative way to manage and scale pods. It automates the creation, updating, and scaling of ReplicaSets, which in turn manage pods. Deployments ensure that your application is running with the desired number of pods and automatically handle updates...
Read More
DevOps
DevOps is a set of practices, tools, and cultural philosophies that integrates and automates the work of software development (Dev) and IT operations (Ops) teams. The goal of DevOps is to shorten the software development lifecycle, improve collaboration between teams, and deliver high-quality software faster and more reliably. It emphasizes...
Read More
Docker
Docker is an open-source platform that enables developers to automate the deployment, scaling, and management of applications inside lightweight, portable containers. Containers package an application and its dependencies together into a single unit, ensuring that the software runs consistently across different environments. Docker has become a foundational tool in DevOps...
Read More
Dockerfile
What is a Dockerfile? A Dockerfile is a text file containing a set of instructions to build a Docker image. It acts as a blueprint for creating containerized applications, specifying the base image, environment configurations, dependencies, and commands to run. Dockerfiles are fundamental to Docker's functionality, allowing developers to create...
Read More
Elastic Stack (Elk)
What is the Elastic Stack (ELK)? The Elastic Stack, commonly known as ELK, is a collection of open-source tools designed for searching, analyzing, and visualizing log and event data in real time. The stack comprises three main components: Elasticsearch: A search and analytics engine that stores, indexes, and retrieves data...
Read More
Elasticsearch
What is Elasticsearch? Elasticsearch is a distributed, open-source search and analytics engine designed for storing, indexing, and retrieving large volumes of data quickly and efficiently. It is the core component of the Elastic Stack (ELK) and is widely used for applications such as full-text search, log analysis, real-time monitoring, and...
Read More
ELK Stack
ELK Stack is a powerful collection of open-source tools that is widely used for searching, analyzing, and visualizing log data in real-time. The stack is composed of three main components: Elasticsearch, Logstash, and Kibana, each playing a crucial role in the data processing pipeline. The ELK Stack is often used...
Read More
Etcd
What is etcd? etcd is a distributed, key-value store used by Kubernetes to store all cluster data. It acts as the single source of truth for the cluster, maintaining information about the configuration, state, and metadata of all Kubernetes resources. etcd is a critical component of the Kubernetes control plane,...
Read More
Fluentd
What is Fluentd?Fluentd is an open-source data collection and logging tool designed to unify and simplify log management. It collects, transforms, and forwards log data from various sources to multiple destinations, such as databases, monitoring systems, or cloud storage. Fluentd is widely used in Kubernetes environments to manage logs from...
Read More
GitHub Actions
GitHub Actions is a powerful automation and CI/CD (Continuous Integration and Continuous Deployment) tool provided by GitHub. It allows developers to automate, build, test, and deploy their code directly from their GitHub repositories. GitHub Actions uses a system of workflows defined in YAML files that can be triggered by various...
Read More
Grafana
Grafana is an open-source analytics and visualization platform used to monitor, query, and visualize metrics collected from various data sources. It provides users with interactive dashboards and real-time insights into the performance and health of their systems, applications, and infrastructure. Grafana is widely used in conjunction with monitoring tools like...
Read More
Helm
Helm is a package manager for Kubernetes that helps developers and operators define, install, and manage applications and services on Kubernetes clusters. Helm simplifies the deployment of complex Kubernetes applications by packaging them as charts, which are pre-configured Kubernetes resources (e.g., deployments, services, ConfigMaps) that can be easily deployed and...
Read More
Horizontal Pod Autoscaler (HPA)
What is Horizontal Pod Autoscaler? The Horizontal Pod Autoscaler (HPA) is a Kubernetes resource that automatically adjusts the number of pods in a deployment, replica set, or stateful set based on observed metrics such as CPU utilization, memory usage, or custom metrics. HPA ensures that applications can dynamically scale up...
Read More
Immutable Infrastructure
Immutable Infrastructure is a modern approach to managing infrastructure where servers and other components are never modified after deployment. Instead of updating or patching an existing system, a new, fully configured system is built and deployed to replace the old one. This ensures that every deployment is consistent and reproducible,...
Read More
Infrastructure as Code (IaC)
Infrastructure as Code (IaC) is a practice in which infrastructure — such as servers, storage, networks, and other IT resources — is managed and provisioned through machine-readable configuration files, rather than through manual hardware configuration or interactive configuration tools. IaC enables the automation of infrastructure management by treating it the...
Read More
Ingress
What is Ingress?Ingress in Kubernetes is a resource that manages external access to services within a cluster, typically HTTP and HTTPS traffic. It provides a way to expose multiple services under a single IP address or hostname, enabling advanced routing configurations like URL-based routing, SSL termination, and load balancing. Ingress...
Read More