Kafka cez proxy: bootstrap funguje, pripojenia k brokerom zlyhávajú
Vysvetľuje, prečo úspešné bootstrap pripojenie Kafky nezaručuje dostupnosť cez proxy ku každému objavenému brokerovi.
Bootstrap pripojenie môže uspieť, zatiaľ čo klient Kafky stále nemôže produkovať ani konzumovať. Bootstrap servery pomáhajú klientovi objaviť klaster; nemusia to byť jediné koncové body, s ktorými sa spojí.
Metadáta brokera obsahujú adresy používané pre neskoršie pripojenia. Ak sú tieto názvy alebo porty nedostupné cez zamýšľanú proxy trasu, prvé úspešné pripojenie nevyrieši zvyšok úlohy.
Prečítajte si inzerované koncové body
Porovnajte bootstrap adresu s adresami brokerov, ktoré klient skutočne dostáva. Verejný bootstrap alias môže viesť k súkromným inzerovaným názvom a presmerovanie jedného lokálneho portu automaticky neprepíše každú adresu v metadátach.
Určite aj proxy cestu, ktorú podporuje implementácia klienta. Systémová vlastnosť SOCKS v Jave nie je zárukou, že NIO transport knižnice používa proxy mechanizmus JDK Socket. Overte skutočného klienta Kafky a sieťovú integráciu, namiesto toho, aby ste predpokladali, že každý Java socket rešpektuje rovnaké nastavenie.
Klient, ktorý pozná proxy, potrebuje povolenú trasu k príslušným koncovým bodom brokerov. Sieťové usporiadanie potrebuje zodpovedajúcu dostupnosť a preklad názvov. To sú rôzne riešenia a ani jedno nevznikne iba uvedením proxy ako bootstrap servera.
Nastavenia bezpečnostného protokolu a autentizácie udržiavajte oddelene. Proxy môže vytvoriť TCP cestu, zatiaľ čo identita TLS, autentizácia SASL alebo autorizácia brokera stále zlyhávajú.
Pri diagnostike si všimnite, ktorý koncový bod zlyhal a či pochádza zo statickej konfigurácie alebo z vrátených metadát. Toto rozlíšenie zúži problém oveľa viac ako opakované menenie koncového bodu, ktorý už bol dostupný.