아래 공식문서를 참고함
참고로 go 명령어를 통해 설치하는 방식을 택했음
어차피 서버 내에 있는 .go 파일 빌드도 해야 했기 때문임
1. go 언어 설치
dnf install golang
2. go 명령어를 통한 nats 설치
go install github.com/nats-io/nats-server/v2@latest
3. 실행하기
nats-server
nats-server이 있는 디렉토리로 이동해서 위 명령어 실행함
기본 폴더는 아마 /root/go/bin일거임
3-1. 필요하다면 config 파일을 만들어서 같이 실행하기
nats-server.conf 파일을 만들고 MQTT 관련 설정을 해주면 MQTT 브로커 서버도 같이 돌릴 수 있음
nats-server -c nats-server.conf
근데 안타깝게도 Mosquitto 같은 브로커와 달리 MQTT를 WebSocket 프로토콜로도 허용시켜주는 옵션은 없어보임
그래서 브라우저에 바로 MQTT 메시지를 보낼 방법은 못찾음
(+) 2024.11.01: websocket 설정 관련 옵션 있음. websocket {} 안에 계정 설정 등 적어주면 브라우저에서 ws로 MQTT 연결 가능
MQTT 관련 설정은 아래 공식문서 예시 참고
JetStream(메시지 저장하는 기능) 이라든가 여러가지 옵션들이 있으니 읽어보면 좋을듯.
4. 서비스 등록하기
/etc/systemd/system에 nats-server.service (예시명) 파일을 만듦
내용은 아래 예시 파일(by 공식문서)을 참고하기
(+)
Rocky나 CentOS 한정 서비스가 안된다면 systemctl status [서비스명]으로 로그를 확인해봄
혹시 Failed at step EXEC spawning 이라는 문장이 보인다면 Selinux 에 의한 차단임
setenforce 0 으로 Selinux를 일시적으로 끄거나,
영구적으로 끄고 싶다면 /etc/sysconfig/selinux에서 SELINUX=disabled로 변경해줌
'IT > Linux' 카테고리의 다른 글
[IT/일상] rm -rf / 명령어 (2) | 2024.03.11 |
---|---|
[Apache] 웹서버 static 파일에 접근 (0) | 2023.11.30 |
[Linux/Nginx] Mosquitto 웹소켓(wss) 오류 (0) | 2023.11.06 |
[Linux/Nginx] Reverse Proxy, SSL 설정 (1) | 2023.11.01 |
[Linux/Centos] 백그라운드에서 실행되는 Service 등록 (0) | 2023.10.16 |