Как найти версию kafka в linux

107

Как найти версию kafka в Linux? есть ли способ найти установленную версию kafka, кроме упоминания версии при ее загрузке?

кумар
источник
возможно с командой kafka-
themes

Ответы:

100

Не уверен, есть ли удобный способ, но вы можете просто проверить свою kafka/libsпапку. Вы должны увидеть такие файлы, как kafka_2.10-0.8.2-beta.jar, где 2.10версия Scala и версия 0.8.2-betaKafka.

Сережа
источник
47

На kafka --versionданный момент ничего подобного нет . Поэтому вам следует либо проверить версию из своей kafka/libs/папки, либо запустить

find ./libs/ -name \*kafka_\* | head -1 | grep -o '\kafka[^\n]*'

из папки kafka (и он сделает то же самое для вас). Он вернет вам что-то вроде того, kafka_2.9.2-0.8.1.1.jar.ascгде 0.8.1.1находится ваша версия кафки.

Сальвадор Дали
источник
6
Тупой вопрос: а где обычно находится "папка кафка"?
jwfearn
2
очевидный ответ:/usr/local/kafka
jwfearn 09
18
реалистичный ответ: зависит от вашей платформы и того, как вы ее установили
Ханс Йесперсен
2
Если установлено через yum на centos, то -find /usr/share/java/kafka -name \*kafka_\* | head -1 | grep -o '\kafka[^\n]*'
jimy
find / -name \*kafka_\* | head -1 | grep -o '\kafka[^\n]*'
Тинкаал Гогои,
46

В Kafka 2.0 есть исправление ( KIP-278 ):

kafka-topics.sh --version

Используя конфлюентную утилиту:

Проверить версию Kakfa можно с помощью confluentутилиты, которая по умолчанию поставляется с платформой Confluent ( confluentутилита также может быть добавлена ​​в кластер отдельно - кредиты cricket_007 ).

${confluent.home}/bin/confluent version kafka

Проверка версии других компонентов платформы Confluent, таких как ksql schema-registry и подключение

[confluent-4.1.0]$ ./bin/confluent version kafka
1.1.0-cp1

[confluent-4.1.0]$ ./bin/confluent version connect
4.1.0

[confluent-4.1.0]$ ./bin/confluent version schema-registry
4.1.0

