CentOS 7에 Apache ActiveMQ를 설치하는 방법
이 페이지에서
- 기본 시스템 업데이트
- JAVA 설치
- ActiveMQ 설치
- ActiveMQ 시작
- 체계화된 서비스 만들기\n
- 관리자 웹 패널 사용
- 결론
Apache ActiveMQ는 무료 오픈 소스 메시지 브로커이자 통합 패턴 서버입니다. JAVA, C++, C, Python, Perl, PHP 등의 많은 교차 언어 클라이언트 및 프로토콜을 지원합니다. 메시지 그룹, 가상 대상, 와일드카드 및 복합 대상 등과 같은 많은 기능을 제공합니다. 스프링 애플리케이션에 쉽게 통합할 수 있습니다.
이 튜토리얼에서는 CentOS 7 서버에 Apache ActiveMQ를 설치합니다.
전제 조건
- 최소 CentOS 7 서버
- 루트 권한. 이 가이드는 루트 사용자로 작성되었으므로 sudo 사용자로 로그인한 경우 sudo -i를 실행하십시오.\n
기본 시스템 업데이트
패키지를 설치하기 전에 다음 명령을 사용하여 패키지와 리포지토리를 업데이트하는 것이 좋습니다.
yum -y update
시스템이 업데이트되면 계속 진행하여 JAVA를 설치합니다.
자바 설치
ActiveMQ는 OpenJDK와 Oracle JAVA를 모두 지원합니다. 이 자습서에서는 최신 버전의 Oracle Java를 서버에 설치합니다. 다음 명령을 실행하여 RPM 패키지를 다운로드합니다.
wget --no-cookies --no-check-certificate --header "Cookie:oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm"
wget이 설치되어 있지 않은 경우 yum -y install wget을 실행하여 wget을 설치할 수 있습니다. 이제 다음 명령을 사용하여 다운로드한 RPM을 설치합니다.
yum -y localinstall jdk-8u131-linux-x64.rpm
이제 다음 명령을 사용하여 Java 버전을 확인할 수 있습니다.
java -version
다음과 같은 결과가 표시됩니다.
[ ~]# java -version java version "1.8.0_131" Java(TM) SE Runtime Environment (build 1.8.0_131-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
또한 JAVA_HOME 환경 변수가 설정되어 있는지 확인해야 합니다. 동일하게 다음 명령을 실행하십시오.
echo $JAVA_HOME
null 또는 빈 출력이 표시되면 JAVA_HOME 변수를 수동으로 설정해야 합니다. 선호하는 편집기를 사용하여 .bash_profile 파일을 편집합니다. 이 자습서에서는 나노 편집기를 사용합니다. nano를 사용하여 .bash_profile을 편집하려면 다음 명령을 실행하십시오.
nano ~/.bash_profile
이제 파일 끝에 다음 행을 추가하십시오.
export JAVA_HOME=/usr/java/jdk1.8.0_131/ export JRE_HOME=/usr/java/jdk1.8.0_131/jre
이제 다음 명령을 사용하여 파일을 소싱합니다.
source ~/.bash_profile
이제 echo $JAVA_HOME 명령을 다시 실행하여 환경 변수가 설정되었는지 여부를 확인할 수 있습니다.
[ ~]# echo $JAVA_HOME /usr/java/jdk1.8.0_131/
ActiveMQ 설치
ActiveMQ는 미리 컴파일되어 직접 사용할 수 있는 Unix 시스템용 바이너리를 제공합니다. 유일한 필수 종속성은 시스템에 JAVA를 설치하는 것이었습니다. JAVA를 설치했으므로 ActiveMQ 다운로드를 계속 진행할 수 있습니다.
wget http://www-eu.apache.org/dist//activemq/5.15.0/apache-activemq-5.15.0-bin.tar.gz
wget이 설치되어 있지 않으면 yum -y install wget을 실행할 수 있습니다. ActiveMQ 다운로드 페이지에서 항상 최신 버전에 대한 링크를 찾을 수 있습니다.
다음 명령을 사용하여 아카이브를 추출하십시오.
tar -zxvf apache-activemq-*-bin.tar.gz -C /var
단순성을 위해 다음을 실행하여 ActiveMQ 디렉터리의 이름을 변경합니다.
mv /var/apache-activemq-*/ /var/activemq/
이제 ActiveMQ가 시스템에 설치되었습니다.
ActiveMQ 시작하기
현재 디렉터리를 ActiveMQ 설치 디렉터리로 변경합니다.
cd /var/activemq
다음 명령을 실행하여 ActiveMQ를 포그라운드 프로세스로 즉시 시작할 수 있습니다.
./bin/activemq console
ActiveMQ를 백그라운드 프로세스로 시작하려면 다음을 실행합니다.
./bin/activemq start
성공적으로 시작된 경우 다음 출력이 표시되어야 합니다.
[ activemq]# ./bin/activemq start INFO: Loading '/var/activemq//bin/env' INFO: Using java '/usr/java/jdk1.8.0_131//bin/java' INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details INFO: pidfile created : '/var/activemq//data/activemq.pid' (pid '27680')
ActiveMQ를 중지하려면 다음 명령을 실행할 수 있습니다.
./bin/activemq stop
체계적인 서비스 만들기
위의 명령을 사용하여 ActiveMQ를 쉽게 실행할 수 있지만 ActiveMQ 프로세스 관리를 위해 systemd 서비스를 사용하는 것이 좋습니다. Systemd 서비스를 사용하면 부팅 시 및 실패 시 ActiveMQ가 자동으로 시작됩니다.
즐겨 사용하는 텍스트 편집기를 사용하여 시스템 서비스 파일을 만듭니다. 이 자습서에서는 나노 편집기를 사용합니다. nano가 설치되어 있지 않으면 yum -y install nano를 실행할 수 있습니다.
nano /etc/systemd/system/activemq.service
이제 파일을 다음 내용으로 채웁니다.
[Unit] Description=ActiveMQ service After=network.target [Service] Type=forking ExecStart=/var/activemq/bin/activemq start ExecStop=/var/activemq/bin/activemq stop User=root Group=root Restart=always RestartSec=9 StandardOutput=syslog StandardError=syslog SyslogIdentifier=activemq [Install] WantedBy=multi-user.target
이제 다음을 사용하여 ActiveMQ를 시작할 수 있습니다.
systemctl start activemq
부팅 시 자동으로 시작되도록 ActiveMQ를 구성하려면 다음을 사용하십시오.
systemctl enable activemq
ActiveMQ 서비스가 올바르게 시작되었는지 확인하려면 다음 명령을 실행하여 ActiveMQ 서비스의 상태를 확인할 수 있습니다.
systemctl status activemq
아래와 비슷한 출력이 표시되어야 합니다.
? activemq.service - ActiveMQ service Loaded: loaded (/etc/systemd/system/activemq.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2017-07-15 17:05:24 UTC; 6s ago Process: 28815 ExecStart=/var/activemq/bin/activemq start (code=exited, status=0/SUCCESS) Main PID: 28867 (java) CGroup: /system.slice/activemq.service ??28867 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth... Jul 15 17:05:24 centos systemd[1]: Starting ActiveMQ service... Jul 15 17:05:24 centos activemq[28815]: INFO: Loading '/var/activemq//bin/env' Jul 15 17:05:24 centos activemq[28815]: INFO: Using java '/usr/bin/java' Jul 15 17:05:24 centos activemq[28815]: INFO: Starting - inspect logfiles specified in logging.propertie...tails Jul 15 17:05:24 centos activemq[28815]: INFO: pidfile created : '/var/activemq//data/activemq.pid' (pid '28867') Jul 15 17:05:24 centos systemd[1]: Started ActiveMQ service.
관리자 웹 패널 사용
ActiveMQ의 관리 패널에 액세스하려면 ActiveMQ 서비스를 시작하십시오. 선호하는 웹 브라우저를 사용하여 다음 URL을 엽니다.
http://Your_Server_IP:8161/admin
방화벽을 설치한 경우 방화벽을 통해 포트 8161을 허용해야 합니다. 동일하게 다음 명령을 실행하십시오.
firewall-cmd --zone=public --permanent --add-port=8161/tcp
firewall-cmd --reload
Apache ActiveMQ의 초기 사용자 이름과 암호는 admin 및 admin입니다. 로그인하면 다음과 같은 인터페이스가 표시됩니다.
로그인하는 즉시 비밀번호를 변경해야 합니다.
결론
이제 Apache ActiveMQ 서버를 사용하여 여러 클라이언트와 서버 간의 통신을 관리할 수 있습니다. ActiveMQ 사이트로 이동하여 Apache ActiveMQ에 대해 자세히 알아볼 수 있습니다.