It was decided that CEIT was in need of a local MQTT server to avoid having to play in the mess that is IBM's realtime server. So I installed one on the same virtual machine that ejabberd was installed on. Here's how I did it:

What you'll need:

  • Port 1883 to be open to incoming MQTT messages

    Step 1: Add the CentOS mosquitto repository to YUM's list of repositories

 



1. $ cd /etc/yum/yum.repos.d 2. $ wget http://download.opensuse.org/repositories/home:/oojah:/mqtt/CentOS_CentOS-5/home:oojah:mqtt.repo 3. $ sudo yum update



 

 

    Step 2: Install mosquitto



1. $ sudo yum install mosquitto



 

    Step 3: Run mosquitto

    As of writing, no init.d script exists for the CentOS distribution of mosquitto. However, it is a simple enough matter to set it running as a daemon, you'll just need to restart it yourself whenever your machine gets restarted.



1. $ sudo su 2. $ /usr/sbin/mosquitto -d -c /etc/mosquitto/mosquitto.conf > /var/log/mosquitto.log 2>&1



  

    Mosquitto should now be running! You can test it by pointing mosquitto_pub and _sub at it.

 

    Likely problems:

    There appear to be some issues with the mosquitto libraries in the repository, in that they don't work out of the box. I had better success compiling the libraries from source and installing them that way. The method for doing that is fairly similar to doing under OSX, so see my previous post on that subject.

 

参考文章:​​http://ceit.uq.edu.au/content/installing-mosquitto-under-centos​