[confluent-4.1.0]$ ./bin/confluent version ksql-server
4.1.0
Mrsrinivas
источник
2
Это все еще неверно, извините (и это работает и для Kafka 2.0+ (confluent 5.x +). У вас есть удаленно работающий кластер Kafka с любой версией , confluent versionэто вам не
поможет
32

Есть несколько способов найти версию кафки

Метод 1 простой: -

ps -ef|grep kafka

он отобразит все запущенные клиенты kafka в консоли ... Пример: - /usr/hdp/current/kafka-broker/bin/../libs/kafka-clients- 0.10.0.2.5.3.0-37 .jar мы используют 0.10.0.2.5.3.0-37 версию кафки

Способ 2: - перейти к

cd /usr/hdp/current/kafka-broker/libs
ll |grep kafka

Пример: - kafka_2.10- 0.10.0.2.5.3.0-37 .jar kafka - clients- 0.10.0.2.5.3.0-37 .jar

Тот же результат, что и в методе 1, мы можем найти версию kafka, использующуюся в библиотеках kafka.

484
источник
21

Вы можете просмотреть журналы, чтобы узнать версию. Допустим, под kafka установлена /usr/local/kafka, тогда:

$ grep "Kafka version" /usr/local/kafka/logs/*

/usr/local/kafka/logs/kafkaServer.out: INFO Kafka version : 0.9.0.1 (org.apache.kafka.common.utils.AppInfoParser)

раскроет версию

толиций
источник
4
При использовании Docker:docker logs kafka | egrep -i "kafka\W+version"
z0r
6

Простой способ на macOS, например, установка через homebrew

$ ls -l $(which kafka-topics)
/usr/local/bin/kafka-topics -> ../Cellar/kafka/0.11.0.1/bin/kafka-topics
Хартмут
источник
4

перейдите в папку kafka / libs, мы видим, что несколько jar-файлов ищут что-то похожее на kafka_2.11-0.10.1.1.jar.asc, в этом случае версия kafka - 0.10.1.1

MD5
источник
3

Вы можете использовать для Debian / Ubuntu:

dpkg -l|grep kafka

Ожидаемый результат должен быть таким:

ii  confluent-kafka-2.11                   0.11.0.1-1                                 all          publish-subscribe messaging rethought as a distributed commit log
ii  confluent-kafka-connect-elasticsearch  3.3.1-1                                    all          Kafka Connect connector for copying data between Kafka and Elasticsearch
ii  confluent-kafka-connect-hdfs           3.3.1-1                                    all          Kafka Connect connector for copying data between Kafka and Hadoop HDFS
ii  confluent-kafka-connect-jdbc           3.3.1-1                                    all          Kafka Connect connector for JDBC-compatible databases
ii  confluent-kafka-connect-replicator     3.3.1-1                                    all          Kafka Connect connector for replicating topics between Kafka clusters
ii  confluent-kafka-connect-s3             3.3.1-1                                    all          Kafka Connect S3 connector for copying data between Kafka and
ii  confluent-kafka-connect-storage-common 3.3.1-1                                    all          Kafka Connect Storage Common contains packages used by storage
ii  confluent-kafka-rest                   3.3.1-1                                    all          A REST proxy for Kafka
Калин Борисов
источник
3

Я нашел простой способ сделать это без поиска в каталогах или файлах журналов:

kafka-dump-log --version

Результат выглядит так:

5.3.0-ccs (Фиксация: 6481debc2be778ee)

TBowman
источник
0

Когда вы устанавливаете Kafka в Centos7 с конфлюэнтом:

yum install confluent-platform-oss-2.11

Вы можете увидеть версию Kafka с помощью:

yum deplist confluent-platform-oss-2.11

Вы можете прочитать: confluent-kafka-2.11> = 0.10.2.1

Карима Рафес
источник
0

Чтобы найти версию Kafka, мы можем использовать jpsкоманду, которая показывает все процессы Java, запущенные на машине.

Шаг 1. Допустим, вы запускаете Kafka от имени пользователя root, поэтому войдите в систему с правами root и используйте jps -m. Он покажет результат как

4979 Jps -m
9434 Kafka config/server.properties

Шаг 2: Из приведенного выше результата вы можете взять PID для приложения Kafka и использовать, pwdx 9434который сообщает текущий каталог процесса. результат будет как

9434: /apps/kafka_2.12-2.4.0

здесь вы можете увидеть версию Kafka, которая составляет 2.12-2.4.0

Следующая большая вещь
источник
0

Чтобы проверить версию кафки:

cd /usr/hdp/current/kafka-broker/libs
ls kafka_*.jar
Шива Гарг
источник
0

Если вы хотите проверить версию определенного брокера Kafka, запустите этот интерфейс командной строки на брокере *

kafka-broker-api-versions.sh --bootstrap-server localhost:9092 --version

где localhost:9092доступен <hostname|IP Address>:<port>этот API, который будет проверять ( localhostможет использоваться, если это тот же хост, на котором вы запускаете эту команду). Пример вывода:

2.4.0 (Commit:77a89fcf8d7fa018)

* Apache Kafka поставляется с множеством консольных инструментов в ./binподкаталоге вашей загрузки Kafka; например~/kafka/bin/

Рикардо
источник
-1

Вы также можете ввести

cat /build.info

Это даст вам такой результат

BUILD_BRANCH=master
BUILD_COMMIT=434160726dacc4a1a592fe6036891d6e646a3a4a
BUILD_TIME=2017-05-12T16:02:04Z
DOCKER_REPO=index.docker.io/landoop/fast-data-dev
KAFKA_VERSION=0.10.2.1
CP_VERSION=3.2.1
Анкит Махешвари
источник
В вашем ответе не упоминается, где находится этот файл build.info.
Newbee
Кажется, это очень характерно для образа Docker Landoop с быстрыми данными, @Newbee /build.infoнаходится в корне контейнера
OneCricketeer