我试图了解ZooKeeper,它是如何工作的以及它的作用.有没有可与ZooKeeper相媲美的应用程序?
如果你知道,那么你如何向外行描述ZooKeeper?
我已经尝试过apache wiki,zookeeper sourceforge ......但我仍然无法与之相关.
我只是通过http://zookeeper.sourceforge.net/index.sf.shtml阅读,所以不是有更多这样的服务吗?它只是复制服务器服务这么简单吗?
我最近一直在看Zookeeper,并想知道当前是否有人使用它以及它们是专门用于存储的.
最常见的用例是配置信息,但是您存储的数据类型和数据量是多少?
我一般在过去使用数据库序列实现序列号生成.
例如,使用Postgres SERIAL类型http://www.neilconway.org/docs/sequences/
我很好奇,因为如何为没有数据库的大型分布式系统生成序列号.对于多个客户端,是否有任何经验或建议以线程安全的方式生成序列号生成的最佳实践?
在Kafka中,我想只使用单个代理,单个主题和一个具有一个生产者和多个消费者的分区(每个消费者从代理获得自己的数据副本).鉴于此,我不希望使用Zookeeper的开销; 我不能只使用经纪人吗?为什么动物园管理员必须?
partitioning producer-consumer broker apache-kafka apache-zookeeper
有没有办法在每次运行之前删除主题中的所有数据或删除主题?
我可以修改KafkaConfig.scala文件来更改logRetentionHours属性吗?一旦消费者阅读消息,是否有消息被删除的方式?
我正在使用生产者从某个地方获取数据并将数据发送到消费者消费的特定主题,我可以在每次运行时删除该主题中的所有数据吗?我只想在主题中每次都有新数据.有没有办法以某种方式重新初始化该主题?
ZooKeeper是一种高度可用的数据中心协调服务.它起源于Hadoop项目.可以在其上实现锁定,故障转移,领导者选举,组成员资格和其他协调问题.ZooKeeper还有其他选择吗?(当然是自由软件)
locking high-availability cluster-computing heartbeat apache-zookeeper
我按照他们的网站安装了稳定版的kafka(0.8.1和2.9.2 Scala),并使用3节点zookeeper集合(3.4.6)运行它.我尝试创建一个测试主题,但一直看到没有为该主题的分区分配任何领导者:
[kafka_2.9.2-0.8.1]$ ./bin/kafka-topics.sh --zookeeper <zookeeper_ensemble> --describe --topic test-1
Topic:test-1 PartitionCount:1 ReplicationFactor:3 Configs:
Topic: test-1 Partition: 0 **Leader: none** Replicas: 0,1,2 **Isr:**
Run Code Online (Sandbox Code Playgroud)
我试图使用控制台生成器写入主题,但遇到了LeaderNotAvailableException异常:
[kafka_2.9.2-0.8.1]$ ./kafka-console-producer.sh --broker-list <broker_list> --topic test-1
hello world
[2014-04-22 11:58:48,297] WARN Error while fetching metadata [{TopicMetadata for topic test-1 ->
No partition metadata for topic test-1 due to kafka.common.LeaderNotAvailableException}] for topic [test-1]: class kafka.common.LeaderNotAvailableException (kafka.producer.BrokerPartitionInfo)
[2014-04-22 11:58:48,321] WARN Error while fetching metadata [{TopicMetadata for topic test-1 ->
No partition metadata for topic test-1 due to kafka.common.LeaderNotAvailableException}] for …Run Code Online (Sandbox Code Playgroud) 我正在探索设置kafka的几个选项,我知道Zookeeper必须启动并运行才能启动kafka.
我想知道如何找到以下内容.
1)我的zookeeper实例的主机名和端口---我检查了zoo.cfg,我只能找到ClientPort而不是主机名,hostname是我的盒子的主机名吗?
2)检查ZooKeeper是否正常运行---我试图做一个ps -ef | grep "zoo"我找不到的东西.可能是我用错了关键词来搜索?
任何帮助将非常感激?
我面对的一个问题是,当我有一个命令反过来产生另一个进程时,supervisord无法杀死它.
例如,我有一个java进程,当正常运行时就像
$ zkServer.sh start-foreground
$ ps -eaf | grep zk
user 30404 28280 0 09:21 pts/2 00:00:00 bash zkServer.sh start-foreground
user 30413 30404 76 09:21 pts/2 00:00:10 java -Dzookeeper.something..something
Run Code Online (Sandbox Code Playgroud)
supervisord配置文件如下所示:
[program:zookeeper]
command=zkServer.sh start-foreground
autorestart=true
stopsignal=KILL
Run Code Online (Sandbox Code Playgroud)
当涉及到阻止它们时,这些具有多个孩子的过程在监督下不能很好地处理supervisorctl.因此,当我从supervisord运行它并尝试从supervisorctl停止它时,只有顶级进程被杀死但不是实际的java进程.
我正在使用没有zookeeper的kafka 0.10.我想获得kafka主题列表.由于我们没有使用zookeeper,因此该命令无效:
.如果没有zookeeper,我如何获得相同的输出?bin/kafka-topics.sh --list --zookeeper localhost:2181
apache-zookeeper ×10
apache-kafka ×5
java ×2
bash ×1
broker ×1
config ×1
distributed ×1
hadoop ×1
heartbeat ×1
locking ×1
partitioning ×1
ps ×1
sequences ×1
supervisord ×1
ubuntu-11.04 ×1