Upstreams, services, and health checks

I am quite confused about what a “upstream” is relative to a service? Specifically, I am interested in utilizing the “health checks” in an upstream to monitor the health of my “services”.

However, I am pretty sure I am misunderstanding what role a upstream and its targets play. I have read through the documentation quite a bit, but I can’t quite pin it down.

Thanks for any clarifications that anybody provides.