activemq部署
系统环境
IP
salt-master-1:192.168.0.156
salt-master-2:192.168.0.157
node-test-1:192.168.0.158
node-test-2:192.168.0.159
系统版本
CentOS release 5.9 (Final)
内核版本
2.6.18-348.el5 x86_64
软件版本
JDK
1.7.79
activemq
5.5.1
软件安装
源码安装
JDK
wget http://192.168.0.155/soft/java/jdk-7u79-linux-x64.gz
tar xzf jdk-7u79-linux-x64.gz -C /usr/local/
vim /etc/profile
#JAVA ENV
export JAVA_HOME=/usr/local/jdk1.7.0_79
export CLASSPATH=:.${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=${JAVA_HOME}/bin:${PATH}
source /etc/profile
java –version
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
activemq
wget http://archive.apache.org/dist/activemq/apache-activemq/5.5.1/apache-activemq-5.5.1-bin.tar.gz
tar xzf apache-activemq-5.5.1-bin.tar.gz -C /usr/local/
cd /usr/local/apache-activemq-5.5.1/
bin/activemq start
http://192.168.0.158:8161/admin/
bin/activemq stop
activemq主从
Shared File System Master Slave
NFS服务
- 在192.168.0.156上搭建NFS服务
yum -y install nfs-utils nfs-utils-lib-devel
vim /etc/exports
/data/kahadb 192.168.0.0/24(rw,no_root_squash,sync)
mkdir -p /data/kahadb
service nfs start
- 将NFS共享盘分别挂载到192.168.0.158和192.168.0.159
mkdir -p /data/kahadb
mount 192.168.0.156:/data/kahadb /data/kahadb
- 测试NFS服务和挂载是否正常
- 在192.168.0.156上创建test.txt
touch /data/kahadb/test.txt
- 分别在192.168.0.158和192.168.0.159上查看是否有test.txt文件
ll /data/kahadb/
activemq配置
vim /usr/local/apache-activemq-5.5.1/conf/activemq.xml
<persistenceAdapter>
<!-- <kahaDB directory="${activemq.base}/data/kahadb"/> -->
<kahaDB directory="/data/kahadb"/>
</persistenceAdapter>
重启activemq
/usr/local/apache-activemq-5.5.1/bin/activemq restart
activemq主从测试
- 只关闭192.168.0.157的activemq
/usr/local/apache-activemq-5.5.1/bin/activemq stop
- 开启192.168.0.157的activemq
/usr/local/apache-activemq-5.5.1/bin/activemq start
- 关闭192.168.0.159的activemq
/usr/local/apache-activemq-5.5.1/bin/activemq stop
- 开启192.168.0.159的activemq
/usr/local/apache-activemq-5.5.1/bin/activemq start
- 关闭192.168.0.158和192.168.0.159的activemq
- 开启192.168.0.158和192.168.0.159的activemq
- 停用192.168.0.156的NFS服务
- 停用192.168.0.156的NFS并重启activemq
- 打192.168.0.156的NFS服务并重启activemq
JDBC Master Slave
mysql安装配置
1 在192.168.0.156上安装mysql
yum -y install mysql mysql-devel mysql-server
2 启动mysql
service mysqld start
3 创建activemq数据库
mysql> create database activemq default character set utf8;
mysql> grant all on activemq.* to "activemq"@"192.168.0.%" identified by "activemq@test";
mysql> flush privileges;
activemq配置
5.9和5.14测试失败
vim /usr/local/apache-activemq-5.5.1/conf/activemq.xml
<destinationPolicy>
<policyMap><policyEntries>
<policyEntry topic="FOO.>">
<dispatchPolicy>
<strictOrderDispatchPolicy />
</dispatchPolicy>
<subscriptionRecoveryPolicy>
<lastImageSubscriptionRecoveryPolicy />
</subscriptionRecoveryPolicy>
</policyEntry>
</policyEntries></policyMap>
</destinationPolicy>
<persistenceAdapter>
<jdbcPersistenceAdapter dataDirectory="activemq-data"
dataSource="#mysql-ds"
createTablesOnStartup="false"/> (第一次启动时设置为true,建三张表)
</persistenceAdapter>
<bean id="mysql-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://192.168.0.156:3306/activemq?relaxAutoCommit=true"/>
<property name="username" value="activemq"/>
<property name="password" value="activemq@test"/>
<property name="poolPreparedStatements" value="true"/>
</bean>
主从测试
测试方法未知
Replicated LevelDB Store
该功能从5.9.0开始支持,5.9.0之前版本不支持
zookeeper安装配置
wget http://192.168.0.155/soft/apache/zookeeper/zookeeper-3.3.6.tar.gz
tar xzf zookeeper-3.3.6.tar.gz -C /usr/local/
cp /usr/local/zookeeper-3.3.6/conf/zoo_sample.cfg /usr/local/zookeeper-3.3.6/conf/zoo.cfg
vim /usr/local/zookeeper-3.3.6/conf/zoo.cfg
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
dataDir=/usr/local/zookeeper-3.3.6/data
# the port at which the clients will connect
clientPort=2181
server.1=192.168.0.157:2888:3888
server.2=192.168.0.158:2888:3888
server.3=192.168.0.159:2888:3888
mkdir -p /usr/local/zookeeper-3.3.6/data
l 192.168.0.157添加myid
echo "1" > /usr/local/zookeeper-3.3.6/data/myid
l 192.168.0.158添加myid
echo "2" > /usr/local/zookeeper-3.3.6/data/myid
l 192.168.0.159添加myid
echo "3" > /usr/local/zookeeper-3.3.6/data/myid
/usr/local/zookeeper-3.3.6/bin/zkServer.sh start
activemq配置
vim /usr/local/apache-activemq-5.9.1/conf/activemq.xml
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="uce-core" dataDirectory="${activemq.data}">
<persistenceAdapter>
<replicatedLevelDB
directory="/data/kahadb"
replicas="3"
bind="tcp://0.0.0.0:0"
zkAddress="192.168.0.157:2181,192.168.0.158:2181,192.168.0.159:2181"
zkPath="/data/leveldb-stores"
hostname="192.168.0.157"
/>
</persistenceAdapter>
官网标准配置:
<broker brokerName="broker" ... >
...
<persistenceAdapter>
<replicatedLevelDB
directory="activemq-data"(可自定义)
replicas="3"(必须3台,1主+2备)
bind="tcp://0.0.0.0:0"(默认设置即可)
zkAddress="zoo1.example.org:2181,zoo2.example.org:2181,zoo3.example.org:2181"
zkPassword="password"(可设置也不可设置,设置值三台必须一致)
zkPath="/activemq/leveldb-stores"(可自定义)
hostname="broker1.example.org"(必须跟本机地址一致)
/>
</persistenceAdapter>
...
</broker>
主从测试
只要停用master,而另两台可自动运行
activemq部署的更多相关文章
- ActiveMQ部署步骤和后台管理网站Service Unavailable问题解决笔记
最近部署ActiveMQ的时候,发现有的服务器可以打开后台管理网址,有的服务器无法打开,Jetty报503 Service Unavailable. 搞了很久终于发现了问题,现将部署和解决过程做笔记如 ...
- ActiveMQ部署和503的错误
最近部署ActiveMQ的时候,发现有的服务器可以打开后台管理网址,有的服务器无法打开,Jetty报503 Service Unavailable. 搞了很久终于发现了问题,现将部署和解决过程做笔记如 ...
- ActiveMQ部署和代码尝试(二)
部署和代码尝试 1. 部署在linux 上的acvtiveMQ 要可以通过前台windows 的页面访问,必须把linux 的IP和 windows的 IP 地址配置到同一个网关下 .这种情况一般都是 ...
- ActiveMQ安装部署(Windows)
JMS(Java Messaging Service)是Java平台上有关面向消息中间件的技术规范,它便于消息系统中的Java应用程序进行消息交换,并且通过提供标准的产生.发送.接收消息的接口简化企业 ...
- ActiveMQ(七)_伪集群和主从高可用使用
一.本文目的 介绍如何在同一台虚拟机上搭建高可用的Activemq服务,集群数量包含3个Activemq,当Activemq可用数>=2时,整个集群可用. 本 ...
- php 利用activeMq+stomp实现消息队列
php 利用activeMq+stomp实现消息队列 一.activeMq概述 ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.ActiveMQ 是一个完全支持JMS1.1和J ...
- ActiveMQ(七)_伪集群和主从高可用使用(转)
本文转自: https://www.cnblogs.com/gossip/p/5977489.html 一.本文目的 介绍如何在同一台虚拟机上搭建高可用的Activemq服务,集群数量 ...
- Hello Activemq
0. 如果永远是localhost 可能一直low下去 1.下载安装 activemq 1.1 从官网下载activemq.tar.gz 并上传(rz)到linux系统 并解压 tar zxvf /* ...
- ActiveMQ学习总结
一.消息中间件的产生的背景 1.在网络通讯中,Http请求默认采用同步请求方式,基于请求与响应模式 2.在客户端与服务器进行通讯时,客户端调用服务端接口后,必须等待服务端完成处理后返回结果给客户端才能 ...
随机推荐
- easyui datagrid 表格不让选中(双层嵌套)
代码: function local(role,region,ip){ $("#roleList").datagrid({ // title:'服务器监控列表', height:( ...
- Java IO如何读写文件
Java把这些不同来源和目标的数据都统一抽象为数据流:Java语言的输入输出功能是十分强大而灵活的:在Java类库中,IO部分的内容是很庞大的,因为它涉及的领域很广泛:标准输入输出,文件的操作,网络上 ...
- thinkphp3.2集成QRcode生成二维码
一.下载QRcode源代码 https://sourceforge.net/projects/phpqrcode/files/releases/ 使用phpqrcode必须开启GD2扩展,phpqrc ...
- 无法连接到localhost。其他信息:用户“sa”登录失败。原因:该用户被禁用。(Microsoft Sql Server,错误:18470).
18470错误: 解决方案: 使用windows身份验证登录之后,选择安全性--->登录名--->sa--->右击--->属性: 右击选择属性进入属性页面: 选择状态,然后再登 ...
- python学习笔记Day3
set有点:1.访问速度快 2.天生解决了重复问题 tuple与set区别: 元组可重复,set不可重复创捷集合1 >>> s1.add('alex')>>> pr ...
- Java 7.21 游戏:豆机(C++&Java)
PS: 难点在于,随机之后的分隔,理解就很容易了 注意:槽的奇偶情况 C++: #include<iostream> #include<ctime> #include<s ...
- gulp ( http://markpop.github.io/2014/09/17/Gulp入门教程 )
前言 最近流行前端构建工具,苦于之前使用Grunt,代码很难阅读,现在出了Gulp,真是摆脱了痛苦.发现了一篇很好的Gulp英文教程,整理翻译给大家看看. 为什么使用Gulp Gulp基于Node.j ...
- POJ 2762 Going from u to v or from v to u?- Tarjan
Description 判断一个有向图是否对于任意两点 $x$, $y$ 都有一条路径使$x - >y$或 $y - >x$ Solution 对于一个强联通分量内的点 都是可以互相到达 ...
- 重启ngix失败
问题如下: 解决办法:杀死nginx进程,再重启 .查找nginx主进程:ps -ef|grep nginx .杀死进程:kill - .启动:cd /usr/sbin./nginx -t
- linux安全分析
history 查看历史命令 last | grep -i norco //最后一次登录时间