> it needs all clients code changes when Kafka servers are upgraded
It absolutely doesn't. Message formats predating Kafka 0.11 are only just being deprecated as of Kafka 3.0, and won't be dropped until Kafka 4.0.
Now, if you want to use new shiny features (like cooperative sticky assignors to minimise consumer group stop the world rebalance pauses), then yes, you might need to upgrade clients.
But otherwise, you can still happily use 0.8 clients with your upgraded brokers.
https://cwiki.apache.org/confluence/display/KAFKA/KIP-724%3A...