同步操作将从 WeBank/eventmesh 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
建议使用64位操作系统,建议使用Linux / Unix;
64位JDK 1.8+;
Gradle至少为7.0, 推荐 7.0.*
https://github.com/apache/incubator-eventmesh 您将获得EventMesh-master.zip
unzip EventMesh-master.zip
cd / *您的部署路径* /EventMesh-master
gradle clean dist tar -x test
您将在目录/ 您的部署路径 /EventMesh-master/eventmesh-runtime/dist中获得eventmesh-runtime_1.0.0.tar.gz
upload eventmesh-runtime_1.0.0.tar.gz
tar -zxvf eventmesh-runtime_1.0.0.tar.gz
cd bin
配置 eventMesh.properties
cd ../bin
sh start.sh
如果看到"EventMeshTCPServer[port=10000] started....",则说明设置成功。
同上述步骤 1.1
同上述步骤 1.2
2.3.1 项目结构说明:
注:插件模块遵循java spi机制,需要在对应模块中的/main/resources/META-INF/services 下配置相关接口与实现类的映射文件
2.3.2 配置VM启动参数
-Dlog4j.configurationFile=..\eventmesh-runtime\conf\log4j2.xml
-Deventmesh.log.home=..\eventmesh-runtime\logs
-Deventmesh.home=..\eventmesh-runtime
-DconfPath=..\eventmesh-runtime\conf
2.3.3 配置build.gradle文件
通过修改dependencies,compile project 项来指定项目启动后加载的插件
修改eventmesh-starter
模块下面的build.gradle
文件
加载RocketMQ插件配置:
dependencies {
compile project(":eventmesh-runtime"), project(":eventmesh-connector-rocketmq")
}
2.3.4 启动运行
运行org.apache.eventmesh.starter.StartUp的主要方法
执行 docker pull eventmesh/eventmesh-rocketmq:v1.2.0
, 你将会获取到EventMesh的镜像,如下图所示:
预先准备 : 你可能需要从github上下载源代码,并参考这两个文件(eventMesh.properties 和 rocketmq-client.properties)的内容来做下面的操作
3.2.1 需要配置的文件
在运行容器之前,你需要配置如下文件:
eventMesh.properties
配置项 | 默认值 | 备注 |
---|---|---|
eventMesh.server.http.port | 10105 | EventMesh http 服务端口 |
eventMesh.server.tcp.port | 10000 | EventMesh tcp 服务端口 |
rocketmq-client.properties
配置项 | 默认值 | 备注 |
---|---|---|
eventMesh.server.rocketmq.namesrvAddr | 127.0.0.1:9876;127.0.0.1:9876 | RocketMQ namesrv 地址 |
拉取了EventMesh镜像到你的宿主机后,你可以执行下面的命令来完成eventMesh.properties和rocketmq-client.properties 文件的配置
3.2.2 创建文件
mkdir -p /data/eventmesh/rocketmq/conf
cd /data/eventmesh/rocketmq/conf
vi eventMesh.properties
vi rocketmq-client.properties
这两个文件内容可以参考 eventMesh.properties 和 rocketmq-client.properties
3.3.1 运行
执行下面的命令来运行容器
docker run -d -p 10000:10000 -p 10105:10105 -v /data/eventmesh/rocketmq/conf/eventMesh.properties:/data/app/eventmesh/conf/eventMesh.properties -v /data/eventmesh/rocketmq/conf/rocketmq-client.properties:/data/app/eventmesh/conf/rocketmq-client.properties docker.io/eventmesh/eventmesh-rocketmq:v1.2.0
-p : 将容器内端口与宿主机端口绑定,容器的端口应与配置文件中的端口一致
-v : 将容器内的配置文件挂载到宿主机下,需注意配置文件的路径
3.3.2 检查容器的运行状况
执行 docker ps
来检查容器的运行状况
执行 docker logs [container id]
可以得到如下结果
执行 docker exec -it [container id] /bin/bash
可以进入到容器中并查看详细信息
预先准备 :RocketMQ Namesrv & Broker
你可以通过这里来构建rocketmq镜像或者从 docker hub上获取rocketmq镜像.
#获取namesrv镜像
docker pull rocketmqinc/rocketmq-namesrv:4.5.0-alpine
#获取broker镜像
docker pull rocketmqinc/rocketmq-broker:4.5.0-alpine
#运行namerv容器
docker run -d -p 9876:9876 -v `pwd` /data/namesrv/logs:/root/logs -v `pwd`/data/namesrv/store:/root/store --name rmqnamesrv rocketmqinc/rocketmq-namesrv:4.5.0-alpine sh mqnamesrv
#运行broker容器
docker run -d -p 10911:10911 -p 10909:10909 -v `pwd`/data/broker/logs:/root/logs -v `pwd`/data/broker/store:/root/store --name rmqbroker --link rmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" rocketmqinc/rocketmq-broker:4.5.0-alpine sh mqbroker -c ../conf/broker.conf
这里 rocketmq-broker ip 是 pod ip, 如果你想修改这个ip, 可以通过挂载容器中 broker.conf 文件的方式并修改文件中的 brokerIP1 配置项为自定义值
3.4.1 运行示例
Windows
Windows系统下运行示例可以参考这里
Linux
获取 eventmesh-test_1.2.0-SNAPSHOT.tar.gz
你可以从我们的 releases 获取或者通过源码的方式进行构建
通过源码的方式进行构建:
cd /* Your Deploy Path */EventMesh/eventmesh-test
gradle clean testdist testtar -x test`
可以在 /eventmesh-test/build
目录下获得 eventmesh-test_1.2.0-SNAPSHOT.tar.gz
修改配置文件
#上传
upload eventmesh-test_1.2.0-SNAPSHOT.tar.gz
#解压
tar -zxvf eventmesh-test_1.2.0-SNAPSHOT.tar.gz
#配置
cd conf
config your application.properties
运行
TCP Sub
cd bin
sh tcp_sub.sh
TCP Pub
cd bin
sh tcp_pub.sh
TCP Sub Broadcast
cd bin
sh tcp_sub_broadcast.sh
TCP Pub Broadcast
cd bin
sh tcp_pub_broadcast.sh
HTTP Sub
cd bin
sh http_sub.sh
HTTP Pub
cd bin
sh http_pub.sh
之后 , 你可以在 /logs
目录下面看到不同模式的运行日志
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。