I'm new to RabbitMQ and I decided to start with console tools for better management understanding. Then I'm going to use web console and then Java client.
I faced some operations can be executed both with rabbitmqctl
:
rabbitmqctl add_vhost test_vhost
and with rabbitmqadmin
:
rabbitmqadmin declare vhost name="test_vhost"
But I did not succeed in, for instance, creating new exchange with rabbitmqctl. What's the difference between these two tools?
rabbitmqctl
is native command line tool written in Erlang, in general, it is used inside the same server where RabbitMQ is running.
rabbitmqadmin
is a Python interface for the HTTP management UI. You cannot use it if management UI plugin is not installed.
There is an overlap between the two tools, but there are a few features that you can use only with one of them.
With rabbitmqctl
you can:
rabbitmqadmin
is more for general admin, you have the same features you have in the management UI, you can also retrieve the node statistics.