今天开始学习使用 ActiveMQ,学习之前,我们在服务器上部署 ActiveMQ。
作者推荐从官网下载。
接下来就是安装 activemq 了。
可以直接点上面的下载地址,然后通过 FTP 工具上传到服务器。(FileZilla等)
也可以通过 wget
工具在服务器上操作。
wget http://mirror.bit.edu.cn/apache//activemq/5.15.11/apache-activemq-5.15.11-bin.tar.gz
如果服务器上面没有wget 指令,可以通过yum -y install wget
安装 wget
我们将 activemq
安装到 /var
目录下
## 首先解压到 /var 目录
tar -xvf apache-activemq-5.15.11-bin.tar.gz -C /var
## 再将 apache-activemq-5.15.11 重命名
mv /var/apache-activemq-5.15.11 /var/activemq
首先我们进入安装目录:/var/activemq
启动服务: ./bin/activemq start
停止服务: ./bin/activemq stop
vi /usr/lib/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
whereis java
/var/activemq/bin/env
中的JAVA_HOME
# 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=" /var/java/jdk1.8.0_241"
JAVACMD="auto"
systemctl
管理 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
systemctl list-unit-files |grep activemq
如果我们远程访问,有可能会有防火墙的问题,我们可以通过下面的名关闭防火墙。
防火墙配置,ActiveMQ 的 Web管理端口默认为8161(admin/admin),通讯端口默认为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
ActiveMQ 的 Web 管理系统的配置文件在:/var/activemq/conf
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
<!-- the default port number for the web console -->
<property name="host" value="0.0.0.0"/>
<!--此处即为管理平台的端口-->
<property name="port" value="8161"/>
</bean>
<bean id="securityConstraint" class="org.eclipse.jetty.util.security.Constraint">
<property name="name" value="BASIC" />
<property name="roles" value="user,admin" />
<!-- 改为false即可关闭登陆 -->
<property name="authenticate" value="true" />
</bean>
其他配置文件在:/var/activemq/conf/jetty-realm.properties
## ---------------------------------------------------------------------------
# 在此即可维护账号密码,格式:
# 用户名:密码,角色
# Defines users that can access the web (console, demo, etc.)
# username: password [,rolename ...]
admin: admin, admin
user: 123, user
上面就是我在 Centos7 下安装 ActiveMQ 的基本过程,没有遇到什么问题。