웹사이트 검색

CentOS/RHEL 8에 Apache ActiveMQ를 설치하는 방법


ActiveMQJava로 작성된 엔터프라이즈 기능을 갖춘 메시지 지향 미들웨어(MOM)의 인기 있는 오픈 소스 다중 프로토콜 구현입니다. 두 애플리케이션 간에 또는 애플리케이션 내부의 두 구성요소 간에 메시지를 전송합니다.

Java, C, C++, C#, Ruby, Perl, Python, PHP의 광범위한 교차 언어 클라이언트와 OpenWire, STOMP, MQTT, AMQP, REST 및 WebSocket과 같은 전송 프로토콜을 지원합니다.

추가 읽기: Debian 10에 Apache ActiveMQ를 설치하는 방법

사용 사례에는 트랜잭션 메시징, 클러스터링 및 범용 비동기 메시징 모델, 데이터 웹 스트리밍, HTTP를 사용한 메시징에 대한 RESTful API 등이 포함됩니다.

이 문서에서는 CentOS 8RHEL 8 Linux 배포판에 최신 버전의 Apache ActiveMQ를 설치하는 방법을 설명합니다.

CentOS 및 RHEL 8에 Apache ActiveMQ 설치

ActiveMQ를 설치하려면 시스템 서버에 Java가 설치되어 있어야 합니다. Java가 설치되지 않은 경우 CentOS 및 RHEL 8에 Java를 설치하는 방법 가이드를 사용하여 시스템에 설치할 수 있습니다.

Java가 설치되면 계속 진행하여 최신 버전의 ActiveMQ를 다운로드하거나 다음 wget 명령을 사용하여 표시된 대로 소스 패키지를 가져올 수 있습니다.

cd /opt
wget https://www.apache.org/dist/activemq/5.16.4/apache-activemq-5.16.4-bin.tar.gz

이제 tar 명령을 사용하여 아카이브 파일을 추출하고 표시된 대로 cd 명령을 사용하여 추출된 디렉터리로 이동합니다.

tar zxvf apache-activemq-5.16.4-bin.tar.gz
cd apache-activemq-5.16.4

이제 ActiveMQ 패키지가 /opt 디렉터리에 설치되고 ls 명령을 사용하여 해당 내용을 볼 수 있습니다.

ls -l 

위의 출력에서 주목해야 할 몇 가지 주요 디렉터리가 있으며 여기에는 다음이 포함됩니다.

  • bin – 바이너리 파일과 기타 관련 파일을 저장합니다.
  • conf – 구성 파일(XML 형식으로 작성된 기본 구성 파일 activemq.xml)이 포함되어 있습니다.
  • 데이터 – PID 파일과 로그 파일을 저장합니다.
  • docs – 문서 파일이 포함되어 있습니다.
  • lib – 라이브러리 파일을 저장합니다.
  • webapps – 웹 인터페이스와 관리 콘솔 파일이 포함되어 있습니다.

Systemd에서 ActiveMQ를 서비스로 실행

ActiveMQ를 서비스로 실행하려면 activemq라는 사용자 아래에 ActiveMQ 서비스 단위 파일을 생성해야 하므로 다음을 사용하여 사용자를 생성하는 것부터 시작하세요. useradd 명령은 다음과 같습니다.

useradd activemq

다음으로 ActiveMQ 설치 디렉터리에 올바른 권한을 설정하면 해당 디렉터리의 모든 콘텐츠가 새로 생성된 사용자 및 그룹에 속하게 됩니다. 또한, 새로운 권한이 다음과 같이 설정되어 있는지 확인하세요.

chown -R activemq:activemq /opt/apache-activemq-5.16.4
ls -l /opt/apache-activemq-5.16.4/

이제 /etc/systemd/system/ 디렉토리 아래에 activemq.service라는 ActiveMQ용 서비스 단위 파일을 생성합니다.

vi /etc/systemd/system/activemq.service

activemq.service 파일에 다음 구성을 추가합니다.

[Unit]
Description=Apache ActiveMQ Message Broker
After=network-online.target

[Service]
Type=forking

User=activemq
Group=activemq

WorkingDirectory=/opt/apache-activemq-5.16.4/bin
ExecStart=/opt/apache-activemq-5.16.4/bin/activemq start
ExecStop=/opt/apache-activemq-5.16.4/bin/activemq stop
Restart=on-abort


[Install]
WantedBy=multi-user.target

파일을 저장하고 닫습니다. 그런 다음 systemd 관리자 구성을 다시 로드하여 다음 명령을 사용하여 새로 생성된 서비스를 읽습니다.

systemctl daemon-reload

다음으로 systemctl 명령을 사용하여 시작할 수 있습니다. 표시된 대로 Apache ActiveMQ 서비스를 활성화하고 상태를 확인합니다.

systemctl start activemq.service
systemctl enable activemq.service
systemctl status activemq.service

기본적으로 ActiveMQ 데몬은 61616 포트에서 수신 대기하며 다음과 같이 ss 유틸리티를 사용하여 포트를 확인할 수 있습니다.

ss -ltpn 

ActiveMQ 웹 콘솔에 액세스하기 전에 방화벽 서비스(기본값)가 실행 중인 경우 8161 포트를 열어야 합니다. 표시된 대로 firewall-cmd 도구를 사용하여 웹 콘솔이 방화벽에서 수신 대기합니다.

firewall-cmd --zone=public --permanent --add-port=8161/tcp
firewall-cmd --reload

ActiveMQ 설치 테스트

ActiveMQ 웹 콘솔은 웹 브라우저를 통해 ActiveMQ를 관리하고 모니터링하는 데 사용됩니다. 액세스하려면 웹 브라우저를 열고 다음 URL을 가리킵니다.

http://localhost:8161
OR
http://SERVER_IP:8161

다음 웹 인터페이스로 이동하게 됩니다.

ActiveMQ의 실제 관리를 시작하려면 "ActiveMQ 브로커 관리자" 링크를 클릭하여 관리 웹 콘솔에 로그인하세요. 또는 다음 URL을 사용하면 관리 웹 콘솔 로그인 인터페이스로 직접 이동할 수도 있습니다.

http://localhost:8161/admin 
OR
http://SERVER_IP:8161/admin

그런 다음 기본 사용자 이름 admin과 비밀번호 admin을 사용하여 로그인합니다.

다음 스크린샷은 ActiveMQ를 관리하고 모니터링하는 다양한 기능이 포함된 웹 콘솔 대시보드를 보여줍니다.

요약

이 문서에서는 CentOS 8RHEL 8 Linux 배포판에 최신 버전의 Apache ActiveMQ를 설치하는 방법을 설명했습니다. 특히 Apache ActiveMQ 사용 방법에 대한 자세한 내용을 알고 싶다면 공식 ActiveMQ 5 문서를 읽어보세요. 아래 의견 양식을 통해 피드백을 보내주시기 바랍니다.