Configuration OptionsΒΆ
kafkastore.connection.urlZookeeper url for the Kafka cluster
- Type: string
- Default: “”
- Importance: high
listenersComma-separated list of listeners that listen for API requests over either HTTP or HTTPS. If a listener uses HTTPS, the appropriate SSL configuration parameters need to be set as well.
Schema Registry identities are stored in ZooKeeper and are made up of a hostname and port. If multiple listeners are configured, the first listener’s port is used for its identity.
- Type: list
- Default: “http://0.0.0.0:8081“
- Importance: high
avro.compatibility.levelThe Avro compatibility type. Valid values are: none (new schema can be any valid Avro schema), backward (new schema can read data produced by latest registered schema), backward_transitive (new schema can read data produced by all previously registered schemas), forward (latest registered schema can read data produced by the new schema), forward_transitive (all previously registered schemas can read data produced by the new schema), full (new schema is backward and forward compatible with latest registered schema), transitive_full (new schema is backward and forward compatible with all previously registered schemas)
- Type: string
- Default: “backward”
- Importance: high
host.nameThe host name advertised in Zookeeper. Make sure to set this if running SchemaRegistry with multiple nodes.
- Type: string
- Default: “192.168.50.1”
- Importance: high
kafkastore.ssl.key.passwordThe password of the key contained in the keystore.
- Type: string
- Default: “”
- Importance: high
kafkastore.ssl.keystore.locationThe location of the SSL keystore file.
- Type: string
- Default: “”
- Importance: high
kafkastore.ssl.keystore.passwordThe password to access the keystore.
- Type: string
- Default: “”
- Importance: high
kafkastore.ssl.truststore.locationThe location of the SSL trust store file.
- Type: string
- Default: “”
- Importance: high
kafkastore.ssl.truststore.passwordThe password to access the trust store.
- Type: string
- Default: “”
- Importance: high
kafkastore.topicThe durable single partition topic that actsas the durable log for the data
- Type: string
- Default: “_schemas”
- Importance: high
kafkastore.topic.replication.factorThe desired replication factor of the schema topic. The actual replication factor will be the smaller of this value and the number of live Kafka brokers.
- Type: int
- Default: 3
- Importance: high
response.mediatype.defaultThe default response media type that should be used if no specify types are requested in an Accept header.
- Type: string
- Default: “application/vnd.schemaregistry.v1+json”
- Importance: high
ssl.keystore.locationUsed for HTTPS. Location of the keystore file to use for SSL. IMPORTANT: Jetty requires that the key’s CN, stored in the keystore, must match the FQDN.
- Type: string
- Default: “”
- Importance: high
ssl.keystore.passwordUsed for HTTPS. The store password for the keystore file.
- Type: password
- Default: “”
- Importance: high
ssl.key.passwordUsed for HTTPS. The password of the private key in the keystore file.
- Type: password
- Default: “”
- Importance: high
ssl.truststore.locationUsed for HTTPS. Location of the trust store. Required only to authenticate HTTPS clients.
- Type: string
- Default: “”
- Importance: high
ssl.truststore.passwordUsed for HTTPS. The store password for the trust store file.
- Type: password
- Default: “”
- Importance: high
response.mediatype.preferredAn ordered list of the server’s preferred media types used for responses, from most preferred to least.
- Type: list
- Default: [application/vnd.schemaregistry.v1+json, application/vnd.schemaregistry+json, application/json]
- Importance: high
zookeeper.set.aclWhether or not to set an ACL in ZooKeeper when znodes are created and ZooKeeper SASL authentication is configured. IMPORTANT: if set to true, the ZooKeeper SASL principal must be the same as the Kafka brokers.
- Type: boolean
- Default: false
- Importance: high
kafkastore.init.timeout.msThe timeout for initialization of the Kafka store, including creation of the Kafka topic that stores schema data.
- Type: int
- Default: 60000
- Importance: medium
kafkastore.security.protocolThe security protocol to use when connecting with Kafka, the underlying persistent storage. Values can be PLAINTEXT or SSL.
- Type: string
- Default: “PLAINTEXT”
- Importance: medium
kafkastore.ssl.enabled.protocolsProtocols enabled for SSL connections.
- Type: string
- Default: “TLSv1.2,TLSv1.1,TLSv1”
- Importance: medium
kafkastore.ssl.keystore.typeThe file format of the keystore.
- Type: string
- Default: “JKS”
- Importance: medium
kafkastore.ssl.protocolThe SSL protocol used.
- Type: string
- Default: “TLS”
- Importance: medium
kafkastore.ssl.providerThe name of the security provider used for SSL.
- Type: string
- Default: “”
- Importance: medium
kafkastore.ssl.truststore.typeThe file format of the trust store.
- Type: string
- Default: “JKS”
- Importance: medium
kafkastore.timeout.msThe timeout for an operation on the Kafka store
- Type: int
- Default: 500
- Importance: medium
master.eligibilityIf true, this node can participate in master election. In a multi-colo setup, turn this off for clusters in the slave data center.
- Type: boolean
- Default: true
- Importance: medium
kafkastore.sasl.kerberos.service.nameThe Kerberos principal name that the Kafka client runs as. This can be defined either in the JAAS config file or here.
- Type: string
- Default: “”
- Importance: medium
kafkastore.sasl.mechanismThe SASL mechanism used for Kafka connections. GSSAPI is the default.
- Type: string
- Default: “GSSAPI”
- Importance: medium
access.control.allow.methodsSet value to Jetty Access-Control-Allow-Origin header for specified methods
- Type: string
- Default: “”
- Importance: low
ssl.keystore.typeUsed for HTTPS. The type of keystore file.
- Type: string
- Default: “JKS”
- Importance: medium
ssl.truststore.typeUsed for HTTPS. The type of trust store file.
- Type: string
- Default: “JKS”
- Importance: medium
ssl.protocolUsed for HTTPS. The SSL protocol used to generate the SslContextFactory.
- Type: string
- Default: “TLS”
- Importance: medium
ssl.providerUsed for HTTPS. The SSL security provider name. Leave blank to use Jetty’s default.
- Type: string
- Default: “” (Jetty’s default)
- Importance: medium
ssl.client.authUsed for HTTPS. Whether or not to require the HTTPS client to authenticate via the server’s trust store.
- Type: boolean
- Default: false
- Importance: medium
ssl.enabled.protocolsUsed for HTTPS. The list of protocols enabled for SSL connections. Comma-separated list. Leave blank to use Jetty’s defaults.
- Type: list
- Default: “” (Jetty’s default)
- Importance: medium
kafkastore.bootstrap.serversA list of Kafka brokers to connect to. For example, PLAINTEXT://hostname:9092,SSL://hostname2:9092
If this configuration is not specified, the Schema Registry’s internal Kafka clients will get their Kafka bootstrap server list from ZooKeeper (configured with kafkastore.connection.url). Note that if kafkastore.bootstrap.servers is configured, kafkastore.connection.url still needs to be configured, too.
This configuration is particularly important when Kafka security is enabled, because Kafka may expose multiple endpoints that all will be stored in ZooKeeper, but the Schema Registry may need to be configured with just one of those endpoints.
- Type: list
- Default: “” (when left blank, bootstrap servers are fetched from ZooKeeper)
- Importance: medium
access.control.allow.originSet value for Jetty Access-Control-Allow-Origin header
- Type: string
- Default: “”
- Importance: low
debugBoolean indicating whether extra debugging information is generated in some error response entities.
- Type: boolean
- Default: false
- Importance: low
kafkastore.ssl.cipher.suitesA list of cipher suites used for SSL.
- Type: string
- Default: “”
- Importance: low
kafkastore.ssl.endpoint.identification.algorithmThe endpoint identification algorithm to validate the server hostname using the server certificate.
- Type: string
- Default: “”
- Importance: low
kafkastore.ssl.keymanager.algorithmThe algorithm used by key manager factory for SSL connections.
- Type: string
- Default: “SunX509”
- Importance: low
kafkastore.ssl.trustmanager.algorithmThe algorithm used by the trust manager factory for SSL connections.
- Type: string
- Default: “PKIX”
- Importance: low
kafkastore.zk.session.timeout.msZookeeper session timeout
- Type: int
- Default: 30000
- Importance: low
metric.reportersA list of classes to use as metrics reporters. Implementing the <code>MetricReporter</code> interface allows plugging in classes that will be notified of new metric creation. The JmxReporter is always included to register JMX statistics.
- Type: list
- Default: []
- Importance: low
metrics.jmx.prefixPrefix to apply to metric names for the default JMX reporter.
- Type: string
- Default: “kafka.schema.registry”
- Importance: low
metrics.num.samplesThe number of samples maintained to compute metrics.
- Type: int
- Default: 2
- Importance: low
metrics.sample.window.msThe metrics system maintains a configurable number of samples over a fixed window size. This configuration controls the size of the window. For example we might maintain two samples each measured over a 30 second period. When a window expires we erase and overwrite the oldest window.
- Type: long
- Default: 30000
- Importance: low
portDEPRECATED: port to listen on for new connections. Use listeners instead.
- Type: int
- Default: 8081
- Importance: low
request.logger.nameName of the SLF4J logger to write the NCSA Common Log Format request log.
- Type: string
- Default: “io.confluent.rest-utils.requests”
- Importance: low
schema.registry.zk.namespaceThe string that is used as the zookeeper namespace for storing schema registry metadata. SchemaRegistry instances which are part of the same schema registry service should have the same ZooKeeper namespace.
- Type: string
- Default: “schema_registry”
- Importance: low
shutdown.graceful.msAmount of time to wait after a shutdown request for outstanding requests to complete.
- Type: int
- Default: 1000
- Importance: low
ssl.keymanager.algorithmUsed for HTTPS. The algorithm used by the key manager factory for SSL connections. Leave blank to use Jetty’s default.
- Type: string
- Default: “” (Jetty’s default)
- Importance: low
ssl.trustmanager.algorithmUsed for HTTPS. The algorithm used by the trust manager factory for SSL connections. Leave blank to use Jetty’s default.
- Type: string
- Default: “” (Jetty’s default)
- Importance: low
ssl.cipher.suitesUsed for HTTPS. A list of SSL cipher suites. Comma-separated list. Leave blank to use Jetty’s defaults.
- Type: list
- Default: “” (Jetty’s default)
- Importance: low
ssl.endpoint.identification.algorithmUsed for HTTPS. The endpoint identification algorithm to validate the server hostname using the server certificate. Leave blank to use Jetty’s default.
- Type: string
- Default: “” (Jetty’s default)
- Importance: low
kafkastore.sasl.kerberos.kinit.cmdThe Kerberos kinit command path.
- Type: string
- Default: “/usr/bin/kinit”
- Importance: low
kafkastore.sasl.kerberos.min.time.before.reloginThe login time between refresh attempts.
- Type: long
- Default: 60000
- Importance: low
kafkastore.sasl.kerberos.ticket.renew.jitterThe percentage of random jitter added to the renewal time.
- Type: double
- Default: 0.05
- Importance: low
kafkastore.sasl.kerberos.ticket.renew.window.factorLogin thread will sleep until the specified window factor of time from last refresh to ticket’s expiry has been reached, at which time it will try to renew the ticket.
- Type: double
- Default: 0.8
- Importance: low