1、资源准备
1.1 环境
Centos7、jdk8、activemq5.15.8
1.2 activemq5.15.8 安装包
官网下载地址:http://activemq.apache.org/activemq-5158-release.html
国外下载比较慢,可以通过这个网址下载:https://download.csdn.net/download/a1774381324/81935694
2、安装步骤
2.1 使用rz命令上传下载好的activemq安装包到虚拟机/var目录并解压
#安装lrzsz文件上传下载工具
yum install lrzsz
#上传activemq安装包
rz
#解压
tar -zxvf apache-activemq-5.15.8-bin.tar.gz -C /var
2.2 修改目录名称
mv /var/apache-activemq-5.15.8/ /var/activemq/
2.3 做成系统服务
2.3.1 创建一个systemd服务文件
vim /usr/lib/systemd/system/activemq.service
2.3.2 在该文件放入以下内容
[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
2.3.3 安装java8
使用yum安装命令安装openjdk8
yum -y install java-1.8.0-openjdk-devel.x86_64
修改配置文件的环境变量
vim /etc/profile
JAVA_HOME=/usr/local/java/jdk1.8
JRE_HOME=/usr/local/java/jdk1.8/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
刷新环境变量
source /etc/profile
查看是否成功安装java
java -version
2.3.4 设置activemq配置文件中的JAVA_HOME
vim /var/activemq/bin/env
# Location of the java installation
# Specify the location of your java installation using JAVA_HOME, or specify the
# path to the "java" binary using JAVACMD
# (set JAVACMD to "auto" for automatic detection)
JAVA_HOME="/usr/local/java/jdk1.8"
JAVACMD="auto"
2.3.5 通过systemctl管理activemq启停
#启动activemq服务:
systemctl start activemq
#查看服务状态:
systemctl status activemq
#创建软件链接:
ln -s /usr/lib/systemd/system/activemq.service /etc/systemd/system/multi-user.target.wants/activemq.service
#开机自启:
systemctl enable activemq
#检测是否开启成功(enable):
systemctl list-unit-files |grep activemq
2.3.6 防火墙配置,Web管理端口默认为8161,通讯端口默认为61616
-
添加并重启防火墙
firewall-cmd --zone=public --add-port=8161/tcp --permanent firewall-cmd --zone=public --add-port=61616/tcp --permanent systemctl restart firewalld.service
-
或者直接关闭防火墙
systemctl stop firewalld.service