Gergely Harmadás created KAFKA-19988:
----------------------------------------
Summary: KRaft migration doc should account for ZK cluster id with
a leading dash
Key: KAFKA-19988
URL: https://issues.apache.org/jira/browse/KAFKA-19988
Project: Kafka
Issue Type: Bug
Components: docs, documentation, kraft, migration
Affects Versions: 3.9.1
Reporter: Gergely Harmadás
Assignee: Gergely Harmadás
When preparing for the migration, there is a small chance that the retrieved
cluster id from ZooKeeper contains a leading dash. Currently the 3.9
documentation specifies the following during the step "Provisioning the KRaft
controller quorum":
{code:bash}
# Save the previously retrieved cluster ID from ZooKeeper in a variable called
zk-cluster-id
$ bin/kafka-storage.sh format --standalone -t <zk-cluster-id> -c
config/kraft/controller.properties{code}
However the above command will fail with a less fortunate cluster id like
-{{{}Yh6XyBIQ9CeAlMwJ8f7Hg{}}}, eg.:
{noformat}
bin/kafka-storage.sh format --standalone -t -Yh6XyBIQ9CeAlMwJ8f7Hg -c
config/server.properties
25/12/12 09:24:54 INFO utils.Log4jControllerRegistration$: [main]: Registered
`kafka:type=kafka.Log4jController` MBean
usage: kafka-storage format [-h] --config CONFIG --cluster-id CLUSTER_ID
[--add-scram ADD_SCRAM] [--ignore-formatted] [--release-version
RELEASE_VERSION] [--feature FEATURE] [--standalone |
--no-initial-controllers | --initial-controllers
INITIAL_CONTROLLERS]
kafka-storage: error: argument --cluster-id/-t: expected one argument
{noformat}
A similar problem came up with KRaft which was addressed in KAFKA-13741. In our
case the cluster id is already specified, there is no way to change it. I was
able to come up with a simple solution by using the full name of the argument
like "--cluster-id=<cluster_id>" instead of the shorthand "-t <cluster_id>".
Full example:
{code:bash}
bin/kafka-storage.sh format --cluster-id=-Yh6XyBIQ9CeAlMwJ8f7Hg -c
config/kraft/controller.properties{code}
I would propose to change the documentation based on my findings so we will be
able to cover also ZooKeeper based cluster ids with a leading dash.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)