• activemq 安装-单点


    一,准备工作:首先安装jdk1.7及其以上版本,此环境安装的是jdk-1.8
     
    二.搭建activemq
    环境:  192.168.9.25         centos6.5
                  jdk-1.8
                 apache-activemq-5.14.5-bin.tar.gz
     
     
    三.搭建activemq
    1》解压activemq
    [root@localhost soft]# tar xf apache-activemq-5.14.5-bin.tar.gz
    [root@localhost soft]# cp -rf apache-activemq-5.14.5 /usr/local/
     
    2》启动activemq
    activeMQ具有三种启动方式
    1、普通启动 ./activemq start
    2、启动并指定日志文件 ./activemq start >tmp/smlog
    3、后台启动方式
    [root@localhost bin]# nohup ./activemq start >/tmp/smlog
     
    [root@localhost soft]# cd /usr/local/apache-activemq-5.14.5/
    [root@localhost apache-activemq-5.14.5]# ls
    activemq-all-5.14.5.jar  conf  docs      lib      NOTICE      tmp      webapps-demo
    bin                      data  examples  LICENSE  README.txt  webapps
    [root@localhost apache-activemq-5.14.5]# cd bin
    [root@localhost bin]# ls
    activemq       activemq.jar  linux-x86-32  macosx     wrapper.jar
    activemq-diag  env           linux-x86-64  nohup.out
    [root@localhost bin]# nohup ./activemq start //采用后台启动方式
     
    3》检查启动
    [root@localhost bin]# ps -ef | grep activemq
    root      8740     1  1 23:20 pts/0    00:00:11 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/usr/local/apache-activemq-5.14.5//conf/login.config -Dcom.sun.management.jmxremote -Djava.awt.headless=true -Djava.io.tmpdir=/usr/local/apache-activemq-5.14.5//tmp -Dactivemq.classpath=/usr/local/apache-activemq-5.14.5//conf:/usr/local/apache-activemq-5.14.5//../lib/: -Dactivemq.home=/usr/local/apache-activemq-5.14.5/ -Dactivemq.base=/usr/local/apache-activemq-5.14.5/ -Dactivemq.conf=/usr/local/apache-activemq-5.14.5//conf -Dactivemq.data=/usr/local/apache-activemq-5.14.5//data -jar /usr/local/apache-activemq-5.14.5//bin/activemq.jar start
    root      8860  8839  0 23:39 pts/2    00:00:00 grep activemq
     
    [root@localhost conf]# netstat -lnpt | grep 8161
    tcp        0      0 :::8161                     :::*                        LISTEN      8740/java 
     
     
    四.登陆activemq控制台
    [root@localhost bin]# cd ../
    [root@localhost apache-activemq-5.14.5]# ls
    activemq-all-5.14.5.jar  conf  docs      lib      NOTICE      tmp      webapps-demo
    bin                      data  examples  LICENSE  README.txt  webapps
    [root@localhost apache-activemq-5.14.5]# cd conf/
     
    [root@localhost conf]# ll
    总用量 80
    -rw-r--r--. 1 root root 5911 3月  20 23:09 activemq.xml
    -rw-r--r--. 1 root root 1370 3月  20 23:09 broker.ks
    -rw-r--r--. 1 root root  592 3月  20 23:09 broker-localhost.cert
    -rw-r--r--. 1 root root  665 3月  20 23:09 broker.ts
    -rw-r--r--. 1 root root 1357 3月  20 23:09 client.ks
    -rw-r--r--. 1 root root  665 3月  20 23:09 client.ts
    -rw-r--r--. 1 root root 1172 3月  20 23:09 credentials-enc.properties
    -rw-r--r--. 1 root root 1121 3月  20 23:09 credentials.properties
    -rw-r--r--. 1 root root  962 3月  20 23:09 groups.properties
    -rw-r--r--. 1 root root 1011 3月  20 23:09 java.security
    -rw-r--r--. 1 root root 1087 3月  20 23:09 jetty-realm.properties
    -rw-r--r--. 1 root root 7795 3月  20 23:09 jetty.xml
    -rw-r--r--. 1 root root  965 3月  20 23:09 jmx.access
    -rw-r--r--. 1 root root  964 3月  20 23:09 jmx.password
    -rw-r--r--. 1 root root 3084 3月  20 23:09 log4j.properties
    -rw-r--r--. 1 root root 1207 3月  20 23:09 logging.properties
    -rw-r--r--. 1 root root 1016 3月  20 23:09 login.config
    -rw-r--r--. 1 root root  961 3月  20 23:09 users.properties
     
    查看broker连接端口
    [root@localhost conf]# vim activemq.xml   
     
            <transportConnectors>
                <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB -->
                <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
                <transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
                <transportConnector name="stomp" uri="stomp://0.0.0.0:61613?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
                <transportConnector name="mqtt" uri="mqtt://0.0.0.0:1883?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
                <transportConnector name="ws" uri="ws://0.0.0.0:61614?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
            </transportConnectors>
     
    61616就是我们的broker连接端口
     
     
    查看amq控制台的端口
    [root@localhost conf]# vim jetty.xml
            <property name="host" value="0.0.0.0"/>
            <property name="port" value="8161"/>
     
     
     
    五。浏览器进入控制台
    username:admin
    passwd:admin
    六,修改activemq控制台登陆端口
    [root@localhost conf]# vim jetty.xml
    。。。。。。。。。。。。。。
    109         <property name="host" value="0.0.0.0"/>
    110         <property name="port" value="9766"/>    //控制台端口修改成9766
    。。。。。。。。。。。。。。。。。
     
    [root@localhost bin]# nohup ./activemq restart    //重启activemq服务
    [root@localhost bin]# ps -ef | grep activemq
    root      8992     1 54 00:05 pts/0    00:00:06 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/usr/local/apache-activemq-5.14.5//conf/login.config -Dcom.sun.management.jmxremote -Djava.awt.headless=true -Djava.io.tmpdir=/usr/local/apache-activemq-5.14.5//tmp -Dactivemq.classpath=/usr/local/apache-activemq-5.14.5//conf:/usr/local/apache-activemq-5.14.5//../lib/: -Dactivemq.home=/usr/local/apache-activemq-5.14.5/ -Dactivemq.base=/usr/local/apache-activemq-5.14.5/ -Dactivemq.conf=/usr/local/apache-activemq-5.14.5//conf -Dactivemq.data=/usr/local/apache-activemq-5.14.5//data -jar /usr/local/apache-activemq-5.14.5//bin/activemq.jar start
    root      9036  8289  0 00:05 pts/0    00:00:00 grep activemq
     
    [root@localhost bin]# netstat -lnpt | grep 9766      //查看9766端口
    tcp        0      0 :::9766                     :::*                        LISTEN      8992/java
     
    浏览器登录测试:
    username:admin
    passwd:admin
     
     
     
    七,修改activemq控制台登陆用户名和密码
    [root@localhost conf]# vim jetty.xml
    30         <property name="roles" value="user,admin" />
    31         <!-- set authenticate=false to disable login -->
    32         <property name="authenticate" value="true" />     //确认次数为“true”,说明在web登陆时会开启认证。若此处更改为“flash”,在web登陆时不需要认证
     
    activemq用户名密码存放的位置
    [root@localhost conf]# vim jetty-realm.properties
    ## ---------------------------------------------------------------------------
    ## Licensed to the Apache Software Foundation (ASF) under one or more
    ## contributor license agreements.  See the NOTICE file distributed with
    ## this work for additional information regarding copyright ownership.
    ## The ASF licenses this file to You under the Apache License, Version 2.0
    ## (the "License"); you may not use this file except in compliance with
    ## the License.  You may obtain a copy of the License at
    ##
    ## http://www.apache.org/licenses/LICENSE-2.0
    ##
    ## Unless required by applicable law or agreed to in writing, software
    ## distributed under the License is distributed on an "AS IS" BASIS,
    ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    ## See the License for the specific language governing permissions and
    ## limitations under the License.
    ## ---------------------------------------------------------------------------
     
    # Defines users that can access the web (console, demo, etc.)
    # username: password [,rolename ...]
    #admin: admin, admin
    #user: user, user
    zxjr: zxjr123, admin         //此处用户名修改成“zxjr”     密码修改成“zxjr123”。值得注意的是用户名和密码的格式是:用户名 : 密码 ,角色名。
    user: user, user
     
    重启activemq 服务
    [root@localhost conf]# ps -ef | grep activemq
    root      9188     1  1 00:07 pts/0    00:00:10 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/usr/local/apache-activemq-5.14.5//conf/login.config -Dcom.sun.management.jmxremote -Djava.awt.headless=true -Djava.io.tmpdir=/usr/local/apache-activemq-5.14.5//tmp -Dactivemq.classpath=/usr/local/apache-activemq-5.14.5//conf:/usr/local/apache-activemq-5.14.5//../lib/: -Dactivemq.home=/usr/local/apache-activemq-5.14.5/ -Dactivemq.base=/usr/local/apache-activemq-5.14.5/ -Dactivemq.conf=/usr/local/apache-activemq-5.14.5//conf -Dactivemq.data=/usr/local/apache-activemq-5.14.5//data -jar /usr/local/apache-activemq-5.14.5//bin/activemq.jar start
    root      9303  8289  0 00:17 pts/0    00:00:00 grep activemq
    [root@localhost conf]# kill 9188
    [root@localhost bin]# nohup ./activemq start     //后台启动activemq服务
    [root@localhost bin]# netstat -lnpt | grep 9766
    tcp        0      0 :::9766                     :::*                        LISTEN      9347/java
     
    web网页登陆测试:
    username:zxjr
    passwd:zxjr123
     
     八,在搭建过程中可能会出现的问题
    问题1:当在同一台机器上安装activemq和rabbitmq时,如果是先安装rabbitmq,后安装activmq,在启动activemq时会报错,查看activemq日志,报错内容为: Error creating bean with name 'org.apache.activemq.xbean.XBeanBrokerService#0' defined in class path resource [activemq.xml]: Invocation of init method failed; nested exception is java.io.IOException: Transport Connector could not be registered in JMX: java.io.IOException: Failed to bind to server socket: amqp://0.0.0.0:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600 due to: java.net.BindException: 地址已在使用 (Bind failed) | org.apache.activemq.xbean.XBeanBrokerFactory$1 | main
    次报错信息为activmq 5672的端口被占用,更改5672的端口即可
    [root@bongo conf]#vim  /usr/local/apache-activemq-5.14.4/conf/activemq.xml
    111         <transportConnectors>
    112             <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB -->
    113             <transportConnector name="openwire" uri="tcp://127.0.0.1:61616?maximumConnections=1000&amp;wireFormat.maxFrameSize=104    857600"/>
    114             <transportConnector name="amqp" uri="amqp://127.0.0.1:9766?  
    maximumConnections=1000&amp;wireFormat.maxFrameSize=1048576    00"/>  //5672的端口更改为9766
    115             <transportConnector name="stomp" uri="stomp://127.0.0.1:61613?maximumConnections=1000&amp;wireFormat.maxFrameSize=1048    57600"/>
    116             <transportConnector name="mqtt" uri="mqtt://127.0.0.1:1883?maximumConnections=1000&amp;wireFormat.maxFrameSize=1048576    00"/>
    117             <transportConnector name="ws" uri="ws://127.0.0.1:61614?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"    /> 
    118         </transportConnectors>
     
    重启启动activemq:
    [root@bongo conf]# cd ../bin/
    [root@bongo bin]# nohup ./activemq restart
    [root@bongo bin]# ps -ef | grep activemq
    root     14617 14196  0 14:46 pts/2    00:00:00 tail -f activemq.log
    root     15196     1 61 15:01 pts/0    00:00:06 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/usr/local/apache-activemq-5.14.4//conf/login.config -Dcom.sun.management.jmxremote -Djava.awt.headless=true -Djava.io.tmpdir=/usr/local/apache-activemq-5.14.4//tmp -Dactivemq.classpath=/usr/local/apache-activemq-5.14.4//conf:/usr/local/apache-activemq-5.14.4//../lib/: -Dactivemq.home=/usr/local/apache-activemq-5.14.4/ -Dactivemq.base=/usr/local/apache-activemq-5.14.4/ -Dactivemq.conf=/usr/local/apache-activemq-5.14.4//conf -Dactivemq.data=/usr/local/apache-activemq-5.14.4//data -jar /usr/local/apache-activemq-5.14.4//bin/activemq.jar start
     
     
    问题2:Error creating bean with name 'org.apache.activemq.xbean.XBeanBrokerService#0' defined in class path resource [activemq.xml]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: port out of range:-1 | org.apache.activemq.xbean.XBeanBrokerFactory$1 | main
    报次错误时,可以把[root@bongo conf]#vim  /usr/local/apache-activemq-5.14.4/conf/activemq.xml,的ip地址修改为127.0.0.1,如上错误已被修改。
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    关于线程的执行顺序
    常用正则表达式
    @JsonFormat与@DateTimeFormat注解的使用
    Mybatis中 #{} 和 ${} 的区别!
    [Redis]Spring Boot 中 Redis 的使用
    [WebSocket长连接]SpringBoot2.0集成WebSocket,实现后台向前端推送信息
    [springboot] 搭建项目及单元测试
    [AOP拦截 ]SpringBoot+Quartz Aop拦截Job类中的方法
    [vue折线图] 记录SpringBoot+Vue3.0折线图订单信息展示
    SpringBoot解决cors跨域问题
  • 原文地址:https://www.cnblogs.com/lzcys8868/p/7531875.html
Copyright © 2020-2023  润新知