Kafka Vločka Konektor: org.apache.kafka.společného.sítě.InvalidReceiveException: Neplatný přijímat

0

Otázka

Pracovník Uzlu distribuované-konektor protokolu:

[2021-11-23 09:05:22,605] WARN The configuration 'config.storage.topic' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'rest.advertised.host.name' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'status.storage.topic' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'group.id' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'rest.host.name' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'rest.advertised.port' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'plugin.path' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'config.storage.replication.factor' was supplied but isn't a known config.    (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'offset.flush.interval.ms' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'rest.port' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'key.converter.schemas.enable' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'status.storage.replication.factor' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'value.converter.schemas.enable' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'offset.storage.replication.factor' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'topic' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,606] WARN The configuration 'offset.storage.topic' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,607] WARN The configuration 'value.converter' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,607] WARN The configuration 'key.converter' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig:362)
[2021-11-23 09:05:22,607] INFO Kafka version: 2.6.0 (org.apache.kafka.common.utils.AppInfoParser:117)
[2021-11-23 09:05:22,607] INFO Kafka commitId: 62abe01bee039651 (org.apache.kafka.common.utils.AppInfoParser:118)
[2021-11-23 09:05:22,607] INFO Kafka startTimeMs: 1637658322607 (org.apache.kafka.common.utils.AppInfoParser:119)
[2021-11-23 09:05:22,991] INFO Kafka cluster ID: zojXCfzxQum_fc3mC6WN_A (org.apache.kafka.connect.util.ConnectUtils:65)
[2021-11-23 09:05:23,008] INFO Logging initialized @10836ms to org.eclipse.jetty.util.log.Slf4jLog (org.eclipse.jetty.util.log:169)
[2021-11-23 09:05:23,076] INFO Added connector for http://**masternodename**:8083 (org.apache.kafka.connect.runtime.rest.RestServer:132)
[2021-11-23 09:05:23,076] INFO Initializing REST server (org.apache.kafka.connect.runtime.rest.RestServer:204)
[2021-11-23 09:05:23,083] INFO jetty-9.4.24.v20191120; built: 2019-11-20T21:37:49.771Z; git: 363d5f2df3a8a28de40604320230664b9c793c16; jvm 1.8.0_192-BellSoft-b12 (org.eclipse.jetty.server.Server:359)
[2021-11-23 09:05:23,120] ERROR Stopping due to error (org.apache.kafka.connect.cli.ConnectDistributed:84)
org.apache.kafka.connect.errors.ConnectException: Unable to initialize REST server
    at   org.apache.kafka.connect.runtime.rest.RestServer.initializeServer(RestServer.java:216)
    at   org.apache.kafka.connect.cli.ConnectDistributed.startConnect(ConnectDistributed.java:99)
    at org.apache.kafka.connect.cli.ConnectDistributed.main(ConnectDistributed.java:78)
    Caused by: java.io.IOException: Failed to bind to MasterServerName/MasterIP:8083
    at   org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:346)
    at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:307)
    at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
        at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:231)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
        at org.eclipse.jetty.server.Server.doStart(Server.java:385)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
        at org.apache.kafka.connect.runtime.rest.RestServer.initializeServer(RestServer.java:214)
    ... 2 more
      Caused by: java.net.BindException: Cannot assign requested address
        at sun.nio.ch.Net.bind0(Native Method)
        at sun.nio.ch.Net.bind(Net.java:433)
        at sun.nio.ch.Net.bind(Net.java:425)
        at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
        at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:342)
    ... 9 more

Hlavní Uzel: Server.log:

