Kafka - 如何知道它是 broker 属性 还是 topic 属性 还是 producer 属性

Kafka - how to know whether it is broker property or topic property or producer property

我正在浏览文档,但很多时候,它要么不清楚,要么需要多次查看才能确定一个特定的 属性 属于哪个,它是否是一个特定的 属性实体等..

举个例子,考虑"min.insync.replicas" - 这只是一个例子。在 apache 文档中,它在 https://kafka.apache.org/documentation/#brokerconfigs . From the confluent documentation it is mentioned under https://docs.confluent.io/current/installation/configuration/topic-configs.html 下提到。后来才知道,这个 属性 在两者下都是可用的,并且根据配置的地方继承。这需要查看多个地方以了解更多关于此 属性 以查看它属于哪里等 ..

但是,没有关于每个 属性 属于哪里,是否会被继承等的文档

我认为这个答案不需要像查看源代码那样复杂,它应该足够简单 - 也许我可能遗漏了什么。

内置的 kafka-configs 工具将在控制台中根据适当的 entity-type.

列出配置

But, is not there a documentation about where each property belongs, and will it be inherited or not etc.

在默认列下您可以看到默认值。例如,segment.bytes (segment.bytes) 属性 在主题下有一个名为 Server default property

的列
Server Default Property:    log.segment.bytes

compression.type (compression.type) 主题配置默认为 producer

$ bin/kafka-configs
...

--add-config <String>                  Key Value pairs of configs to add.     
                                         Square brackets can be used to group 
                                         values which contain commas: 'k1=v1, 
                                         k2=[v1,v2,v2],k3=v3'. The following  
                                         is a list of valid configurations:   
                                         For entity-type 'topics':            
                                        cleanup.policy                        
                                        compression.type                      
                                        confluent.tier.enable                 
                                        confluent.tier.local.hotset.bytes     
                                        confluent.tier.local.hotset.ms        
                                        delete.retention.ms                   
                                        file.delete.delay.ms                  
                                        flush.messages                        
                                        flush.ms                              
                                        follower.replication.throttled.       
                                         replicas                             
                                        index.interval.bytes                  
                                        leader.replication.throttled.replicas 
                                        max.compaction.lag.ms                 
                                        max.message.bytes                     
                                        message.downconversion.enable         
                                        message.format.version                
                                        message.timestamp.difference.max.ms   
                                        message.timestamp.type                
                                        min.cleanable.dirty.ratio             
                                        min.compaction.lag.ms                 
                                        min.insync.replicas                   
                                        preallocate                           
                                        retention.bytes                       
                                        retention.ms                          
                                        segment.bytes                         
                                        segment.index.bytes                   
                                        segment.jitter.ms                     
                                        segment.ms                            
                                        unclean.leader.election.enable        
                                       For entity-type 'brokers':             
                                        log.message.timestamp.type            
                                        ssl.client.auth                       
                                        log.retention.ms                      
                                        sasl.login.refresh.window.jitter      
                                        sasl.kerberos.ticket.renew.window.    
                                         factor                               
                                        log.preallocate                       
                                        log.index.size.max.bytes              
                                        sasl.login.refresh.window.factor      
                                        ssl.truststore.type                   
                                        ssl.keymanager.algorithm              
                                        log.cleaner.io.buffer.load.factor     
                                        sasl.login.refresh.min.period.seconds 
                                        ssl.key.password                      
                                        background.threads                    
                                        log.retention.bytes                   
                                        ssl.trustmanager.algorithm            
                                        log.segment.bytes                     
                                        max.connections.per.ip.overrides      
                                        log.cleaner.delete.retention.ms       
                                        log.segment.delete.delay.ms           
                                        min.insync.replicas                   
                                        ssl.keystore.location                 
                                        ssl.cipher.suites                     
                                        log.roll.jitter.ms                    
                                        log.cleaner.backoff.ms                
                                        sasl.jaas.config                      
                                        principal.builder.class               
                                        log.flush.interval.ms                 
                                        confluent.tier.enable                 
                                        log.cleaner.max.compaction.lag.ms     
                                        max.connections                       
                                        log.cleaner.dedupe.buffer.size        
                                        log.flush.interval.messages           
                                        advertised.listeners                  
                                        num.io.threads                        
                                        listener.security.protocol.map        
                                        log.message.downconversion.enable     
                                        sasl.enabled.mechanisms               
                                        sasl.login.refresh.buffer.seconds     
                                        ssl.truststore.password               
                                        listeners                             
                                        metric.reporters                      
                                        ssl.protocol                          
                                        sasl.kerberos.ticket.renew.jitter     
                                        ssl.keystore.password                 
                                        sasl.mechanism.inter.broker.protocol  
                                        log.cleanup.policy                    
                                        sasl.kerberos.principal.to.local.rules
                                        sasl.kerberos.min.time.before.relogin 
                                        num.recovery.threads.per.data.dir     
                                        log.cleaner.io.max.bytes.per.second   
                                        log.roll.ms                           
                                        confluent.tier.local.hotset.ms        
                                        ssl.endpoint.identification.algorithm 
                                        unclean.leader.election.enable        
                                        message.max.bytes                     
                                        log.cleaner.threads                   
                                        log.cleaner.io.buffer.size            
                                        max.connections.per.ip                
                                        sasl.kerberos.service.name            
                                        ssl.provider                          
                                        follower.replication.throttled.rate   
                                        log.index.interval.bytes              
                                        log.cleaner.min.compaction.lag.ms     
                                        log.message.timestamp.difference.max. 
                                         ms                                   
                                        ssl.enabled.protocols                 
                                        confluent.tier.local.hotset.bytes     
                                        log.cleaner.min.cleanable.ratio       
                                        replica.alter.log.dirs.io.max.bytes.  
                                         per.second                           
                                        ssl.keystore.type                     
                                        ssl.secure.random.implementation      
                                        ssl.truststore.location               
                                        sasl.kerberos.kinit.cmd               
                                        leader.replication.throttled.rate     
                                        num.network.threads                   
                                        compression.type                      
                                        num.replica.fetchers                  
                                       For entity-type 'users':               
                                        request_percentage                    
                                        producer_byte_rate                    
                                        SCRAM-SHA-256                         
                                        SCRAM-SHA-512                         
                                        consumer_byte_rate                    
                                       For entity-type 'clients':             
                                        request_percentage                    
                                        producer_byte_rate                    
                                        consumer_byte_rate                    
                                       Entity types 'users' and 'clients' may 
                                         be specified together to update      
                                         config for clients of a specific     
                                         user.