Kubernetes Fundamentals Flashcards
What are Kubernetes Resources?
Resources are simply Objects of a certain type (ex. Pods, Services, Deployments, etc.) in the K8s API. You interact with the Cluster by creating and modifying these K8s Objects
What is a Kubernetes Pod?
The most basic resource in K8s, represents a group of one or more containers
What is a Kubernetes Service?
What is a Kubernetes Deployment?
Provides a way to declaratively update Pods and ReplicaSets, great for scaling stateless apps and uses RollingUpdate by default for zero downtime updates
What is the command to list all available resource types within the cluster?
$ kubectl api-resources
How can you get documentation about a certain resources type in K8s?
$ kubectl explain
How can you define your own custom resource types?
CustomResourceDefinition
What is a ReplicaSet?
Ensures a given # of Pods are running at any given time - it’s a copy of a Pod to ensure resiliency
How do you imperatively create a deployment, what command would you use?
$ kubectl create deployment <deploy> --image=<image></image></deploy>
What is a StatefulSet?
Similiar to Deployments, but for Stateful Pods, they maintain order and stick identity (same Pod name, networking, hostname, etc.) and it requires a Headless Service to go alongside it
What is a DaemonSet?
Guarantees that a replica Pod will run on each Node as they join the cluster. You can use filtering to pick and choose which nodes, but good for deploying vendor software (ex. Twistlock)
What is a Job?
A job will reliably run containerized task to completion
What is a CronJob?
This will create and Run Jobs repeatedly according to a schedule
What is the Control Plane?
A set of software components that manage worker Nodes and Pods, it’s not just a server
What are Worker Nodes?
Servers that host Pod and run container workloads