The purpose of this repo is to provide a jumping-off point for cool kubernetes projects.
Let's check out some terminology below.
pod
-> container / set of containers + storage resources + unique IP + local optionsservice
-> abstraction layer on top of a set of ephemeral pods (think of this as the 'face' of a set of pods)volume
-> sometimes-shared, persistent storagenamespace
-> virtual cluster on top of an underlying physical cluster
clusterIP
-> exposes services only inside the cluster (default)nodePort
-> exposes services at the specified port on all nodes (<node-ip>:<nodePort>
)loadBalancer
-> exposes the service with a cloud-provider's load balancer.externalName
-> this maps a service to endpoints completely outside of the cluster
replicaSet
-> ensures a certain number of pods are runningdeployment
-> declaritively manages areplicaSet
statefulSet
-> like a deployment, but for non-interchangeable (or stateful) underlying podsdaemonSet
-> manages pods that need to run on all/some nodesjob
-> manages a set of pods that run to completion and tracks the overall progress
master
-> entity responsible for managing cluster statekube-apiserver
-> exposes cluster control and statekube-controller-manager
-> this is where the 'brain' of controllers livekube-scheduler
-> matches resources to work
node
-> individual machine/vm that make up the clusterkubelet
-> service that communicates with the masterkube-proxy
-> proxy for connecting to the cluster network