kafka connect jdbc源outofmemoryerror

vd2z7a6w  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(462)

我正在使用合流jdbc源连接器运行以下作业:

{
    "name": "jobName",
    "config": {
        "connector.class": "io.confluent.connect.jdbc.JdbcSourceConnector",
        "mode": "timestamp",
        "timestamp.column.name": "dateColumn",
        "topic.prefix": "connect-test.",
        "connection.password": "pw",
        "tasks.max": "1",
        "connection.user": "un",
        "poll.interval.ms": "300000",
        "name": "jobName",
        "connection.url": "jdbc:sqlserver://serverName;Database=dbName;user=un;password=pw",
        "table.whitelist": "tableName"
    }
}

我有一个类似的kafka connect作业在同一个db和同一个用户上成功运行,但是使用了另一个较小的表。所以连接不是问题。
在运行作业的kafka connect服务器的日志中,我看到以下内容:

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "KafkaBasedLog Work Thread - connect-configs"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "kafka-coordinator-heartbeat-thread | connect-cluster"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "kafka-producer-network-thread | producer-1"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "KafkaBasedLog Work Thread - connect-offsets"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "kafka-producer-network-thread | producer-3"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "pool-4-thread-1"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "kafka-producer-network-thread | producer-2"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "KafkaBasedLog Work Thread - connect-status"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "DistributedHerder"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "pool-1-thread-5"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "org.eclipse.jetty.server.session.HashSessionManager@2c243a24Timer"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "qtp1434297727-21"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "qtp1434297727-26"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "qtp1434297727-27"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "kafka-producer-network-thread | producer-14"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "kafka-producer-network-thread | producer-15"

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "pool-1-thread-4"

所以,没什么好谈的。运行此作业的服务器现在没有响应,并且没有响应rest调用。有什么想法吗?

bsxbgnwa

bsxbgnwa1#

你需要
通过ssh或其他方式登录到每个connect worker
强行停止Kafka连接进程 export KAFKA_HEAP_OPTS 比运行kafka connect的每台服务器上的默认值都大。例如 KAFKA_HEAP_OPTS="-Xms512M -Xmx4G" . 假设是linux,那么最好的地方就是一个bashrc文件 kafka 用户。
connect-distributed 同样作为导出变量的用户
另外,您可能还需要导出更多的值,以便能够公开jmx。这样,您就可以在进程崩溃之前监视它

相关问题