A Service is an abstraction which defines a logical set of Pods and a policy by which to access them (sometimes this pattern is called a micro-service).
Through services, you can expose applications running in a pod.
Pods are created and deleted dynamically so that it is not practical to communicate with pods directly. A service expose a set of pods and provides the load-balancing of the traffic across them.
