2016-10-20 16 views
15

Tôi đang viết một kịch bản lệnh shell để giám sát các nhà môi giới kafka. Tôi đã đi qua một số liên kết và thấy rằng nếu ZooKeeper chứa một danh sách các nhà môi giới, và nếu, trong danh sách này, địa chỉ IP là hiện tại, sau đó một nhà môi giới kafka đang chạy.Lệnh để lấy danh sách môi giới kafka từ người quản lý vườn thú

Tôi muốn lệnh mà tôi có thể sử dụng trong tập lệnh shell để lấy danh sách người môi giới và kiểm tra xem kafka có đang chạy hay không.

Có bất kỳ lệnh curl nào để nhận trạng thái cụm kafka như elasticsearch không?

+1

Tôi biết rằng bên trong kịch bản shellkeper trong thư mục bin của Kafka bạn có thể gọi 'ls/brokers/ids' để lấy id của các công ty môi giới hiện đang còn sống. Tôi không biết làm thế nào để vượt qua đó như là một tham số cho kịch bản mặc dù ... – jimijazz

Trả lời

25

Lệnh này sẽ cung cấp cho bạn danh sách các nhà môi giới hoạt động trong ngoặc đơn:

./zookeeper-shell.sh localhost:2181 <<< "ls /brokers/ids" 
+0

Cảm ơn bạn đã trả lời của bạn. Tôi nhận được lỗi sau khi tôi chạy lệnh 'Kết nối tới xx.xx.xx.xxx:2181 Chào mừng bạn đến với ZooKeeper! hỗ trợ JLine bị vô hiệu hóa WATCHER :: WatchedEvent nhà nước: SyncConnected loại: Không đường: null [0, 1, 3] ' –

+1

@ShivkumarMallesappa, có nghĩa là bạn đang môi giới còn sống là những người có id 0, 1 và 3. – jimijazz

+0

Thưa bạn có thể lấy ips của người môi giới, bằng cách nào khác tôi có thể kiểm tra xem nhà môi giới nào còn sống và không phải là người môi giới. Cảm ơn bạn –

22

cách luân phiên sử dụng ZK-Chủ đầu tư:

Nếu bạn không thích để vượt qua đối số cho ./zookeeper-shell.sh và muốn để xem chi tiết người môi giới từ Sở thú CLI, bạn cần phải cài đặt Zookeeper độc lập (Theo Kafka truyền thống không đi kèm với Jline JAR).

Khi bạn cài đặt (giải nén) các Zookeeper độc lập, sau đó:

  • Chạy Zookeeper CLI:
    $ zookeeper/bin/zkCli.sh -server localhost:2181#Make sure your Broker is already running

  • Nếu thành công, bạn sẽ nhìn thấy khách hàng ZK chạy như :

WATCHER::

WatchedEvent state:SyncConnected type:None path:null 
[zk: localhost:2181(CONNECTED) 0] 
  • Từ đây bạn có thể khám phá các chi tiết môi giới sử dụng các lệnh khác nhau:

$ ls /brokers/ids# Gives the list of active brokers
$ ls /brokers/topics#Gives the list of topics
$ get /brokers/ids/0#Gives more detailed information of the broker id '0'

+0

cách kích hoạt các lệnh này (ls/brokers/ids) bằng cách sử dụng tập lệnh bash? –

0

Để sử dụng Zookeeper lệnh với kịch bản shell thử

zookeeper/bin/zkCli.sh -server localhost: 2181 < < < "ls/brokers/ids" | tail -n 1. Dòng cuối cùng thường có các chi tiết phản hồi

Các vấn đề liên quan