The event system is one of the oldest components of Salt. Yet, it is now used more than almost any other part. Most of its usage is internal to Salt, but don't worry, because there's plenty of functionalities that we can take advantage of as users and administrators.
Salt is built based on a message queue. Commands that are issued from the Master generate jobs, which are posted to the queue. Minions watch the queue for anything that targets them. When a Minion picks up a job, it attempts to perform the work associated with it. Once it has finished, it posts the return data back to another queue; this is the one that the Master listens to.
Minions also have the ability to fire information, which is not associated with a job that was generated on the Master. These pieces of information form the basis of the event bus.
There are in fact two event buses: one for Minions to communicate with themselves (but not with other Minions) and one for Minions...