如何部署Iveely.Computing分布式实时计算系统

时间:2021-07-29 04:54:35

Iveely.Computing是参考Storm的分布式实时计算系统的部分原理,用纯Java实现的轻量级、迷你型,适合于搜索引擎的实时计算系统, Iveely 搜索引擎是一款基于Iveely.Computing的搜索引擎,因此部署Iveely.Computing是使用Iveely搜索的关键,通过验证,Iveely搜索稳定在Iveely.Computing上运行了一个月。

一个完整的部署文件包含以下内容:

如何部署Iveely.Computing分布式实时计算系统

Zookeeper 是必要的协调服务。

Master 是Iveey.Computing的任务主节点,仅需部署一个。

Slave 是Iveely.Computing的数据处理节点,可部署在更多的服务器上,数量不作限制。

UI 是Iveely.Computing的可视化界面,界面参考Storm。

Console 是用于Iveely.Computing 提交任务的工具。

本地部署

1. 启动Zookeeper: 运行Zookeeper\bin\文件夹下的zkServer.cmd。

2. 启动Master: 运行 Master\RunMaster.bat。

3. 启动Slave:运行Slave\RunSlave.bat。

多机器部署:

1. 启动Zookeeper:根据实际情况,设定zookeeper数量,部署方法类似。

2. 启动Master:在选择的机器上,拷贝Master文件夹,修改Master\RunMaster.bat中的zookeeper地址和端口号(127.0.0.1 2181 改为实际机器地址和端口号)。

3. 启动Slave:在选择的机器上(可一台或多台),拷贝Slave文件夹,修改Slave\RunSlave.bat文件中的zookeeper地址和端口号(同上)。

测试是否启动成功:

双击打开UI的index.html,如果看到如下页面,且Slave节点正常显示出来,则说明部署成功。(多台机器部署时,UI\js\request.js 中 uiAddress 值需要改为Master的地址)。

如何部署Iveely.Computing分布式实时计算系统

在Slave summary 中需要看到对应的slave节点,否则slave节点可能没有被识别到。

如何提交任务运行:

在Console文件夹下面,有一个示例程序Iveey.Computing.Example.jar

如何部署Iveely.Computing分布式实时计算系统

双击RunConsole,输入:upload Iveey.Computing.Example.jar com.iveely.computing.example.WordCount,屏幕返回success表示已经提交成功。

其中,upload是指令,第一个参数是jar路径,第二个参数是执行的类名,包含完成包名。

这个时候,返回index.html,在TopologySummary中,将会看到刚刚提交的任务,这是一个词频统计任务。

如何部署Iveely.Computing分布式实时计算系统

如果状态是running表示正常运行,如果是completed表示运行结束,如果是Exception,表示存在异常。

如何查看任务的运行详细信息

点击上图中的”WordCount“链接,将会看到更加详细的信息,包括每个节点运行情况、异常、数据量等等。

如何部署Iveely.Computing分布式实时计算系统

详细了解可以参考:如何快速写一个分布式实时应用程序