Kubernetes concepts
What Kubernetes is
Kubernetes is a platform which allows to run and manage containerized applications.
Annotation
Allows to store addition information with a Kubernetes object; can have a big size.
ConfigMap
Stores environment variables.
CronJob
Used for background tasks run on time; under different conditions may run 0, 1 or more than 1 time.
DaemonSet
Runs a copy of a pod on each node; usually used for logging and metric collection.
Deployment
Updates a replica set or a pod; implements rolling updates and rolbacks.
Job
Creates one or more pods and ensures they are successfully terminated after execution; can restart if it fails.
HorizontalPodAutoscaler
Scales deployment or replica set basing on CPU usage or other metrics.
Ingress
Is a router that accepts incoming traffic and maps URLs to services; can implement TLS termination.
Label
Are key-value pairs that are used to identify Kubernetes objects.
Name
Every object in Kubernetes has a human-readable name and unique id (UID).
Namespace
Allow to organize a set of Kubernetes resources inside a Kubernetes cluster into a virtual cluster; nodes and persistent volumes doesn't belong to a namespace.
Pod
Runs one or more containers with the same IP Address.
ReplicaSet
Allows to run multiple copies of a pod for higher availability.
Secret
Used to store backend credentials.
Service
Allows to address a collection of pods for network communication.
Volume
Is a directory that is accessible to all containers in a pod.