Apache Kafka
Sonda SSH: loguje się na hosta brokera i odczytuje wersję z własnego pliku
kafka_<scala>-<version>.jar brokera. Gdy port zostanie pominięty,
domyślnie używany jest 22, bez schematu — ten sam mechanizm SSH,
poświadczenia i weryfikacja klucza hosta co w rodzinie
identyfikacji systemów operacyjnych przez SSH.
Jako alias akceptowany jest product: apache-kafka.
targets: - id: kafka-01 product: kafka address: kafka-01.example.com credentials: linux-host-sshDlaczego SSH
Dział zatytułowany „Dlaczego SSH”Jedyna anonimowa wymiana protokołu Kafka, ApiVersions, wymienia zakresy
wersji API, ale żadnej wersji oprogramowania. JMX ją zawiera
(kafka.server:type=app-info), ale JMX to Java RMI na serializacji Javy —
stos protokołów JVM, którego enodia nie implementuje od nowa dla jednego
ciągu znaków — a port jest wyłączony, dopóki operator go nie włączy. Przez
SSH wersję podaje nazwa pliku jar brokera.
Jak znajdowana jest wersja
Dział zatytułowany „Jak znajdowana jest wersja”Każda dystrybucja dostarcza kafka_<scala>-<version>.jar w swoim
katalogu bibliotek — obraz Apache /opt/kafka/libs/kafka_2.13-4.3.1.jar,
cp-kafka od Confluent /usr/share/java/kafka/kafka_2.13-8.3.2-ccs.jar.
Sonda szuka go w $KAFKA_HOME, /opt/kafka, /opt/bitnami/kafka,
/usr/local/kafka i /usr/share/java/kafka, a zapisywana jest nazwa
pliku jar. kafka-topics.sh --version (lub kafka-topics --version)
z PATH — uruchomienie JVM, kilka sekund — jest rozwiązaniem zapasowym
dla instalacji w innym miejscu.
Kafka w kontenerze
Dział zatytułowany „Kafka w kontenerze”Gdy Kafka działa w Dockerze lub Podmanie, a sam host nie ma instalacji,
należy podać nazwę kontenera w options — polecenie jest wtedy
uruchamiane przez docker exec (lub podman exec):
targets: - id: kafka-01 product: kafka address: kafka-01.example.com credentials: linux-host-ssh options: container: kafka # nazwa kontenera container_runtime: podman # opcjonalne: docker (domyślnie) lub podmanUżytkownik SSH musi mieć uprawnienia do korzystania z tego środowiska uruchomieniowego. Nazwa kontenera jest sprawdzana względem własnego wzorca nazw Dockera, zanim trafi do zdalnego polecenia.
Confluent Platform
Dział zatytułowany „Confluent Platform”Kompilacje Confluent Platform (8.3.2-ccs, -ce) są numerowane według
własnej linii Confluent: od 7.0 CP x.y zawiera Apache Kafka (x-4).y
(7.6 → 3.6, 8.3 → 4.3; przed 7.0 to nie obowiązywało — 6.0 to było 2.6),
ale numery poprawek są własne Confluent. Taka kompilacja jest zgłaszana
bez zmian, z edycją confluent, a dla 7.0 i nowszych linia Apache Kafka,
którą zawiera, trafia do extra.apacheKafka. Numer poprawki nie jest
mapowany — oznaczałoby to wymyślanie wersji.
Uwierzytelnianie — wymagane
Dział zatytułowany „Uwierzytelnianie — wymagane”Poświadczenie SSH, ssh-key lub password — zobacz
Konfiguracja → Poświadczenia.
Rejestrowane pola
Dział zatytułowany „Rejestrowane pola”version— np.4.3.1, z/opt/kafka/libs/kafka_2.13-4.3.1.jar;8.3.2-ccsdla kompilacji Confluentedition—confluentdla kompilacji-ccs/-ce, w przeciwnym razie nieobecneextra.apacheKafka— major.minor Apache Kafka zawartej w kompilacji Confluent 7.0+, np.4.3extra.container— nazwa kontenera, gdy ustawionooptions.containerextra.hostKeyVerified
Korelacja CVE
Dział zatytułowany „Korelacja CVE”Dopasowywany do NVD i BDU FSTEC, gdy skonfigurowano blok cve:.
Kompilacja Confluent Platform nie jest sprawdzana: jej własna numeracja
wypadałaby w porównaniu jako nowsza od każdej granicy Apache Kafka, a
zawarte w niej wydanie Apache jest znane tylko do poziomu major.minor —
za mało dla poprawki na poziomie numeru patch.
Resolver cyklu życia
Dział zatytułowany „Resolver cyklu życia”endoflife:apache-kafka. endoflife.date nie ma kalendarza dla Confluent
Platform.