[2021-11-23 09:23:04,041] WARN [SocketServer brokerId=0] Unexpected error from    /**workernode-ip**; closing connection (org.apache.kafka.common.network.Selector)
org.apache.kafka.common.network.InvalidReceiveException: Invalid receive (size = -720899)
        at   org.apache.kafka.common.network.NetworkReceive.readFrom(NetworkReceive.java:103)
        at org.apache.kafka.common.network.KafkaChannel.receive(KafkaChannel.java:447)
        at org.apache.kafka.common.network.KafkaChannel.read(KafkaChannel.java:397)
        at org.apache.kafka.common.network.Selector.attemptRead(Selector.java:678)
        at org.apache.kafka.common.network.Selector.pollSelectionKeys(Selector.java:580)
        at org.apache.kafka.common.network.Selector.poll(Selector.java:485)
        at kafka.network.Processor.poll(SocketServer.scala:913)
        at kafka.network.Processor.run(SocketServer.scala:816)
        at java.lang.Thread.run(Thread.java:748)
    [2021-11-23 09:30:35,461] INFO [GroupMetadataManager brokerId=0] Removed 0 expired offsets in 0 milliseconds. (kafka.coordinator.group.GroupMetadataManager)
1

Nejlepší odpověď

0

A BindException znamená, že máte nějaké sítě vlastnosti chybně, nebo tam je už něco běží na konfliktní porty. Například - bootstrap.servers=...localhost:9092... a rest.advertised.port=9092 by naznačují, že máte Kafka broker již běží na portu 9092 a snaží se Kafka Připojení spusťte HTTP server na stejném portu, který nebude fungovat.

Pokud jde o další problémy, které mohu vidět

  1. server.properties > listeners by měla být vždy 0.0.0.0 pro host/ip, ne stroj hostname, pokud chcete externí klienty, aby ten stroj.

  2. Pokud je to možné, neběhejte Kafka Připojit na makléři, takže localhost:9092 by nikdy neměla být přidány do bootstrap.servers z connect-distriubuted.properties

  3. connect-distributed.properties > rest.advertised.port neměl by být 9092, protože je není makléř. Výchozí 8083 je v pořádku...

  4. Měli byste začít s jedním makléřem a Připojte jeden pracovník na samostatných hostitelů. Pokud nemáte přístup k více fyzických strojů, pomocí Docker-Compose, spíše než VMs by bylo nejjednodušší.

Mám podezření, že tyto poslední dva jsou vaše chyba, protože Připojit se snaží využít Kafka TCP protokol o sobě, takže "Neplatný přijímat" se týká bytů v požadavek/odpověď. Pak správně nastavit Kafka clusteru a klienty, pak listeners by neměla být jen hostname, místní počítač z procesu; to je to, co advertised.listeners na makléři jsou pro

2021-11-23 16:47:52

vytvořil distribuované služby se pracovník uzel, neexistuje žádný správný návod. Kde jaké by měly být parametry pro cluster na základě implementace pro 1 Server a 2 uzly. Jak serveru.vlastnosti, distribuované-konektor.vlastnosti, ošetřovatel.vlastnosti musí být nakonfigurován tak by měla být v generic. Včetně osvědčených postupů. Prosím průvodce.Jako porty, ip adresy, názvy serverů, opravdu zmatený.
Austin Jackson

Tam je průvodce. Dokumentace uvádí, že group.id a bootstrap.servers A 3 vnitřní témata jsou pět vlastnosti, které musí být stejné pro vytvoření Připojení clusteru. - kromě běžných nastavení je uvedeno výše, jsou důležité nastavit před spuštěním clusteru - kafka.apache.org/documentation/#connect
OneCricketeer

4. bod, jak to může být dosaženo na AWS EC2 Stroje? K bodu 3: bootstrap.servery=localhost:9092 je uvedena pro samostatný, co clusteru mistr a pracovník uzlin. Pro 2. bod, musíme mít všechny IPs místo localhost přímo?
Austin Jackson

Celkově, já bych navrhnout pomocí Ansible (github.com/confluentinc/cp-ansible) nebo Kubernetes (přes Strimzi) nastavení clusteru
OneCricketeer

Já bych doporučil ne pomocí EC2 a spíše pomocí MSK-li cílem je jen dostat to funguje
OneCricketeer

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................