使用root权限
su -
visodu
在 root ALL=(ALL) ALL 下添加
your_login_name ALL=(ALL) ALL
sudu -i
ip地址端口设计
192.168.56.19 63631 61616 8161
192.168.56.20 63631 61616 8161
192.168.56.21 63631 61616 8161
配置防火墙
vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 63631 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 61616 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8161 -j ACCEPT
service iptables restart
三台机器下载安装包到usr/local/src
apache-activemq-5.11.1-bin.tar.gz
解压安装文件
cd /usr/local/src
tar -zxvf apache-activemq-5.11.1-bin.tar.gz
mv apache-activemq-5.11.1 ../mq-node-01
mv apache-activemq-5.11.1 ../mq-node-02
mv apache-activemq-5.11.1 ../mq-node-03
赋予activemq执行权限
chmod 755 /usr/local/mq-node-01/bin/activemq
chmod 755 /usr/local/mq-node-02/bin/activemq
chmod 755 /usr/local/mq-node-03/bin/activemq
配置集群使用leveldb
修改三台机器配置文件
brokerName="xxxxx" 名字保证一样
vim /usr/local/mq-node-01/conf/activemq.xml
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="xxxxx" dataDirectory="${activemq.data}">
。。。。。。。。。
<persistenceAdapter>
<!-- kahaDB directory="${activemq.data}/kahadb"/ -->
<replicatedLevelDB
directory="${activemq.data}/leveldb"
replicas="3"
bind="tcp://0.0.0.0:63631"
zkAddress="192.168.56.19:2181,192.168.56.20:2181,192.168.56.21:2181"
hostname="192.168.56.19"
zkPath="/activemq/leveldb-stores"
/>
</persistenceAdapter>
。。。。。。。
</broker>
vim /usr/local/mq-node-02/conf/activemq.xml
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="xxxxx" dataDirectory="${activemq.data}">
。。。。。。。。。
<persistenceAdapter>
<!-- kahaDB directory="${activemq.data}/kahadb"/ -->
<replicatedLevelDB
directory="${activemq.data}/leveldb"
replicas="3"
bind="tcp://0.0.0.0:63631"
zkAddress="192.168.56.19:2181,192.168.56.20:2181,192.168.56.21:2181"
hostname="192.168.56.20"
zkPath="/activemq/leveldb-stores"
/>
</persistenceAdapter>
。。。。。。。。。
</broker>
vim /usr/local/mq-node-03/conf/activemq.xml
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="xxxxx" dataDirectory="${activemq.data}">
。。。。。。。。。
<persistenceAdapter>
<!-- kahaDB directory="${activemq.data}/kahadb"/ -->
<replicatedLevelDB
directory="${activemq.data}/leveldb"
replicas="3"
bind="tcp://0.0.0.0:63631"
zkAddress="192.168.56.19:2181,192.168.56.20:2181,192.168.56.21:2181"
hostname="192.168.56.21"
zkPath="/activemq/leveldb-stores"
/>
</persistenceAdapter>
。。。。。。。。。
</broker>
启动activemq
/usr/local/mq-node-01/bin/activemq start
/usr/local/mq-node-02/bin/activemq start
/usr/local/mq-node-03/bin/activemq start
查看日志
tail -f /usr/local/mq-node-01/data/activemq.log
tail -f /usr/local/mq-node-02/data/activemq.log
tail -f /usr/local/mq-node-03/data/activemq.log
管控台地址和密码
http://192.168.56.19:8161
http://192.168.56.20:8161
http://192.168.56.21:8161
默认用户名和密码为:admin/admin
使用密码访问activemq(可选,建议配置)
vim /usr/local/mq-node-01/conf/activemq.xml
vim /usr/local/mq-node-02/conf/activemq.xml
vim /usr/local/mq-node-03/conf/activemq.xml
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="xxxxx" dataDirectory="${activemq.data}">
。。。。。。。。
<plugins>
<simpleAuthenticationPlugin>
<users>
<authenticationUser username="xxx" password="xxxxxx" groups="users,admins"/>
</users>
</simpleAuthenticationPlugin>
</plugins>
。。。。。。。。
</broker>
修改管控台密码(可选,建议配置)
确保 authenticate 的值为 true(默认)
vim /usr/local/mq-node-01/conf/jetty.xml
vim /usr/local/mq-node-02/conf/jetty.xml
vim /usr/local/mq-node-03/conf/jetty.xml
<bean id="securityConstraint" class="org.eclipse.jetty.util.security.Constraint">
<property name="name" value="BASIC" />
<property name="roles" value="admin" />
<property name="authenticate" value="true" />
</bean>
vim /usr/local/mq-node-01/conf/jetty-realm.properties
vim /usr/local/mq-node-02/conf/jetty-realm.properties
vim /usr/local/mq-node-03/conf/jetty-realm.properties
# Defines users that can access the web (console, demo, etc.)
# username: password [,rolename ...]
admin:xxxxx, admin
注意:用户名和密码的格式是
用户名 : 密码 ,角色名
重启
/usr/local/mq-node-01/bin/activemq restart
/usr/local/mq-node-02/bin/activemq restart
/usr/local/mq-node-03/bin/activemq restart
设置开机启动(可选,建议配置)
vi /etc/rc.local
## ActiveMQ
/usr/local/mq-node-01/bin/activemq start
/usr/local/mq-node-02/bin/activemq start
/usr/local/mq-node-03/bin/activemq start
java访问地址
failover:(tcp://192.168.56.19:61616,tcp://192.168.56.20:61616,tcp://192.168.56.21:61616)?randomize=false