본문 바로가기
개발/mqtt

[mosquitto] linux : mqtt : mosquitto 설치, 테스트

by 아크투어 2023. 8. 9.
반응형

mqtt mosquitto 설치

" mosquitto / mqtt개념설명 "
" mosquitto 설치 / 방화벽설정 "
" mosquitto 테스트 "


mosquitto란

1. "모스키토(Mosquitto)"는 오픈 소스 메시지 브로커 소프트웨어이다.
2. MQTT(Message Queuing Telemetry Transport) 프로토콜을 사용한다.
3. 디바이스와 애플리케이션간에 경량 메시지 통신을 가능하게 한다.
4. Broker(중개인) / Publisher(발행자) / Subscriber(구독자) 3가지 요소로 구분된다.
5. Broker의 종류는 Mosquitto / Amazone MQ / HiveMQ / Rabbit MQ / 버텍스 등이 있다.

 

mqtt 프로토콜

1. 경량 메시지 프로토콜 이다.
2. IoT(Internet of Things) 및 M2M(Machine-to-Machine) 통신을 위해 설계되었다.
3. MQTT는 TCP/IP 프로토콜 위에서 동작한다.

 

 

https://mosquitto.org/

 

Eclipse Mosquitto

Eclipse Mosquitto is an open source (EPL/EDL licensed) message broker that implements the MQTT protocol versions 5.0, 3.1.1 and 3.1. Mosquitto is lightweight and is suitable for use on all dev

mosquitto.org

 

1. ubuntu mosquitto 설치하기

# 패키지 목록 업데이트
$ sudo apt-get update

# Mosquitto 설치
$ sudo apt-get install mosquitto

# Mosquitto 클라이언트 설치
$ sudo apt-get install mosquitto-clients

# 설치확인
$ sudo systemctl status mosquitto

 

2. mosquitto 실행명령어

# 실행
$ sudo systemctl start mosquitto

# 중지
$ sudo systemctl stop mosquitto

# 서비스등록/부팅시 자동시작
$ systemctl enable mosquitto

# 서비스해제/부팅시 사용안함
$ systemctl disable mosquitto

 

3. mosquitto 상태확인

mosquitto 설치
mosquitto 설치

 

4. 방화벽설정(1883포트)

mosquitto.conf 파일에서 아래내용을 편집한다.

9001번 포트는 지금사용하지 않는다. 추후 개발시 필요할 것이다.

# mosquitto.conf파일편집
$ vi /etc/mosquitto/mosquitto.conf

# 외부에서 웹소켓으로 테스트시 필요
listener 9001
protocol websockets

# 기본포트 추가
listener 1883
protocol mqtt

 

| mosquitto.conf 내용

mosquitto 방화벽 설정
mosquitto 방화벽 설정

 

5. mosquitto 테스트

지금까지 설치한 mosquitto는 "중계인" 이다.

구독자와 발행자 역할로 테스트를 해본다.

# 첫번째 창에서 주제를구독
$ mosquitto_sub -h localhost -t test

# 두번째 창에서 해당주제에 대한 메시지게시
$ mosquitto_pub -h localhost -t test -m "Hello, world!"

 

| 테스트화면이다.

mosquitto 예제 테스트
mosquitto 예제 테스트

 

반응형