天天看點

kafka擴容

需求:

對全kafka叢集中的topic  :imp-imps-app-web增加partition和replicate

1.kafka 擴容

首先按照搭建步驟,在其他機器上搭建叢集,kafka的配置檔案中 zkconnect 要保持與原kafka一緻

2.驗證kafka新節點是否加入叢集成功,這個應該去zookeeper的zkCli.sh 去檢視

[zk: localhost:2181(CONNECTED) 3] ls /kafka/brokers/ids

[27, 28, 29]

3.建立了一個topic

[root@zk-kafka001 bin]# ./kafka-topics.sh --create --zookeeper 10.0.150.27:2181/kafka --replication-factor 1 --partitions 1 --topic imp-imps-app-web

2.列出所有topic

./kafka-topics.sh --list --zookeeper 10.0.150.27:2181/kafka

3.修改了partiton數量

./kafka-topics.sh --zookeeper 10.0.150.27:2181/kafka --alter --topic imp-imps-app-web --partitions 3 

4.檢視一個topic的所有詳細資訊

bin/kafka-topics.sh --describe --zookeeper 10.0.150.27:2181/kafka --topic mmm

Topic:eee PartitionCount:3 ReplicationFactor:1 Configs:

Topic: eee Partition: 0 Leader: 37 Replicas: 37 Isr: 37

Topic: eee Partition: 1 Leader: 37 Replicas: 37 Isr: 37

Topic: eee Partition: 2 Leader: 38 Replicas: 38 Isr: 38

5. 

在目前目錄建立一個json檔案

reassignment-node.json

vim imp-imps-app-web.json

加入内容:

{

    "partitions": [

        {

            "topic": "imp-imps-app-web",

            "partition": 0,

            "replicas": [

                27,

                28,

                29

            ]

        },

            "partition": 1,

        }

    ]

}

6.修改replicas

./kafka-reassign-partitions.sh --zookeeper 10.0.150.27:2181/kafka --reassignment-json-file imp-imps-app-web.json  --execute 

7.驗證

./kafka-topics.sh --describe --zookeeper 10.0.150.34:2181/kafka --topic imp-imps-app-web

Topic:imp-imps-app-web PartitionCount:3 ReplicationFactor:2 Configs:

Topic: imp-imps-app-web Partition: 0 Leader: 34 Replicas: 34,35 Isr: 34,35

Topic: imp-imps-app-web Partition: 1 Leader: 34 Replicas: 34,35,36 Isr: 36,34,35

Topic: imp-imps-app-web Partition: 2 Leader: 38 Replicas: 38 Isr: 38

檢視kafka版本

kafka檢視版本需要檢視libs下面jar包的名稱。。。。

/app/zpy/kafka/libs

本文轉自 周新宇1991 51CTO部落格,原文連結:http://blog.51cto.com/zhouxinyu1991/1876616,如需轉載請自行聯系原作者