分布式架構實戰--ActiveMQ的安裝與使用(單節點)
具體內容請參考樣例代碼和視頻教程:
http://www.roncoo.com/course/view/85d6008fe77c4199b0cdd2885eaeee53
IP:192.168.4.101
環境:CentOS 6.6、JDK7
1、 安裝JDK並配置環境變量(略)
JAVA_HOME=/usr/local/java/jdk1.7.0_72
2、 下載Linux版的ActiveMQ(當前最新版apache-activemq-5.11.1-bin.tar.gz)
$ wget http://apache.fayea.com/activemq/5.11.1/apache-activemq-5.11.1-bin.tar.gz
3、 解壓安裝
$ tar -zxvf apache-activemq-5.11.1-bin.tar.gz
$ mv apache-activemq-5.11.1 activemq-01
如果啟動腳本activemq沒有可執行權限,此時則需要授權(此步可選)
$ cd /home/wusc/activemq-01/bin/
$ chmod 755 ./activemq
4、 防火墻中打開對應的端口
ActiveMQ需要用到兩個端口
一個是消息通訊的端口(默認為61616)
一個是管理控制臺端口(默認為8161)可在conf/jetty.xml中修改,如下:
<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>
# vi /etc/sysconfig/iptables
添加:
-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
5、 啟動
$ cd /home/wusc/activemq-01/bin
$ ./activemq start
6、 打開管理界面:http://192.168.4.101:8161
默認用戶名和密碼為:admin/admin
登錄後進入
7、 安全配置(消息安全)
ActiveMQ如果不加入安全機制的話,任何人只要知道消息服務的具體地址(包括ip,端口,消息地址[隊列或者主題地址],),都可以肆無忌憚的發送、接收消息。關於ActiveMQ安裝配置http://activemq.apache.org/security.html
ActiveMQ的消息安全配置策略有多種,我們以簡單授權配置為例:
在conf/activemq.xml文件中在broker標簽最後加入以下內容即可:
$ vi /home/wusc/activemq-01/conf/activemq.xml
<plugins>
<simpleAuthenticationPlugin>
<users>
<authenticationUser username="wusc" password="wusc.123" groups="users,admins"/>
</users>
</simpleAuthenticationPlugin>
</plugins>
定義了一個wusc用戶,密碼為wusc.123,角色為users,admins
設置admin的用戶名和密碼:
$ vi /home/wusc/activemq-01/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>
確保authenticate的值為true(默認)
控制臺的登錄用戶名密碼保存在conf/jetty-realm.properties文件中,內容如下:
$ vi /home/wusc/activemq-01/conf/jetty-realm.properties
# Defines users that can access the web (console, demo, etc.)
# username: password [,rolename ...]
admin: wusc.123, admin
註意:用戶名和密碼的格式是
用戶名 : 密碼 ,角色名
重啟:
$ /home/wusc/activemq-01/bin/activemq restart
設置開機啟動:
# vi /etc/rc.local
加入以下內容
## ActiveMQ
su - wusc -c ‘/home/wusc/activemq-01/bin/activemq start‘
8、 MQ消息生產者也與消息消費者的Demo樣例講解與演示
參考更多免費教程請加入Dubbo技術交流:548209960
Java高並發高可用架構:632103578
分布式架構實戰--ActiveMQ的安裝與使用(單節點)