Введение
Mosquitto — брокер сообщений с открытым исходным кодом (лицензия EPL/EDL), реализующий протокол MQTT. Mosquitto легкий и подходит для использования на всех устройствах. Протокол MQTT предоставляет облегченный метод обмена сообщениями с использованием модели публикации/подписки. Это делает его подходящим для обмена сообщениями в Интернете вещей, например, с маломощными датчиками или мобильными устройствами, такими как телефоны или микроконтроллеры. Проект Mosquitto также предоставляет библиотеку C для реализации клиентов MQTT и очень популярных клиентов MQTT командной строки mosquitto_pub и mosquitto_sub.
В этом руководстве мы увидим, как установить Mosquitto на Ubuntu 18.04 LTS.
Если вы намерены установить Mosquitto на удаленный сервер, продолжайте чтение, в противном случае пропустите первый абзац «Подключение к серверу» и читайте следующий.
Подключение к серверу
Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:
ssh root@IP_DEL_SERVER
Далее вам нужно будет ввести пароль пользователя root.
Если вы не используете пользователя root, вы можете войти под другим именем пользователя с помощью той же команды, а затем изменить root на свое имя пользователя:
ssh VOSTRO_UTENTE@IP_DEL_SERVER
Затем вам будет предложено ввести пароль пользователя.
Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Установите брокера Mosquitto
Чтобы установить Mosquitto Broker, я рекомендую добавить официальный репозиторий, чтобы убедиться, что вы используете последнюю доступную версию.
Добавьте официальный репозиторий Mosquitto:
sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa
Обновление индекса пакета уже должно было начаться, если нет, обновите его с помощью этой команды:
sudo apt-get update
Установить Москит:
sudo apt-get install mosquitto
Установите клиенты Mosquitto:
sudo apt-get install mosquitto-clients
Mosquitto уже должен быть активен, чтобы проверить статус:
sudo service mosquitto status
Вы должны увидеть выходное сообщение, подобное следующему:
● mosquitto.service - LSB: mosquitto MQTT v3.1 message broker
Loaded: loaded (/etc/init.d/mosquitto; generated)
Active: active (running) since Thu 2019-08-22 00:00:21 CEST; 1s ago
Docs: man:systemd-sysv-generator(8)
Process: 28799 ExecStop=/etc/init.d/mosquitto stop (code=exited, status=0/SUCCESS)
Process: 29113 ExecStart=/etc/init.d/mosquitto start (code=exited, status=0/SUCCESS)
Tasks: 1 (limit: 2299)
CGroup: /system.slice/mosquitto.service
└─29119 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
Aug 22 00:00:21 TEST-SERVER-1 systemd[1]: Starting LSB: mosquitto MQTT v3.1 message broker...
Aug 22 00:00:21 TEST-SERVER-1 mosquitto[29113]: * Starting network daemon: mosquitto
Aug 22 00:00:21 TEST-SERVER-1 mosquitto[29113]:...done.
Aug 22 00:00:21 TEST-SERVER-1 systemd[1]: Started LSB: mosquitto MQTT v3.1 message broker.
Чтобы остановить комара:
sudo service mosquitto stop
Чтобы запустить Москит:
sudo service mosquitto start
Чтобы перезапустить Москитто:
sudo service mosquitto restart
Если вы хотите видеть управляющие сообщения в консоли, вам нужно вручную запустить брокера mosquitto с помощью следующей команды:
mosquitto -v
Вы должны увидеть выходное сообщение, подобное следующему:
1566424688: mosquitto version 1.6.4 starting
1566424688: Using default config.
1566424688: Opening ipv4 listen socket on port 1883.
1566424688: Opening ipv6 listen socket on port 1883.
Запустите Mosquitto с конфигурационным файлом
Чтобы запустить mosquitto с помощью файла конфигурации, используйте следующую команду:
mosquitto -c nome_file
Файл конфигурации по умолчанию mosquitto.conf находится в следующем каталоге:
/etc/mosquitto/
Рекомендуется сделать копию этого файла перед его редактированием.
Включить журналы
Включение журналов полезно для устранения неполадок. Запись логов уже включена в конфигурационном файле по умолчанию, поэтому просто запустите mosquitto с этим конфигурационным файлом. Остановить комара:
sudo service mosquitto stop
Запустите Mosquitto с файлом конфигурации, например, с файлом по умолчанию:
mosquitto -c /etc/mosquitto/mosquitto.conf
Вы также можете использовать параметр командной строки -v для включения журналов:
mosquitto -v
Запустите несколько брокеров Mosquitto
Вы можете настроить брокера для прослушивания нескольких портов, но для создания нескольких брокеров с вашими собственными конфигурациями вам потребуется запустить несколько экземпляров Mosquitto. Начать слушать Москит на двери 1883:
mosquitto -p 1883
Запустите Mosquitto как прослушивающий демон на порту 1884:
mosquitto -p 1884 -d
Запустите Mosquitto как демон и используйте файл конфигурации, отличный от mosquittio_2.conf по умолчанию:
mosquitto -c /etc/mosquitto/mosquittio_2.conf -d
Команды Linux, полезные для остановки Mosquitto при работе в качестве демона. Получите PID Mosquitto с помощью следующей команды:
ps -aux | grep mosquitto
Или же:
pgrep mosquitto
Остановить (убить) процесс (заменить PID на номер процесса):
kill -9 PID
Вывод
В этом руководстве мы увидели, как установить и использовать Mosquitto Broker в Ubuntu 18.04 LTS.