KafkaRaftManager¶
KafkaRaftManager
is a RaftManager.
KafkaRaftManager
is created and immediately started when SharedServer
is started.
Creating Instance¶
KafkaRaftManager
takes the following to be created:
- MetaProperties
- KafkaConfig
-
RecordSerde[T]
- Partition 0 of __cluster_metadata
- Topic ID (UUID)
-
Time
- Metrics
- Thread Name Prefix (optional)
- Controller Quorum Voters (
CompletableFuture[util.Map[Integer, AddressSpec]]
) -
FaultHandler
KafkaRaftManager
is created when:
KafkaServer
is requested to start up (with zookeeper.metadata.migration.enable enabled)SharedServer
is requested to start
__cluster_metadata-0 Partition¶
KafkaRaftManager
is given a TopicPartition
when created:
__cluster_metadata
as the name of the cluster metadata topic- Partition
0
Metadata Log Directory¶
KafkaRaftManager
creates a data directory when created.
createDataDir¶
createDataDir(): File
createDataDir
creates the name of the log directory of the TopicPartition.
createDataDir
creates the directory in the metadataLogDir.
Starting Up¶
startup(): Unit
Procedure
startup
is a procedure (returns Unit
) so what happens inside stays inside (paraphrasing the former advertising slogan of Las Vegas, Nevada).
startup
...FIXME
startup
is used when:
KafkaServer
is requested to startupSharedServer
is requested to startMetadataShell
is requested to initializeWithRaftManager (upon run)