I have a Django web application that uses celery for asynchronous tasks and RabbitMQ for broker management. When both are running on the same machine, the tasks run smoothly, however the application will run via the internet and is installed on an Amazon EC2 instance and the rabbit (for scalability reasons) will be installed on another machine. In the tests done with both in the same instance works perfectly, however when trying to connect to the rabbit in another instance, it does not perform the tasks, however when executing the celery it informs that it is connected and ready. By browsing the RabbitMQ information, via the visual interface plugin, the connections, exchanges and queues generated appear.
What I've done so far
I know RabbitMQ does not use the guest user for external connections, so I created a user for the connection, and I set the [administrator] tag to access the RabbitMQ visual interface administration plugin.
In the AWS settings, I created a security group and opened ports 5672, 15672 (for the plugin), and 55672.
If someone can help me with what else is necessary for him to distribute the tasks, be they tutorials, videos or points of documentation that I have not seen or understood.