Archives of Support Questions (Read Only)

This is an archived board for historical reference. Information and links may no longer be available or relevant
Announcements
This board is archived and read-only for historical reference. To ask a new question, please post a new topic on the appropriate active board.

Kafka Best Practices + KAFKA_JVM_PERFORMANCE_OPTS

avatar

dear friends and colleges

we set the KAFKA_JVM_PERFORMANCE_OPTS on all ours kafka physical machines , according to the following Link:

https://community.hortonworks.com/articles/80813/kafka-best-practices-1.html

we set in ambari - Advanced kafka-env the following:

 export KAFKA_JVM_PERFORMANCE_OPTS="-XX:MetaspaceSize=96m -XX:+UseG1GC-XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M-XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80"

after we set that variable we restart the kafka broker to take affect

but kafka broker fails after this settings , please advice what is wrong on the settings from the article - https://community.hortonworks.com/articles/80813/kafka-best-practices-1.html

from the logs we can see that:

from kafka.err

more kafka.err
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Unrecognized VM option 'UseG1GC-XX:MaxGCPauseMillis=20'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Unrecognized VM option 'UseG1GC-XX:MaxGCPauseMillis=20'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Unrecognized VM option 'UseG1GC-XX:MaxGCPauseMillis=20'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Unrecognized VM option 'UseG1GC-XX:MaxGCPauseMillis=20'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

from server.log

