Nautobot Ecosystem Architecture - Distributed and Scaling #3755
Replies: 1 comment
-
@fischerdouglas Great question and I'm glad you asked! Nautobot isn't really a monolith and is meant to be more of a microservices architecture. You can learn more about the specific parts of the Application Stack and how it works at the provided link. The main components to understand about Nautobot's architecture are:
When talking about distributing and scaling the load that your environment handles you'll need to understand what your usage patterns are and where you expect the load to be. Here are a few typical use cases:
Regarding the database scaling, if you're doing a large number of reads from the database that it would be prudent to add some read-only slaves to your setup. If you were doing a lot of writes you'll probably want to work on a Master/slave cluster setup with some additional write nodes. |
Beta Was this translation helpful? Give feedback.
-
I'm studying a little about Nautobot's deployment methods, and I confess that I'm a little confused about how to separate the mechanism's gears to have a little more load distribution and who knows even an increase in availability.
It wasn't clear to me which services would need to be in the same monolith, and which could be separated.
Maybe I can't express myself so well in the scope of Nautobot.
But one tool I like to reference is Zabbix and Zabbix-Proxy. This methodology makes it possible to have a more distributed presence, improve the level of availability of part of the services in a simple way, and relieve computational resources from the central point.
Is something like this possible with the different parts of the Nautobot ecosystem?
For example the Napalm/Nornir/Ansible workers...
Do they need to be bound to the monolith? Can I have multiple distributed workers? How does Nautobot handle this?
Thank you in advance for your patience and understanding...
Beta Was this translation helpful? Give feedback.
All reactions