| Strategy | Description | Use Cases | Example
Aspect | Description |
---|
Use Feature | Explanation |
---|---|
Labels and selectors | Identify and group Pods using key-value pairs and expressions that match labels |
Annotations | Store additional metadata about Pods using key-value pairs |
Init containers | Perform initialization tasks before main containers start |
Sidecar containers | Enhance or extend the functionality of main containers by running alongside them |
Ephemeral containers | Debug Pods by injecting temporary containers into a running Pod |
Resource requests and limits | Control CPU and memory consumption by specifying parameters for |
Platform | Description | Key Features | Pros | Cons |
---|---|---|---|---|
Kubernetes | Container orchestration tool | - Automatic scaling - Self-healing - Load balancing - Rolling updates | - Large community support |
Container Orchestration Tool | Description | Suitable Use Cases |
---|---|---|
Docker Swarm | Native clustering solution for Docker, simpler and easier to use than Kubernetes, suitable for small to medium-sized applications | Small to medium-sized applications, easy to use, no complex orchestration required |
Mesos/Marathon | Distributed system for running containers and other workloads |
Benefit | Description |
---|---|
Container Orchestration Savings | Kubernetes automates manual processes, reduces need for redundant servers and administration, and handles failures and repairs automatically, saving time and money |
Increased DevOps Efficiency | Kubernetes streamlines development, testing, and deployment processes with lightweight and self-contained containers, easy CI/CD tools like Helm charts, pipelines, and operators, and improved workflow automation |
Term | Definition |
---|---|
Container | A lightweight, standalone, and executable package of software that includes everything needed to run a piece of code |
Container Environment Variables | Name=value pairs that provide useful information into containers running in a pod |
Container Runtime | The software that is responsible for running containers |
Container Runtime Interface (CRI) | An API for container runtimes to integrate with kubelet on a node |
Term | Definition |
---|---|
Kubelet | An agent that runs on each node and communicates with the API server, managing the cluster's resources and providing a layer of abstraction between the runtime environment and Kubernetes APIs |
API Server | The component of the Kubernetes control plane that exposes the Kubernetes APIIt is the front end for the Kubernetes control plane |
cgroup (control group) | A group of Linux processes with optional resource isolation, accounting and limits |
Term | Definition |
---|---|
Secret | An API object that securely stores sensitive data in key-value pairs |
Term | Definition |
---|---|
Volume | An abstraction that provides persistent storage for pods |