[2018-05-31 09:03:19,334] INFO starting (kafka.server.KafkaServer)
[2018-05-31 09:03:19,350] INFO [ThrottledRequestReaper-Fetch], Starting  (kafka.server.ClientQuotaManager$ThrottledRequestReaper)
[2018-05-31 09:03:19,351] INFO [ThrottledRequestReaper-Produce], Starting  (kafka.server.ClientQuotaManager$ThrottledRequestReaper)
[2018-05-31 09:03:19,358] INFO Connecting to zookeeper on master01.sys674.com:2181,master02.sys674.com:2181,master03.sys674.com:2181 (kafka.server.KafkaServer)
[2018-05-31 09:03:19,639] INFO Cluster ID = 7BUsZLW1RJa54GJ0CDCtcg (kafka.server.KafkaServer)
[2018-05-31 09:03:19,682] INFO Loading logs. (kafka.log.LogManager)
[2018-05-31 09:03:19,690] INFO Logs loading complete in 8 ms. (kafka.log.LogManager)
[2018-05-31 09:03:19,848] INFO Starting log cleanup with a period of 300000 ms. (kafka.log.LogManager)
[2018-05-31 09:03:19,850] INFO Starting log flusher with a default period of 9223372036854775807 ms. (kafka.log.LogManager)
[2018-05-31 09:03:19,855] WARN No meta.properties file under dir /var/kafka/kafka-logs/meta.properties (kafka.server.BrokerMetadataCheckpoint)
[2018-05-31 09:03:19,913] INFO Awaiting socket connections on kafka01.sys674.com:6667. (kafka.network.Acceptor)
[2018-05-31 09:03:19,917] INFO [Socket Server on Broker 1003], Started 1 acceptor threads (kafka.network.SocketServer)
[2018-05-31 09:03:19,943] INFO [ExpirationReaper-1003], Starting  (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:03:19,944] INFO [ExpirationReaper-1003], Starting  (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:03:19,991] INFO [ExpirationReaper-1003], Starting  (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:03:19,994] INFO [ExpirationReaper-1003], Starting  (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:03:19,995] INFO [ExpirationReaper-1003], Starting  (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:03:20,077] INFO [GroupCoordinator 1003]: Starting up. (kafka.coordinator.GroupCoordinator)
[2018-05-31 09:03:20,081] INFO [GroupCoordinator 1003]: Startup complete. (kafka.coordinator.GroupCoordinator)
[2018-05-31 09:03:20,082] INFO [Group Metadata Manager on Broker 1003]: Removed 0 expired offsets in 1 milliseconds. (kafka.coordinator.GroupMetadataManager)
[2018-05-31 09:03:20,118] INFO Will not load MX4J, mx4j-tools.jar is not in the classpath (kafka.utils.Mx4jLoader$)
[2018-05-31 09:03:20,172] INFO Creating /brokers/ids/1003 (is it secure? false) (kafka.utils.ZKCheckedEphemeral)
[2018-05-31 09:03:20,187] INFO Result of znode creation is: OK (kafka.utils.ZKCheckedEphemeral)
[2018-05-31 09:03:20,189] INFO Registered broker 1003 at path /brokers/ids/1003 with addresses: PLAINTEXT -> EndPoint(kafka01.sys674.com,6667,PLAINTEXT) (kafka.utils.ZkUtils)
[2018-05-31 09:03:20,190] WARN No meta.properties file under dir /var/kafka/kafka-logs/meta.properties (kafka.server.BrokerMetadataCheckpoint)
[2018-05-31 09:03:20,273] INFO [Kafka Server 1003], started (kafka.server.KafkaServer)
[2018-05-31 09:13:20,078] INFO [Group Metadata Manager on Broker 1003]: Removed 0 expired offsets in 0 milliseconds. (kafka.coordinator.GroupMetadataManager)
[2018-05-31 09:23:20,078] INFO [Group Metadata Manager on Broker 1003]: Removed 0 expired offsets in 0 milliseconds. (kafka.coordinator.GroupMetadataManager)
[2018-05-31 09:33:20,078] INFO [Group Metadata Manager on Broker 1003]: Removed 0 expired offsets in 0 milliseconds. (kafka.coordinator.GroupMetadataManager)
[2018-05-31 09:43:20,078] INFO [Group Metadata Manager on Broker 1003]: Removed 0 expired offsets in 0 milliseconds. (kafka.coordinator.GroupMetadataManager)
[2018-05-31 09:46:25,337] INFO [Kafka Server 1003], shutting down (kafka.server.KafkaServer)
[2018-05-31 09:46:25,339] INFO [Kafka Server 1003], Starting controlled shutdown (kafka.server.KafkaServer)
[2018-05-31 09:46:25,393] INFO [Kafka Server 1003], Controlled shutdown succeeded (kafka.server.KafkaServer)
[2018-05-31 09:46:25,396] INFO [Socket Server on Broker 1003], Shutting down (kafka.network.SocketServer)
[2018-05-31 09:46:25,406] INFO [Socket Server on Broker 1003], Shutdown completed (kafka.network.SocketServer)
[2018-05-31 09:46:25,407] INFO [Kafka Request Handler on Broker 1003], shutting down (kafka.server.KafkaRequestHandlerPool)
[2018-05-31 09:46:25,413] INFO [Kafka Request Handler on Broker 1003], shut down completely (kafka.server.KafkaRequestHandlerPool)
[2018-05-31 09:46:25,420] INFO [ThrottledRequestReaper-Fetch], Shutting down (kafka.server.ClientQuotaManager$ThrottledRequestReaper)
[2018-05-31 09:46:25,595] INFO [ThrottledRequestReaper-Fetch], Stopped  (kafka.server.ClientQuotaManager$ThrottledRequestReaper)
[2018-05-31 09:46:25,595] INFO [ThrottledRequestReaper-Fetch], Shutdown completed (kafka.server.ClientQuotaManager$ThrottledRequestReaper)
[2018-05-31 09:46:25,595] INFO [ThrottledRequestReaper-Produce], Shutting down (kafka.server.ClientQuotaManager$ThrottledRequestReaper)
[2018-05-31 09:46:25,621] INFO [ThrottledRequestReaper-Produce], Stopped  (kafka.server.ClientQuotaManager$ThrottledRequestReaper)
[2018-05-31 09:46:25,621] INFO [ThrottledRequestReaper-Produce], Shutdown completed (kafka.server.ClientQuotaManager$ThrottledRequestReaper)
[2018-05-31 09:46:25,622] INFO [KafkaApi-1003] Shutdown complete. (kafka.server.KafkaApis)
[2018-05-31 09:46:25,624] INFO [Replica Manager on Broker 1003]: Shutting down (kafka.server.ReplicaManager)
[2018-05-31 09:46:25,624] INFO [ReplicaFetcherManager on broker 1003] shutting down (kafka.server.ReplicaFetcherManager)
[2018-05-31 09:46:25,626] INFO [ReplicaFetcherManager on broker 1003] shutdown completed (kafka.server.ReplicaFetcherManager)
[2018-05-31 09:46:25,626] INFO [ExpirationReaper-1003], Shutting down (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:25,671] INFO [ExpirationReaper-1003], Stopped  (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:25,671] INFO [ExpirationReaper-1003], Shutdown completed (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:25,671] INFO [ExpirationReaper-1003], Shutting down (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:25,832] INFO [ExpirationReaper-1003], Stopped  (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:25,832] INFO [ExpirationReaper-1003], Shutdown completed (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:25,835] INFO [Replica Manager on Broker 1003]: Shut down completely (kafka.server.ReplicaManager)
[2018-05-31 09:46:25,835] INFO [ExpirationReaper-1003], Shutting down (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:25,873] INFO [ExpirationReaper-1003], Stopped  (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:25,873] INFO [ExpirationReaper-1003], Shutdown completed (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:25,874] INFO [GroupCoordinator 1003]: Shutting down. (kafka.coordinator.GroupCoordinator)
[2018-05-31 09:46:25,874] INFO [ExpirationReaper-1003], Shutting down (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:26,067] INFO [ExpirationReaper-1003], Stopped  (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:26,067] INFO [ExpirationReaper-1003], Shutdown completed (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:26,067] INFO [ExpirationReaper-1003], Shutting down (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:26,125] INFO [ExpirationReaper-1003], Stopped  (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:26,125] INFO [ExpirationReaper-1003], Shutdown completed (kafka.server.DelayedOperationPurgatory$ExpiredOperationReaper)
[2018-05-31 09:46:26,126] INFO [GroupCoordinator 1003]: Shutdown complete. (kafka.coordinator.GroupCoordinator)
[2018-05-31 09:46:26,127] INFO Shutting down. (kafka.log.LogManager)
[2018-05-31 09:46:26,138] INFO Shutdown complete. (kafka.log.LogManager)
[2018-05-31 09:46:26,151] INFO [Kafka Server 1003], shut down completed (kafka.server.KafkaServer)
<br>
Michael-Bronson
1 ACCEPTED SOLUTION

