大数据学习
bigdata learning
Toggle navigation
大数据学习
主页
openGauss数据库
Flume
MongoDB
Hadoop
数据库实验
Kafka
Zookeeper
Hbase
Manual
Spark
Neo4j
InfluxDB
RabbitMQ
Flink
About Me
归档
标签
04-Kafka多代理配置
Kafka
2022-12-05 23:06:00
20
0
0
bigdata
Kafka
# 单节点多代理配置 在进入多个代理集群设置之前,首先启动 ZooKeeper 服务器。 **创建多个`Kafka Brokers`** 在配置`/ server.properties` 中已有一个 `Kafka` 代理实例。 现在我们需要多个代理实例,因此将现有的 `server.properties` 文件复制到两个新的配置文件中,并将其重命名为 `server-one.properties` 和 `server-two.properties`。 然后编辑这两个新文件并分配以下更改 ## config/server-one.properties ```bash # The id of the broker. This must be set to a unique integer for each broker. broker.id=1 # The port the socket server listens on port=9093 # A comma seperated list of directories under which to store log files log.dirs=/tmp/kafka-logs-1 ``` ## `config/server-two.properties` ```bash # The id of the broker. This must be set to a unique integer for each broker. broker.id=2 # The port the socket server listens on port=9094 # A comma seperated list of directories under which to store log files log.dirs=/tmp/kafka-logs-2 ``` **启动多个代理** - 在3台服务器上进行所有更改后,打开三个新终端,逐个启动每个代理。 ```bash Broker1 bin/kafka-server-start.sh config/server.properties Broker2 bin/kafka-server-start.sh config/server-one.properties Broker3 bin/kafka-server-start.sh config/server-two.properties ``` 可通过在 ZooKeeper 终端上键入 **`jps`** 检查所有守护程序,然后您将看到响应。 # 创建主题 将主题复制因子值指定为三个,因为有三个不同的代理运行。 如果有两个代理,那么分配的副本值将是两个。 **语法** ```bash bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 -partitions 1 --topic topic-name ``` **示例** ```bash bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 -partitions 1 --topic Multibrokerapplication ``` **输出** ```bash created topic “Multibrokerapplication" ``` Describe 命令用于检查哪个代理正在侦听当前创建的主题,如下所示 - ```bash bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic Multibrokerappli-cation ``` **输出** ```bash bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic Multibrokerappli-cation Topic:Multibrokerapplication PartitionCount:1 ReplicationFactor:3 Configs: Topic:Multibrokerapplication Partition:0 Leader:0 Replicas:0,2,1 Isr:0,2,1 ``` 从上面的输出,我们可以得出结论,第一行给出所有分区的摘要,显示主题名称,分区数量和我们已经选择的复制因子。 在第二行中,每个节点将是分区的随机选择部分的领导者。 在我们的例子中,我们看到我们的第一个 `broker(with broker.id 0)`是领导者。 然后 `Replicas:0,2,1` 意味着所有代理复制主题最后 `Isr` 是 `in-sync` 副本的集合。 那么,这是副本的子集,当前活着并被领导者赶上。 ## 启动生产者以发送消息 此过程保持与单代理设置中相同。 **示例** ```bash bin/kafka-console-producer.sh --broker-list localhost:9092 --topic Multibrokerapplication ``` **输出** ```bash bin/kafka-console-producer.sh --broker-list localhost:9092 --topic Multibrokerapplication [2022-01-20 19:27:21,045] WARN Property topic is not valid (kafka.utils.Verifia-bleProperties) This is single node-multi broker demo This is the second message ``` ## 启动消费者以接收消息 此过程保持与单代理设置中所示的相同。 **示例** ```bash bin/kafka-console-consumer.sh --zookeeper localhost:2181 —topic Multibrokerapplica-tion --from-beginning ``` **输出** ```bash bin/kafka-console-consumer.sh --zookeeper localhost:2181 —topic Multibrokerapplica-tion —from-beginning This is single node-multi broker demo This is the second message ```
上一篇:
04-InfluxDB查询数据
下一篇:
04-MongoDB连接及基本命令
文档导航