Реестр схемы не запускается сразу после перезапуска (контролируемое отключение) моего кластера kafka (v3.3.0), работающего на ВМ - SSL включен. Но если я попытаюсь перезагрузить компьютер через некоторое время (по крайней мере, через 2 часа после перезапуска кластера kafka), реестр системы запустится нормально. Ошибка в журналах: невозможно подписаться на тему Kafka _schemas, поддерживающую это хранилище данных. Тема может не существовать.
Я подозревал, что кластер не синхронизирован полностью, но я описал тему, которая дает ожидаемый результат. пожалуйста, найдите ниже
./bin/kafka-topics --describe --zookeeper localhost:2181 --topic _schemas
Topic:_schemas PartitionCount:1 ReplicationFactor:3 Configs:cleanup.policy=compact
Topic: _schemas Partition: 0 Leader: 2 Replicas: 2,3,1 Isr: 3,2,1
Кроме того, я проверил состояние кластера - все 3 узла в кластере синхронизированы. пожалуйста, найдите ниже
./bin/zookeeper-shell localhost:2181 <<< "ls /brokers/ids"
Connecting to localhost:2181
Welcome to ZooKeeper!
JLine support is disabled
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
[1, 2, 3]
[2019-07-08 09: 07: 14,132] DEBUG Карта разделов для / brokers / themes / _schemas is Map (0 -> Список (2, 3, 1)) (kafka.utils.ZkUtils)
[2019-07-08 09: 07: 25,292] Сервер ERROR неожиданно умер: (io.confluent.kafka.schemaregistry.rest.SchemaRegistryMain)
java.lang.IllegalArgumentException: невозможно подписаться на тему Kafka _схемы, поддерживающие это хранилище данных. Тема может не существовать.
в io.confluent.kafka.schemaregistry.storage.KafkaStoreReaderThread. (KafkaStoreReaderThread.java:130)
в io.confluent.kafka.schemaregistry.storage.KafkaStore.init (KafkaStore.java:172)
на io.confluent.kafka.schemaregistry.storage.KafkaSchemaRegistry.init (KafkaSchemaRegistry.java:212)
в io.confluent.kafka.schemaregistry.rest.SchemaRegistryRestApplication.setupResources (SchemaRegistryRestApplication.java:56)
в io.confluent.kafka.schemaregistry.rest.SchemaRegistryRestApplication.setupResources (SchemaRegistryRestApplication.java:38)
на io.confluent.rest.Application.createServer (Application.java:157)
Моя схема- registry.properties:
listeners=https://XXXXXXXXXXXX:8081
kafkastore.connection.url=XXXX:2181,YYYY:2181,ZZZZ:2181
kafkastore.topic=_schemas
debug=true
kafkastore.timeout.ms=180000
kafkastore.ssl.key.password=changeit
kafkastore.ssl.keystore.location=/apps/KEYSTORE.jks
kafkastore.ssl.keystore.password=XXXX
kafkastore.ssl.truststore.location=/apps/TrustStore.jks
kafkastore.ssl.truststore.password=XXX
kafkastore.security.protocol=SSL
kafkastore.ssl.endpoint.identification.algorithm=HTTPS
ssl.keystore.location=/apps/KEYSTORE.jks
ssl.keystore.password=XXXXX
ssl.key.password=XXXXX
ssl.truststore.location=/apps/rustStore.jks
ssl.truststore.password=XXXXX
ssl.endpoint.identification.algorithm=HTTPS
zookeeper.set.acl=false
Мой server.properties
ssl.client.auth=required
ssl.keystore.location=/apps/KEYSTORE.jks
ssl.keystore.password=XXXXX
ssl.key.password=XXXXX
ssl.truststore.location=/apps/TrustStore.jks
ssl.truststore.password=XXXXX
security.inter.broker.protocol=SSL
ssl.keystore.type=JKS
ssl.truststore.type=JKS
ssl.enabled.protocols=TLSv1.2,TLSv1.1,TLSv1
ssl.endpoint.identification.algorithm=HTTPS
zookeeper.set.acl=false