avatar
Master Mentor

@Michael Bronson

Between two JVM parameters you need to give a space.

There are no space between the following parametyers:

1.

-XX:+UseG1GC-XX:MaxGCPauseMillis=20

2.

-XX:G1HeapRegionSize=16M-XX:MinMetaspaceFreeRatio=50

.

Correct option should be:

export KAFKA_JVM_PERFORMANCE_OPTS="-XX:MetaspaceSize=96m -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M -XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80"

.

View solution in original post

5 REPLIES 5

avatar
Master Mentor

@Michael Bronson

Between two JVM parameters you need to give a space.

There are no space between the following parametyers:

1.

-XX:+UseG1GC-XX:MaxGCPauseMillis=20

2.

-XX:G1HeapRegionSize=16M-XX:MinMetaspaceFreeRatio=50

.

Correct option should be:

export KAFKA_JVM_PERFORMANCE_OPTS="-XX:MetaspaceSize=96m -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M -XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80"

.

avatar

@Jay I think its better to fix the syntax as described in the article also , other users can faced the same problem

Michael-Bronson

avatar
Master Mentor

@Michael Bronson

Thank you for your feedback. I have fixed the article typo in the referrenced article..

avatar

@Jay thank you so much , now all users can enjoy the tight syntax

Michael-Bronson

avatar

@jay can you help me please , from some unclear reason I get "This post is currently awaiting moderation. If you believe this to be in error, contact a system administrator." on new question , what we can do to resolve this ?

Michael-Bronson