Ubuntu 20.04 安装jdk-20.0.2和apache-activemq-5.18.2

发布时间 2023-09-13 01:41:12作者: 物联宇宙

一、安装Java

在https://www.oracle.com/java/technologies/downloads/找到最新的版本,比如

https://download.oracle.com/java/20/latest/jdk-20_linux-x64_bin.tar.gz

2.1 新建一个目录,比如

/opt/Java

2.2 cd到这个目录,并下载最新版本

wget https://download.oracle.com/java/20/latest/jdk-20_linux-x64_bin.tar.gz

2.3 解压

tar zxvf jdk-20_linux-x64_bin.tar.gz

完成后,会得到一个目录 /opt/Java/jdk-20.0.2

2.3 修改环境变量

打开文件:/etv/profile

在文件头添加如下配置

JAVA_HOME=/opt/Java/jdk-20.0.2
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

2.4 重新加载配置文件

source /etc/profile

2.5 查看是否配置成功

java -version

三、安装ActiveMQ

3.1 必须安装和配置java环境

3.2 新建文件夹/opt/activeMQ

3.3 在/opt/activeMQ目录下,下载最新版

https://mirrors.aliyun.com/apache/activemq/查询最新版URL

wget https://mirrors.aliyun.com/apache/activemq/5.18.2/apache-activemq-5.18.2-bin.tar.gz?spm=a2c6h.25603864.0.0.621b779amLJjVd

3.4 解压

tar zxvf apache-activemq-5.18.2-bin.tar.gz

3.5 配置用户

需要修改配置的文件:"apache-activemq-5.18.2\conf\activemq.xml"

plugins的配置在</broker>里面追加配置:

<plugins>
            <simpleAuthenticationPlugin anonymousAccessAllowed="true">
                <users>                           
                    <authenticationUser username="userForCollector" password="123" groups="collector"/>
                    <authenticationUser username="userForServer" password="123" groups="server"/>
                </users>
            </simpleAuthenticationPlugin>
            <authorizationPlugin>
                <map>
                    <authorizationMap>
                        <authorizationEntries>
                            <authorizationEntry queue=">" read="admins" write="admins" admin="admins" />
                            <authorizationEntry topic=">" read="admins" write="admins" admin="admins" />
              <authorizationEntry topic="ActiveMQ.Advisory.>" read="all,collector,server" write="all,collector,server" admin="all,collector,server"/>
                            <authorizationEntry topic="field.dataFromServer.>" read="admins,collector" write="admins,server" admin="admins,collector,server"/>
              <authorizationEntry topic="field.dataFromCollector.>" read="admins,server" write="admins,collector" admin="admins,collector,server"/>
                        </authorizationEntries>
                        <tempDestinationAuthorizationEntry>
                            <tempDestinationAuthorizationEntry read="admin" write="admin" admin="admin"/>
                        </tempDestinationAuthorizationEntry>
                    </authorizationMap>
                </map>
            </authorizationPlugin>
</plugins>

修改activmq环境配置文件(此步骤相当重要,否则会导致后面activemq开机自启动错误):

/opt/activeMQ/apache-activemq-5.18.2/bin/evn

JAVA_HOME="/opt/Java/jdk-20.0.2"

3.6 启动

./activemq stop

启动成功以后,可以拿以下命令验证端口

netstat -nl|grep 61616

netstat -nl|grep 1883

3.7 停止

./activemq stop

如果是网络云服务器,需要在安全组里面开通1883端口,才能从外部使用mqtt服务。

3.8 加入到Linux自启动里面

在/etc/systemd/system目录下,新建一个activemq.service文件,文件内容如下:

[Unit]
Description=Apache ActiveMQ
After=network.target
[Service]
Type=forking
User=root
Group=root
ExecStart=/opt/activeMQ/apache-activemq-5.17.1/bin/activemq start
ExecStop=/opt/activeMQ/apache-activemq-5.17.1/bin/activemq stop
[Install]
WantedBy=multi-user.target
执行如下命令
sudo systemctl daemon-reload && sudo systemctl start activemq
sudo systemctl enable activemq

查看执行结果

sudo systemctl status activemq

还有一种方法,建立一个专用的账户来运行activemq,参见:

https://vitux.com/how-to-install-apache-activemq-on-ubuntu/