我想在从本地群集运行时关闭默认提供的日志记录功能.目前它在控制台上记录了很多信息.
以下是日志示例:
261 [main] INFO backtype.storm.daemon.task - Shut down task Getting-Started-Toplogie-1-1376388324:2
2261 [main] INFO backtype.storm.daemon.task - Shutting down task Getting-Started-Toplogie-1-1376388324:1
2262 [Thread-24] INFO backtype.storm.util - Async loop interrupted!
2276 [main] INFO backtype.storm.daemon.task - Shut down task Getting-Started-Toplogie-1-1376388324:1
2278 [main] INFO backtype.storm.daemon.worker - Terminating zmq context
2279 [main] INFO backtype.storm.daemon.worker - Disconnecting from storm cluster state context
2279 [main] INFO backtype.storm.daemon.worker - Waiting for heartbeat thread to die
2279 [Thread-27] INFO backtype.storm.util - Async loop interrupted!
2308 [main] INFO backtype.storm.testing - …Run Code Online (Sandbox Code Playgroud) 我一直在努力记录当前项目的所有Storm指标的含义.
在此过程中,我从该组响应以及github收集了数据.
虽然有些指标非常自我解释,但我对一些螺栓指标感到困惑.
例如,Process Latency和Execute Latency之间有什么区别?
通过此Google论坛上的帖子,我收集了以下信息:
列表项处理延迟=调用ack时的时间戳 - 执行传递元组时的时间戳
列表项执行延迟=执行函数结束时的时间戳 - 执行传递时的时间戳元组(来源:http://goo.gl/3KRAl)
和
根据我在风暴用户界面中看到的内容,我的执行延迟几乎总是大于进程延迟.怎么会这样?任何人都可以帮我确定两种延迟的确切定义吗?
提前致谢!
我可以在多租户群集中提交拓扑作业.工作正在进行中.但是,logviewer页面不可用.有什么方法可以解决这个问题吗?
我正在研究分布式系统并参考这个老问题:stackoverflow链接
我真的无法理解完全一次,至少一次和最多一次保证之间的区别,我在Kafka,Flink和Storm以及Cassandra中也读到了这些概念.例如有人说Flink更好,因为只有一次保证,而Storm只有至少一次.
我知道,一次性模式对延迟更好,但同时对于容错更糟糕吗?如果我没有重复,如何恢复流?然后......如果这是一个真正的问题,为什么一次保证被认为比其他保证更好?
有人可以给我更好的定义吗?
在卡夫卡和风暴背景下构建多租户应用程序的最佳实践是什么?
例如:为每个租户创建主题并使用多主题spout(使用通配符).
我正在尝试建立一个docker/fig Mesos集群.我是无花果和Docker的新手.Docker有很多文档,但我发现自己很难理解如何使用fig.
这是我的fig.yaml:
zookeeper:
image: jplock/zookeeper
ports:
- "49181:2181"
mesosMaster:
image: mesosphere/mesos:0.19.1
ports:
- "15050:5050"
links:
- zookeeper:zk
command: mesos-master --zk=zk --work_dir=/var/log --quorum=1
mesosSlave:
image: mesosphere/mesos:0.19.1
links:
- zookeeper:zk
command: mesos-slave --master=zk
Run Code Online (Sandbox Code Playgroud)
谢谢 !
编辑:
感谢Mark O`Connor的帮助,我创建了一个基于docker的工作台设置(+风暴,chronos等等).
享受,如果您觉得这很有用 - 请提供:https: //github.com/yaronr/docker-mesos
PS.请+1马克的答案:)
我正在尝试编写执行以下操作的拓扑:
实际上我想对集合进行更多处理.
我在本地测试它,看起来它正在工作.但是,我不确定我是否正确设置了螺栓上的分组,以及在部署在实际风暴群上时这是否可以正常工作.如果有人可以帮助审查此拓扑并建议任何错误,更改或改进,我将不胜感激.
谢谢.
这就是我的拓扑结构.
builder.setSpout("spout", new TwitterFilterSpout("pittsburgh"));
builder.setBolt("sampleaggregate", new SampleAggregatorBolt())
.shuffleGrouping("spout");
builder.setBolt("printaggreator",new PrinterBolt()).shuffleGrouping("sampleaggregate");
Run Code Online (Sandbox Code Playgroud)
聚合螺栓
public class SampleAggregatorBolt implements IRichBolt {
protected OutputCollector collector;
protected Tuple currentTuple;
protected Logger log;
/**
* Holds the messages in the bolt till you are ready to send them out
*/
protected List<Status> statusCache;
@Override
public void prepare(Map stormConf, TopologyContext context,
OutputCollector collector) {
this.collector = collector;
log = Logger.getLogger(getClass().getName());
statusCache = new ArrayList<Status>();
}
@Override
public void execute(Tuple tuple) { …Run Code Online (Sandbox Code Playgroud) 我有简单的R脚本试图定义类.example.R
Tuple <- setClass("Tuple",
slots = c(
id="character",
comp="character",
stream="character",
task="character",
output="vector",
anchors="vector"
)
);
Run Code Online (Sandbox Code Playgroud)
当我运行Rscript example.R.我在下面说错了
eval中的错误(expr,envir,enclos):找不到函数"setClass"调用:source - > withVisible - > eval - > eval
任何人都可以帮忙吗?
这是一个让我疯狂的问题.我在本地局域网上运行一台机器Storm实例.我目前正在运行v0.9.1-incubating发布版本(来自Apache Incubator站点.问题只是我的storm supervisor进程在每次重启后都拒绝启动.修复非常简单,从storm本地目录中删除和文件夹并重新运行该过程;事情运行hunky dory然后直到下次重启.supervisorworkers
我提供了一些我认为可能与调试此问题相关的信息.如果需要,请询问更多,但只是帮我解决一下.
PS:我是否运行拓扑并不重要.
主管配置
[program:zookeeper]
command=/path/to/zookeeper/bin/zkServer.sh "start-foreground"
process_name=zookeeper
directory=/path/to/zookeeper/bin
stdout_logfile=/var/log/zookeeper.log ; stdout log path, NONE$
stderr_logfile=/var/log/err.zookeeper.log ; stderr log path, $
priority=2
user=root
[program:storm-nimbus]
command=/path/to/storm/bin/storm nimbus
user=root
autostart=true
autorestart=true
startsecs=10
startretries=2
log_stdout=true
log_stderr=true
stderr_logfile=/var/log/storm/nimbus.err.log
stdout_logfile=/var/log/storm/nimbus.out.log
logfile_maxbytes=20MB
logfile_backups=2
priority=10
[program:storm-ui]
command=/path/to/storm/bin/storm ui
user=root
autostart=true
autorestart=true
startsecs=10
startretries=2
log_stdout=true
log_stderr=true
stderr_logfile=/var/log/storm/ui.err.log
stdout_logfile=/var/log/storm/ui.out.log
logfile_maxbytes=20MB
logfile_backups=2 …Run Code Online (Sandbox Code Playgroud) 我正在寻找有关基于AWS的数据提取管道的最佳实践的一些资源,该管道使用Kafka,风暴,火花(流和批处理),使用各种微服务来读取和写入Hbase以暴露数据层.对于我的本地环境,我正在考虑创建docker或vagrant图像,这将允许我与env进行交互.我的问题就是如何为一个更接近生产的功能性端到端环境站起来的东西,这种下降方式就是拥有一个永远在线的环境,但这会变得昂贵.就perf性环境而言,似乎我可能不得不提出并拥有可以拥有"世界的运行"的服务帐户,但其他帐户将通过计算资源受到限制,因此它们不会压倒集群.
我很好奇其他人如何处理同样的问题,如果我正在考虑这个问题.
apache-storm ×10
java ×3
apache-kafka ×2
apache-flink ×1
apache-spark ×1
bigdata ×1
cassandra ×1
docker ×1
fig ×1
log-viewer ×1
log4j ×1
mesos ×1
metrics ×1
r ×1
real-time ×1
rscript ×1