In-memory data store: Redis
In Chapter 3, we learned about the task queue, where Nautobot workers listen for new tasks from the Nautobot web app. Nautobot uses an in-memory data store service called Redis for its task queue. This task queue is then utilized by Celery, the framework for running Jobs in Nautobot. Jobs power most of the advanced automation features of Nautobot, such as loading data from Git repositories or pushing configuration changes to devices. Celery tasks are messages that contain all of the details to run a job, such as the job name and any arguments supplied for the job. The tasks are published to Redis, and then consumed by one or more Celery workers, which we refer to as Nautobot workers. Here’s a step-by-step explanation to better understand the flow of events:
- A user requests a job execution for a specific job in the Nautobot web UI or REST API. This request may also include data required to run the job, such as a list of devices to run the job...