What is a Jenkins agent? And creating a Jenkins SSH Agent via the GUI
A Jenkins agent is an executable, residing on a node, that is tasked by the controller to run a job.  An agent is usually a machine, whether that is a virtual machine, a laptop, a desktop, a server in a data center, or even a rasberry pi, it could even be a container. 
Jenkins agents run on a variety of different environments such as physical machines, virtual machines, Kubernetes clusters, and Docker images.  An agent can represent a machine on the cloud as well, such as an ec2 instance on AWS.