service = a k8s resource that provides stable network endpoint (IP & DNS Name) to access a set of pods, enabling communication between pods/ with outside network
k8s (API) resources = all k8s objects, entites manged by API resources (e.g. deployments, pods, servicesβ¦etc)
k8s API server = kubectl commands go to here; API Server = centeral management component in the k8s cluster = frontend of the k8s control plane
Ingress vs Egress
Similarity: Both are used to describe flow of network traffic from pods to someone else/ some other resources (e.g. pod/ services)
Difference:
ingress: incoming traffic (from external to pod) = who can talk to your pod = into cluster/pod/services
example:
how users access app from the internet
egress: Outgoing traffic (from pod to external) = who your pod can talk to = out of cluster/pod/services
example:
pod calls an external API
pod calls an external DB
User invoking (kubectl, UI, etc.)
β
βΌ
[K8s API Server]
β
βΌ
Cluster State (etcd)
β
βΌ
Other Control Plane Components