Kubernetes Flashcards
What is Kubernetes?
Kubernetes is a container management system. The purpose of kubernetes is to manage a containerized application in various types of physical, virtual, and cloud environments.
Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery.
Why is Kubernetes so popular?
Kubernetes considers most of the operational needs for application containers. The Top 10 Reasons why Kubernetes is so popular are as follow:
- Robust Container deployment
- Effective Persistent storage
- Multi-Cloud Support (Hybrid Cloud)
- Container health monitoring
- Compute resource management
- Auto-scaling Feature Support
What are Containers?
A container is a standard unit of software which packages up the code and all its dependencies in order to run the application reliably and quickly from one computing environment to another.
A Docker container image is a standalone, lightweight, executable package of the software, which includes everything needed to run an application such as system tools and libraries, code, runtime, and settings.
Benefits of Containers?
I. It reduces IT management resources
II. It reduces the size of snapshots
III. It reduces and simplifies security updates
IV. Needs less code in order to migrate, transfer, and upload workloads
Kubernetes vs Docker
Kubernetes runs containers through the Container Runtime Interface (CRI). Docker is just one of them.
Kubernates is a orchestration system built on top of docker - it is just a nice way to run a cluster of docker nodes in a production environment and gives you a lot of extra nice featues around it (load balancing, auto scaling containers, rolling deployments, config management, log management etc).