
流式计算Heron
Ethan_pika
一个爱养花的程序员
展开
-
Twitter开源流式计算框架Apache Heron源码解析专题【更新】
以下文章是对Apache Heron中的部分源码进行解析和文章,来更好的理解Heron底层的运行机制和代码实现。文章的顺序如下:Heron CLI中update命令实现背后的源码解析 Heron Topology提交过程源码解析(待完成) Heron任务调度机制源码解析(待完成) Heron RoundRobinPacking Algorithm源码解析(待完成) 从Heron CLI...原创 2019-11-21 20:16:10 · 382 阅读 · 0 评论 -
Heron CLI中update命令实现背后的源码解析
概述最近回顾了一下之前针对Heron的Blog内容,发现大部分都是在对Heron进行使用和实验部分的内容。对其理论方面的分析比较少。而Heron作为很新的一代流式计算平台,在目前国内Flink的热潮中,还是显得很冷清。从Spark streaming的模拟流,到storm,flink实现真正的流处理,再到Twitter自我革命开源Heron。作为在国内较早接触Heron的一拨人(Heron...原创 2019-11-21 15:58:45 · 281 阅读 · 0 评论 -
Setting up Heron with Aurora Cluster Locally on Linux
It is possible to setup Heron with a locally running Apache Aurora cluster. This is a step by step guide on how to configure and setup all the necessary components.Setting Up Apache Aurora Cluster l...原创 2019-11-10 21:01:51 · 219 阅读 · 0 评论 -
Ubuntu16.04 配置集群SSH无密码登录
在Heron集群配置的过程中,需要实现主机两两之间的SSH免密登录。具体过程如下:安装SSH Server(每个主机中进行)1. Ubuntu默认安装SSH Client,此外还需要安装SSH Server:yitian@ubuntu:~$ sudo apt-get updateyitian@ubuntu:~$ sudo apt install openssh-server2...原创 2019-11-09 10:26:31 · 457 阅读 · 0 评论 -
Aurora Scheduler and Thermos的安装和配置
Aurora Schduler(Master)修改后的文件内容:yitian@heron01:/etc/aurora$ cat /etc/default/aurora-scheduler## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file excep...原创 2019-11-09 10:24:08 · 266 阅读 · 0 评论 -
提交Heron Topology后Auroa, Mesos的运行情况梳理(问题及解决)
集群中Mesos和Aurora的配置情况Heron高可用集群环境搭建拓扑提交命令yitian@heron04:~$ heron submit aurora/yitian/devel --config-path ~/.heron/conf ~/.heron/examples/heron-api-examples.jar com.twitter.heron.examples.api.Wor...原创 2019-11-08 10:49:20 · 278 阅读 · 0 评论 -
新一代流式计算平台Apache Heron专题【更新】
声明:均为原创文章,转载请注明出处!Heron相关基础概念Apache Heron基础内容介绍(待完成)本地及集群环境搭建Heron单节点环境为单机环境中的配置过程,高可用集群环境配置使用了Aurora+Mesos+Zookeeper+HDFS的真实可用的Heron流式计算环境。基础过程Ubuntu16.04 配置集群SSH无密码登录 Ubuntu16.04常用操作和命...原创 2019-11-10 11:54:03 · 821 阅读 · 0 评论 -
尝试使用IntelliJ IDEA提交Heron Topology
引入在进行Twitter流式计算系统Heron的使用过程中,希望能够在IDE中进行Topology的编写和提交,以可以比较直接的进行Topology的运行测试。因此尝试使用IntelliJ IDEA进行WordCountTopology示例拓扑的提交。如果是仅想知道这种尝试是否可行的读者,这里先进行回答:Heron的CLI是不允许这种使用编程的方式部署Topology的,支持以命令行的方式...原创 2019-11-10 11:08:09 · 211 阅读 · 0 评论 -
使用IntellJ IDEA导入heron-java-streamlet-api-example-master开源项目
heron-java-streamlet-api-example-master项目地址:https://github.com/streamlio/heron-java-streamlet-api-example 项目引入问题:https://stackoverflow.com/questions/47786601/how-to-create-a-twitter-heron-project-u...原创 2019-11-09 10:27:28 · 310 阅读 · 0 评论 -
Solved HDFS DataNode Error when submit Heron Topologies
问题描述当向部署在Aurora+Mesos+ZooKeeper+HDFS的Heron集群提交Topology时,出现如下错误信息:18/02/18 07:16:09 WARN hdfs.DFSClient: DataStreamer Exceptionorg.apache.hadoop.ipc.RemoteException(java.io.IOException): File /ho...原创 2019-11-09 10:26:50 · 147 阅读 · 0 评论 -
启动Heron集群的常用命令
关闭防火墙yitian@heron01:~$ sudo ufw disable[sudo] password for yitian:Firewall stopped and disabled on system startup查看/启动ZooKeeper运行状态Master(heron01)启动zookeeperyitian@heron01:~$ ./zookeeper/...原创 2019-11-09 10:25:04 · 234 阅读 · 0 评论 -
解决Heron Error: Job yitian/devel/WordCountTopology already exists问题
问题描述在部署Heron集群,并多次提交拓扑进程测试时,出现如下如下错误信息:yitian@heron01:~$ heron submit aurora/yitian/devel --config-path ~/.heron/conf ~/.heron/examples/heron-api-examples.jar com.twitter.heron.examples.api.WordC...原创 2019-11-09 10:24:24 · 521 阅读 · 0 评论 -
Heron集群从零加入新节点(Slave)操作
配置主机和安装相关工具准备步骤:Ubuntu16.04 配置集群SSH无密码登录 Ubuntu16.04常用操作和命令 VMware Workstation install VMware Tools安装JDK:见Heron单节点环境搭建中安装JDK部分。配置集群主机IP和SSH免密登录新加入节点IP:192.168.201.1331. 修改配置文件修改现有主机的/et...原创 2019-11-09 10:23:05 · 255 阅读 · 0 评论 -
Heron集群常用命令
Zookeeper集群查看zookeeper集群运行状态:yitian@heron01:~$ ./zookeeper/zookeeper-3.4.10/bin/zkServer.sh status查看2181端口占用情况:yitian@heron01:~$ su rootroot@heron01:/home/yitian# netstat -nltp|grep 2181t...原创 2019-11-08 10:50:09 · 457 阅读 · 0 评论 -
Heron集群搭建常见问题
Failed to get physical plan for topology ‘WordCountTopology’yitian@ubuntu:~/.heron/conf/aurora$ heron activate aurora/yitian/devel WordCountTopology[2018-02-18 08:18:37 +0000] [INFO]: Using cluste...原创 2019-11-08 10:49:52 · 689 阅读 · 0 评论 -
Aurora thermos_observer的配置与启动
Aurora Executor和Observer的安装安装:该文章是接着Aurora Scheduler and Thermos的安装和配置中内容的配置和启动。在之前的配置内容中Aurora Scheduler and Thermos的安装和配置,虽然对thermos和mesos-root选项进行了配置,但没有启动thermos_observer。因此造成,在aurora的ui中(IP:8...原创 2019-11-08 10:48:37 · 321 阅读 · 0 评论 -
Mesos集群的两种启动方式
Master命令启动集群在完成对mesos的配置后(Heron集群中编译方式安装配置Mesos集群),可以在Master主机中使用如下命令启动该集群中的所有节点(root用户下):使用root用户启动集群:root@heron01:/home/yitian# ./mesosinstall/sbin/mesos-start-cluster.shStarting mesos-maste...原创 2019-11-08 10:48:24 · 679 阅读 · 0 评论 -
成功启动集群-解决“Regular plan unhealthy!” 问题
集群前序配置 Heron集群搭建完成后拓扑提交问题及解决 解决Aurora和Mesos的启动问题Aurora Instance “THROTTLED”问题描述在之前的Heron拓扑提交之后,Aurora中的Instance状态一直如下:而且在mesos中的stderr日志文件中,有如下的错误提示:E0312 05:05:38.146308 2767 runner.py...原创 2019-11-08 10:47:58 · 458 阅读 · 0 评论 -
Heron集群搭建完成后拓扑提交问题及解决
问题描述在完成Heron集群搭建的前序步骤后,提交Heron的拓扑示例WordCountTopology,提交出现异常。提交拓扑的运行代码如下:yitian@heron01:~$ heron submit aurora/yitian/devel --config-path ~/.heron/conf ~/.heron/examples/heron-api-examples.jar com...原创 2019-11-08 10:47:43 · 353 阅读 · 0 评论 -
快速添加Heron集群Slave节点配置
配置目标在一个虚拟主机中(例如,heron06)中配置完成集群中slave的前提下,可以快速的复制slave节点,完成Heron集群的多节点部署。这里通过对heron06主机的虚拟机文件进行复制,创建新的slave节点加入到已有的集群环境中,使之可以正常使用。本文章与之间的一篇文章:Heron集群从零加入新节点(Slave)操作的区别在于,之前的文章为从零开始配置slave节点,也就是从创建新...原创 2019-11-08 10:47:20 · 280 阅读 · 0 评论 -
Heron集群运行详情
Heron ClusterMesos ClusterAurora ClusterHDFS ClusterZookeeper Standalone使用命令行,查看zookeeper的运行状态:yitian@heron04:~$ ./zookeeper/zookeeper-3....原创 2019-11-08 10:47:08 · 137 阅读 · 1 评论 -
Heron集群部署和配置更改记录
注:整体的heron集群配置过程记录见:https://blog.youkuaiyun.com/yitian_z/article/details/102961885第一次集群配置第一次heron集群配置在本地笔记本中(2018/02月,寒假期间),运行三个节点,集群配置情况如下:节点名称 IP CPU Core RAM DISK 集群组件 heron01 ...原创 2019-11-07 10:50:53 · 230 阅读 · 0 评论 -
Heron Explorer单节点使用情况
Heron Explorer简介Heron Explorer is a CLI tool that you can use to gain insight into a Heron installation, including:which clusters are currently running in the installation information about a giv...原创 2019-11-07 10:50:40 · 250 阅读 · 0 评论 -
Heron Tracker REST API单节点(Local)使用情况
Heron Tracker REST API简介JSON InterfaceAll Heron Tracker endpoints return a JSON object with the following information: status – One of the following: success, failure. executiontime – The time t...原创 2019-11-07 10:50:22 · 251 阅读 · 0 评论 -
Heron WordCountTopology默认资源配置下运行情况
系统环境配置单节点(Local)系统环境配置系统资源 heron01主机配置 ARM(GB) 5.7 CPU(core) 4 DISK(GB) 25 Aurora集群环境配置主机名 ARM(GB) CPU(CORE) DISK(GB) IP heron04 4.7 4 20 218.195.22...原创 2019-11-07 10:48:27 · 173 阅读 · 0 评论 -
Heron Topology资源需求参数调试步骤
简介为了使一个Topology能够更有效的运行,我们需要对Topology中的一些基础的默认参数进行调整。如下是一些可以调整的基础参数,但不限于这些:Container RAM Container CPU Component RAMs Component Parallelisms Number of Containers需要注意的是,对一个拓扑的调试可能需要多次迭代并有一定的困难...原创 2019-11-07 10:47:56 · 229 阅读 · 1 评论 -
Heron WordCountTopology参数调整过程
系统环境配置单节点(Local)系统环境配置系统资源 heron01主机配置 ARM(GB) 5.7 CPU(core) 4 DISK(GB) 25 Aurora集群环境配置主机名 ARM(GB) CPU(CORE) DISK(GB) IP heron04 4.7 4 20 218.195.22...原创 2019-11-07 10:48:56 · 247 阅读 · 0 评论 -
Heron WordCountTopology资源需求参数调整过程及分析
参数调整过程详情Heron WordCountTopology参数调整过程默认WordCountTopologytopology parallelism=1(保持默认) componentRam=1G(保持默认) containerRam=1G(保持默认) containerCpu=2core(保持默认)增加Topology并行度增加并行度1topolog...原创 2019-11-07 10:47:40 · 206 阅读 · 0 评论 -
Heron AckingTopology资源需求参数调整过程
Default AckingTopology管理Submit Defualt Topology:heron submit local ~/.heron/examples/heron-api-examples.jar com.twitter.heron.examples.api.AckingTopology AckingTopology --deploy-deactivatedActi...原创 2019-11-07 10:45:55 · 210 阅读 · 0 评论 -
使用Prometheus显示化监测Heron(Local) Topology运行时状态
配置prometheus metrics sink对于Promethus的使用,可以指定自定义的Metrics Sink,也可以使用heron中默认的Prometheus metrics sink。这里使用默认的Prometheus metrics sink进行设置。步骤如下:1. 在.heron/conf/local/metrics_sinks.yaml中,将prometheus_sin...原创 2019-11-07 10:45:03 · 356 阅读 · 0 评论 -
Heron UI中查看Topology Instance的PID
运行Heron UI在虚拟机中运行heron-tracker和heron-ui,使用IP地址的链接,在自己的计算机中打开Heron UI。这里出现的Heron集群中打开Heron UI缓慢的问题及解决方法见:查看Instance PID点击PID,进行查看:...原创 2019-11-07 10:44:32 · 153 阅读 · 0 评论 -
Heron Cluster Topology运行及资源参数调整
Topology管理命令Submit TopologyActivate Topologyyitian@heron04:~$ heron activate aurora/yitian/devel WordCountTopology[2018-04-07 05:15:28 +0000] [INFO]: Using cluster definition in /home/yitian/....原创 2019-11-06 12:22:01 · 271 阅读 · 0 评论 -
Heron UI页面响应迟缓及解决方法
问题描述在Heron集群(Aurora+Mesos+Zookeeper+HDFS)运行正常的情况下,在依次运行heron-tracker和heron-ui之后。heron-tracker相关的8888端口页面响应正常,但heron-ui的8889端口的页面响应异常缓慢,甚至于打不开该页面。其中,Heron-tracker和Heron-UI命令运行的部分输出如下所示:heron-tracke...原创 2019-11-06 12:16:22 · 293 阅读 · 0 评论 -
Error: Cannot run program "curl". when submit Topology in Heron(Local)
问题描述Heron环境:Local 单节点 配置文件:local默认提交topo时,出现如下错误信息:yitian@heron01:~$ heron submit local ~/.heron/examples/heron-api-examples.jar com.twitter.heron.examples.api.WordCountTopology WordCountTopolo...原创 2019-11-06 11:58:20 · 835 阅读 · 0 评论 -
Zookeeper Error: Heron Failed to set packing plan for topology ‘WordCountTopology’
问题描述https://stackoverflow.com/questions/50675906/heron-failed-to-set-packing-plan-for-topology-wordcounttopology问题解决出现问题的原因为:集群中zookeeper集群配置出现问题,只使用了standalone的方式配置了zookeeper,重新在三个节点中使用正确的zooke...原创 2019-11-06 11:57:12 · 258 阅读 · 0 评论 -
Heron Cluster add New Slave Node–Additional Content
HDFS出现问题:加入新的工作节点之后,hdfs直接使用可能会出现异常情况。解决方法:对hdfs进行重新格式化,并删除之前tmp目录下的临时文件,重新启动HDFS集群。...原创 2019-11-06 11:55:47 · 201 阅读 · 0 评论 -
解决Heron Cluster中Topology已存在异常
问题描述在提交拓扑的过程中,提交命令运行到此无法进行。原因为集群资源无法分配topology中配置的stmgr的数量。暂时只能Ctrl+C强制停止命令。但在submit命令停止后,尝试kill刚提交的topo,出现错误:尝试使用aurora job killall的命令后:问题依然存在:问题解决问题的原因,是因为虽然在aurora job被成功kill之后,...原创 2019-11-05 10:27:53 · 420 阅读 · 0 评论 -
Heron集群资源监测
CPU Load(负载)参考:集群监控主要指标(load、CPU利用率、磁盘剩余空间、磁盘IO、内存使用)CPU利用率linux系统性能监控–CPU利用率Linux下CPU利用率和CPU负载(附加代码实现)RAMThroughputComplete Latency构建start-monitor.sh和stop-monitor.sh监控脚本使...原创 2019-11-05 10:24:37 · 177 阅读 · 0 评论 -
Yahoo Streaming Benchmark for Heron
原始项目简介Github地址:https://github.com/yahoo/streaming-benchmarksAt Yahoo we have adoptedApache Stormas our stream processing platform of choice. But that was in 2012 and the landscape has changed si...原创 2019-11-04 20:23:48 · 873 阅读 · 0 评论 -
解决java.lang.ClassNotFoundException: kafka.api.OffsetRequest问题
问题描述在使用构建的AdvertisingTopology进行提交时,出现如下错误:问题解决AdvertisingTopology项目中将kafka 2.0.0降低到版本0.8.2.1,并指定kafka-client版本。(主要应该是kafka2.0.0版本的问题) <dependency> <group...原创 2019-11-04 19:50:44 · 2303 阅读 · 0 评论