Installing Erlang and Rabbit MQ - jordy33/turbogears_tutorial GitHub Wiki
First you have verify which distribution you are running, run "lsb_release -c" in console. For ubuntu 16.04 is xenial.
Add one of the following lines to your /etc/apt/sources.list (according to your distribution):
deb https://packages.erlang-solutions.com/ubuntu xenial contrib
Next, add the Erlang Solutions public key for "apt-secure" using following commands:
wget https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc
sudo apt-key add erlang_solutions.asc
- Installing Erlang Refresh the repository cache and install either the "erlang" package:
sudo apt-get update
sudo apt-get install erlang
Erlang version
erl -eval 'erlang:display(erlang:system_info(otp_release)), halt().' -noshell
Installing Rabbit MQ Ubuntu 16.04
echo "deb https://dl.bintray.com/rabbitmq/debian xenial main" | sudo tee /etc/apt/sources.list.d/bintray.rabbitmq.list
Add Public Key
wget -O- https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc |
sudo apt-key add -
Update package
sudo apt-get update
Install Server
sudo apt-get install rabbitmq-server
Start server
rabbitmq-server start
Check status
rabbitmqctl status
Managing the Broker To stop the server or check its status, etc., you can use package-specific scripts (e.g. the service tool) or invoke rabbitmqctl (as an administrator). It should be available on the path. All rabbitmqctl commands will report the node absence if no broker is running.
Invoke rabbitmqctl stop to stop the server.
Invoke rabbitmqctl status to check whether it is running.
Rabbit version
sudo rabbitmqctl status
and search for the below line. The version MUST have at least version 3.7.5:
{rabbit,"RabbitMQ","3.7.5"},
Installing Management plugin
rabbitmq-plugins enable rabbitmq_management
Create user:
rabbitmqctl add_user dwim gpscontrol1
rabbitmqctl set_user_tags dwim administrator
rabbitmqctl set_permissions -p / dwim ".*" ".*" ".*"
To enter admin
http://test.dwim.mx:15672/
Remove mosquitto if you have previously installed
sudo apt-get remove mosquitto mosquitto-clients
Install mqtt
rabbitmq-plugins enable rabbitmq_mqtt
Instaling web mqtt
rabbitmq-plugins enable rabbitmq_web_mqtt
sudo service rabbitmq-server start
rabbitmq-plugins enable rabbitmq_web_stomp
rabbitmq-plugins enable rabbitmq_web_stomp_examples
Edit config file
vim /etc/rabbitmq/rabbitmq.conf
Insert the following
stomp.listeners.tcp.default = 0.0.0.0:61613
API
curl -i -u dwim:gpscontrol1 http://test.dwim.mx:15672/api/connections
Enable MQTT:
sudo rabbitmq-plugins enable rabbitmq_mqtt
sudo /etc/init.d/rabbitmq-server restart
Configure MQTT:
sudo vim /etc/rabbitmq/rabbitmq.conf
Insert:
mqtt.listeners.tcp.default = 0.0.0.0:1883
## Default MQTT with TLS port is 8883
# mqtt.listeners.ssl.default = 8883
# anonymous connections, if allowed, will use the default
# credentials specified here
mqtt.allow_anonymous = true
mqtt.default_user = guest
mqtt.default_pass = guest
mqtt.vhost = /
mqtt.exchange = amq.topic
# 24 hours by default
mqtt.subscription_ttl = 86400000
mqtt.prefetch = 10